The method of Web Service HA+LB in OPENSTACK NOVA for private cloud only

Cloud Server HA+LB  in NOVA


Our purpose is to provide uninterrupted   web services  with low cost in OPENSTACK. Due to all instances traffic through Nova-Network host in a basic deployment of NOVA . And it's hard to do HA+LB for Nova-Network. As I know it will be very hard to implement. 
After read "Bootstrapping OpenStack Clouds" doc writed by DELL....The fault zone concept it much easier and cheaper. 



There're three diagrams ....
I. Two zones topology , share nothing between each zones. But combine two instance network in same network segment. Zone1 using 192.168.1.0/25,   Zone2 using 192.168.1.128/25 . We do  not using floating ip. Let instance route from Core Network  Switch directly.






II. The difference from first diagram is Storage related openstack service. Two zones use one Glance + OBJ + Volume controller.

III. The communication of these virtual cluster.


A very important point is LoadBalancer. When keepalived bind IP to instance . It doesn't work. Plz check the link.. Thanks Vish

After rewrite firewall.py and restart libvirt and nova-compute ..  the Virtual IP is working now.




vi /usr/share/pyshared/nova/virt/libvirt/firewall.py


Delete line 214-216 , It's not a regular way. but faster for us in our internal cloud. A better solution , plz check the QA link.
    209     def _ensure_static_filters(self):
    210         if self.static_filters_configured:
    211             return
    212
    213         self._define_filter(self._filter_container('nova-base',
  -  214                                                    ['no-mac-spoofing',
  -  215                                                     'no-ip-spoofing',
  -  216                                                     'no-arp-spoofing',
    217                                                     'allow-dhcp-server']))
    218         self._define_filter(self._filter_container('nova-vpn',
    219                                                    ['allow-dhcp-server']))
    220         self._define_filter(self.nova_base_ipv4_filter)
    221         self._define_filter(self.nova_base_ipv6_filter)
    222         self._define_filter(self.nova_dhcp_filter)
    223         self._define_filter(self.nova_ra_filter)
    224         if FLAGS.allow_project_net_traffic:
    225             self._define_filter(self.nova_project_filter)
    226             if FLAGS.use_ipv6:
    227                 self._define_filter(self.nova_project_filter_v6)
    228
    229         self.static_filters_configured = True


There're two ways for Cloud DB server.

Comments

  1. Great post Hugo. Very interesting.

    ReplyDelete
  2. You should write about your experiences trying to setup a nova network service in High Availability: active-active, active-passive, clustered nova network services... I have read about your progress in the mailing lists and launchpad and I think you can gather all your research in a great post!

    ReplyDelete
  3. Hi , Diego .
    In this post , it's not a NOVA service layer HA.
    It's APP layer , There're many tricky stuff in
    this topology.

    I'm not sure if this approach could be use for a public cloud , But I believe it's useful for a internal private cloud.

    I got some idea about nova-network HA solution , but have no time to test that. I'll do it later.

    ReplyDelete
  4. There's a blueprint about Nova-network HA (by NTT PF Lab), It's almost same with the idea in my mind. I'm focus on Active/Active. But really hard to implement. I will build a NOVA as this post for our team first. The custom image will be pre-set route from other gateway instead of nova-network.
    https://blueprints.launchpad.net/nova/+spec/making-nova-components-ha

    Another consideration is to inject network-configuration file into instance and route from other pure gateway(physical or software), But floating ip feature will lose.

    ReplyDelete
  5. Hugo, "Storetrends" in your diagrams appears to be a generic storage system. I gather it is a reference to American Megatrends "StorTrends".

    In your diagram is this a SAN? NAS? iSCSI? or something else? JBOD?

    ReplyDelete
  6. Dave,

    Yes , it's "AMI StorTrends" model#2400i

    In this diagram ,
    1. Volume : Using iSCSi target on StorTrend
    2. Compute-node : Image caching with NFS on StorTrend
    3. Glance : iSCSi for saving images on Stortrend
    (Maybe I have to change it into NFS, once I have multiple Galnce)
    If you want more details , just ask me


    Cheers Hugo

    ReplyDelete
  7. Nice information regarding openstack nova my sincere thanks for shaaring this post Please Continue to share this post
    Cloud Computing Training in Chennai

    ReplyDelete
  8. It is really awesome article and this post is very interesting and useful to everybody because many tips & trick are available here. Salesforce Training in Chennai | Cloud Computing Training in Chennai

    ReplyDelete
  9. Hello admin, I have read your blog, it was very nice to read & I am getting useful information’s through your blog. Keep update your blog. AWS Training in Bangalore | Big Data Hadoop Training in Bangalore

    ReplyDelete
  10. I like that our extensive useful post. I would quickly understand our article blogs. I periodically read our blog post all content is really useful.Superb article.Python Online Training | Learn Python Online

    ReplyDelete

Post a Comment

Popular posts from this blog