¹ØÓÚOpenStack
OpenStackËüÊÇ Rackspace Cloud ºÍ NASA ¸ºÔðµÄÒ»¸ö¿ªÔ´»ù´¡¼Ü¹¹¼´·þÎñµÄÔÆ¼ÆËãÏîÄ¿¡£
OpenStack ÊÇÒ»¸öÓÉ¿ª·¢ÕߺÍÔÆ¼ÆËã¼¼ÊõÈËÔ±µÄÈ«ÇòÐ×÷¿ª·¢µÄÃæÏò¹«¹²ºÍ˽ÓÐÔÆµÄ±ê×¼ÔÆ²Ù×÷ϵͳ£¬ÊÇÔÚ
Apache Ðí¿ÉÌõ¿îÏ·¢²¼µÄÃâ·Ñ¿ªÔ´Èí¼þ¡£ÔÆ·þÎñÌṩÕß¡¢ÆóÒµºÍÕþ¸®×éÖ¯¾ù¿ÉʹÓÃÕâ¸öÃâ·ÑµÄ Apache
Ðí¿ÉµÄÈí¼þÀ´¹¹½¨¿É´ó¹æÄ£ÉìËõµÄÔÆ»·¾³¡£
OpenStack²ÉÓÃ6¸öÔÂÒ»¸ö¿ª·¢ÖÜÆÚµÄ·½Ê½£¬Ã¿¸ö´úºÅ¾ùΪÊ××Öĸ°´×Öµä˳ÐòÅŵ½µÄij¸ö³ÇÊÐÃû£¬ÒÀ´ÎÊÇAustin¡¢Bexar¡¢Cactus¡¢Diablo¡¢Essex¡¢Folsom¡¢Grizzly¡¢HavanaºÍIcehouse¡£
Æð³õOpenStack °üº¬Áù¸öºËÐÄÈí¼þÏîÄ¿£º
Cloud Compute-Nova
Cloud Storage-Swift
Image Service-Glance£¨½»¸¶ºÍ×¢²á£©
Identity Service-Keystone
Dashboard-Horizon
Network Connectivity-Quantum
·¢Õ¹µ½¾Å¸öºËÐÄÈí¼þÏîÄ¿£º
¼ÆËã (Compute) - Nova
ÍøÂçºÍµØÖ·¹ÜÀí - Neutron
¶ÔÏó´æ´¢ (Object) - Swift
¿é´æ´¢ (Block) - Cinder
Éí·Ý (Identity) - keystone
¾µÏñ (Image) - Glance
UI ½çÃæ (Dashboard) - Horizon
²âÁ¿ (Metering) - Ceilometer
±àÅä (Orchestration) ¨C Heat
OpenStackµÄÍøÂç
Neutron ֮ǰÊÀ½ñÉú
OpenStack ÍøÂç·þÎñ£¬ÏÖÒÑÓÉ֮ǰµÄ Quantum ¸ÄÃûΪ Neutron¡£Neutron
ÊÇ OpenStack ºËÐÄÏîĿ֮һ£¬Ìá¹©ÔÆ¼ÆËã»·¾³ÏµÄÐéÄâÍøÂ繦ÄÜ¡£OpenStack Havana
°æ±¾µÄ Release Note ÃèÊöÁË Neutron ÐÂÔö¼ÓµÄ¹¦ÄÜ£º
1.Multi-Vendor-Support£ºÍ¬Ê±Ö§³Ö¶àÖÖÎïÀíÍøÂçÀàÐÍ£¬Ö§³Ö
Linux Bridge¡¢Hyper-V ºÍ OVS bridge ¼ÆËã½Úµã¹²´æ£»
2.Neutron-Fwaas£ºÖ§³Ö·À»ðǽ·þÎñ£»
3.VPNaas£ºÖ§³Ö½Úµã¼ä VPN ·þÎñ£»
4.More-Vendors£º¸ü¶àµÄÍøÂçÉ豸֧³ÖºÍ¿ªÔ´ SDN ʵÏÖÍêÉÆºÍÌá¸ß£¬ÐÂÔö¼ÓÁË
ML2 (The Modular Layer2) ²å¼þ¡£
OpenStack nova-network ÍøÂçÄ£ÐÍ
ÔÚ OpenStack ÍøÂç×é¼þûÓжÀÁ¢³öÀ´Ö®Ç°£¬OpenStack ×î³õµÄ
nova-network ÍøÂçÄ£ÐÍ£¬Èçͼ £º

µ¥Ò»Æ½ÃæÍøÂç
µ¥Ò»Æ½ÃæÍøÂçµÄȱµã£º
1.´æÔÚµ¥Ò»ÍøÂçÆ¿¾±£¬È±·¦¿ÉÉìËõÐÔ¡£
2.ȱ·¦ºÏÊʵĶà×â»§¸ôÀë¡£
OpenStack Neutron ÍøÂçÄ£ÐÍ
OpenStack nova-network ¶ÀÁ¢³ÉΪµ¥¶ÀµÄ×é¼þ Neutron
ºó£¬ÐÎÏóµÄÍøÂçÄ£ÐÍµÄ¶àÆ½ÃæÍøÂç¡¢»ìºÏÆ½ÃæË½ÓÐÍøÂç¡£

¶àÆ½ÃæÍøÂç

»ìºÏÆ½ÃæË½ÓÐÍøÂç

ͨ¹ý˽ÓÐÍøÂçʵÏÖÔËÓªÉÌ·Óɹ¦ÄÜ

ͨ¹ý˽ÓÐÍøÂçʵÏÖÿ¸ö×â»§´´½¨×Ô¼º×¨ÊôµÄÍøÂçÇø¶Î
Neutron ÍøÂç´´½¨
Neutron ÍøÂçÄ¿µÄÊÇΪ OpenStack ÔÆ¸üÁé»îµØ»®·ÖÎïÀíÍøÂ磬ÔÚ¶à×â»§»·¾³ÏÂÌṩ¸øÃ¿¸ö×â»§¶ÀÁ¢µÄÍøÂç»·¾³¡£ÁíÍ⣬Neutron
Ìṩ API À´ÊµÏÖÕâÖÖÄ¿±ê¡£Neutron ÖÐÓû§¿ÉÒÔ´´½¨×Ô¼ºµÄÍøÂç¶ÔÏó£¬Èç¹ûÒªºÍÎïÀí»·¾³ÏµĸÅÄîÓ³ÉäµÄ»°£¬Õâ¸öÍøÂç¶ÔÏóÏ൱ÓÚÒ»¸ö¾Þ´óµÄ½»»»»ú£¬¿ÉÒÔÓµÓÐÎÞÏÞ¶à¸ö¶¯Ì¬¿É´´½¨ºÍÏú»ÙµÄÐéÄâ¶Ë¿Ú¡£
ÔÚ Horizon ÉÏ´´½¨ Neutron ÍøÂç¹ý³ÌÈçÏ£º
1.Ê×ÏȹÜÀíÔ±Äõ½Ò»×é¿ÉÒÔÔÚ»¥ÁªÍøÉÏѰַµÄ IP µØÖ·£¬²¢ÇÒ´´½¨Ò»¸öÍâ²¿ÍøÂçºÍ×ÓÍø¡£
2.×â»§´´½¨Ò»¸öÍøÂçºÍ×ÓÍø¡£
3.×â»§´´½¨Ò»¸ö·ÓÉÆ÷²¢ÇÒÁ¬½Ó×â»§×ÓÍøºÍÍâ²¿ÍøÂç¡£
4.×â»§´´½¨ÐéÄâ»ú¡£
OpenStack ÍøÂçÀàÐÍ
Ò»¸ö±ê×¼µÄ OpenStack ÍøÂçÉèÖÃÓÐ 4 ¸ö²»Í¬µÄÎïÀíÊý¾ÝÖÐÐÄÍøÂ磺
¹ÜÀíÍøÂ磺ÓÃÓÚ OpenStack ¸÷×é¼þÖ®¼äµÄÄÚ²¿Í¨ÐÅ¡£
Êý¾ÝÍøÂ磺ÓÃÓÚÔÆ²¿ÊðÖÐÐéÄâÊý¾ÝÖ®¼äµÄͨÐÅ¡£
Íâ²¿ÍøÂ磺¹«¹²ÍøÂ磬Íⲿ»ò internet ¿ÉÒÔ·ÃÎʵÄÍøÂç¡£
API ÍøÂ磺±©Â¶ËùÓÐµÄ OpenStack APIs,°üÀ¨ OpenStack
ÍøÂç API ¸ø×â»§ÃÇ¡£

OpenStack ÍøÂçÀàÐÍ
Neutron ·þÎñÍøÂç¹ÜÀíµÄÈýÖÖģʽ
Flat ģʽ
Flat ģʽºÍ FlatDHCP ģʽÆäÊµÇø±ð²»´ó£¬¶¼ÊÇ»ùÓÚÍøÇÅÍøÂ磬ֻÊÇ
FLat ģʽÐèÒª¹ÜÀíÔ±ÊÖ¶¯ÅäÖ㨰üÀ¨ÅäÖÃÍøÇźÍÍⲿµÄ DHCP É豸£©¡£

Flat ÍøÂçÍØÆË
FlatDHCP ģʽ
ÕâÖÖģʽÏÂÓë Flat ģʽ²»Í¬µÄµØ·½ÔÚÓÚÓÐÒ»¸ö DHCP ½ø³Ì£¬Ã¿Ò»¸öÔËÐÐ
nova-network ½ø³ÌµÄ½Úµã£¨ÍøÂç¿ØÖÆ½Úµã/nove-network Ö÷»ú£©¾ÍÊÇÒ»¸öµ¥¶ÀµÄÍøÂç¡£Nova
»áÔÚ nova-network Ö÷»ú½¨Á¢ÍøÇÅ£¨Ä¬ÈÏÃû³Æ br100£¬ÅäÖÃÏî flat_network_bridge=br100£©£¬²¢¸ø¸ÃÍøÇÅÖ¸¶¨¸ÃÍøÂçµÄÍø¹Ø
IP£¬Í¬Ê± Nova ÔÚÍøÇÅ´¦ÆðÒ»¸ö DHCP ½ø³Ì£¬×îºó£¬»á½¨Á¢ iptables ¹æÔò£¨SNAT/DNAT£©Ê¹ÐéÄâ»úÄܹ»ÓëÍâ½çͨÐÅ£¬Í¬Ê±ÓëÒ»¸ö
metadata ·þÎñÆ÷ͨÐÅÒÔÈ¡µÃ cloud ÄÚµÄÐÅÏ¢¡£
¼ÆËã½Úµã¸ºÔð´´½¨¶ÔÓ¦½ÚµãµÄÍøÇÅ£¬´ËʱµÄ¼ÆËã½ÚµãÍø¿¨¿ÉÒÔ²»ÐèÒª IP µØÖ·£¬ÒòÎªÍøÇŰÑÐéÄâ»úÓë
nove-network Ö÷»úÁ¬½ÓÔÚÒ»¸öÂß¼ÍøÂçÄÚ¡£ÐéÄâ»úÆô¶¯Ê±»á·¢ËÍ dhcpdiscover ÒÔ»ñÈ¡
IP µØÖ·¡£ÐéÄâ»úͨÍùÍâ½çµÄÊý¾Ý¶¼ÒªÍ¨¹ý nova-network Ö÷»ú£¬DHCP ÔÚÍøÇÅ´¦¼àÌý£¬·ÖÅä
fixed_range Ö¸¶¨µÄ IP ¶Î¡£Èçͼ ¡£
ÕâÖÖ²¿Êð·½Ê½µÄȱµã----µ¥½Úµã¹ÊÕÏ¡¢ÎÞ¶þ²ã¸ôÀ루¼´ËùÓеÄÐéÄâ»ú¶¼ÔÚÒ»¸ö¹ã²¥Óò£©¡£

FlatDHCP ÍøÂçÍØÆË
VLAN ģʽ
VLAN£¨Virtual Local Area Network£©µÄÖÐÎÄÃûΪ"ÐéÄâ¾ÖÓòÍø"¡£VLAN
ÊÇÒ»ÖÖ½«¾ÖÓòÍøÉ豸´ÓÂß¼ÉÏ»®·Ö³ÉÒ»¸ö¸öÍø¶Î£¬´Ó¶øÊµÏÖÐéÄ⹤×÷×éµÄÐÂÐËÊý¾Ý½»»»¼¼Êõ¡£
VLAN ģʽÓë Flat ģʽµÄÇø±ð
ÔÚ Flat ģʽÏ£¬¹ÜÀíÔ±µÄ¹¤×÷Á÷³ÌÓ¦¸ÃÊÇÕâÑùµÄ£º
1.ΪËùÓÐ×â»§´´½¨Ò»¸ö IP ³Ø£º
nova-manage network create --fixed_range_v4=10.0.0.0/16 ¨Clabel=public |
2.´´½¨×â»§
3.×â»§´´½¨ÐéÄâ»ú£¬ÎªÐéÄâ»ú·ÖÅä IP ³ØÖеĿÉÓà IP
DB ÖÐÐéÄâ»úÐÅÏ¢¿ÉÄÜÈçÏÂͼ£¬´ÓͼÖÐÎÒÃÇ¿´µ½ 2 ¸öÐéÄâ»ú´¦ÓÚÍ¬Ò»Íø¶Î¡£

ÔÚ VLAN ģʽÏÂÁ÷³ÌÈçÏ£º
1.´´½¨ÐµÄ×â»§£¬²¢¼ÇÏÂ×â»§µÄ±êʶ
2.Ϊ¸Ã×â»§´´½¨¶ÀÕ¼µÄ fixed_ip ¶Î£º
nova-manage network create --fixed_range_v4=10.0.1.0/24 --vlan=102 --project_id="tenantID" |
3.×â»§´´½¨ÐéÄâ»ú£¬´Ó×â»§µÄ˽ÓÐ IP ¶ÎÄÚ·ÖÅä IP ¸øÐéÄâ»ú
Òò´Ë£¬Óë Flat ģʽÏà±È£¬VLAN Ä£Ê½ÎªÍøÂçÔö¼ÓÁË£º½«ÍøÂçÓë×â»§¹ØÁªºÍÎªÍøÂç·ÖÅäÒ»¸ö
VLAN ºÅ¡£
Neutron×ܽá
OpenStack ÐéÄâÍøÂç Neutron °Ñ²¿·Ö´«Í³ÍøÂç¹ÜÀíµÄ¹¦ÄÜÍÆµ½ÁË×â»§·½£¬×⻧ͨ¹ýËü¿ÉÒÔ´´½¨Ò»¸ö×Ô¼º×¨ÊôµÄÐéÄâÍøÂç¼°Æä×ÓÍø£¬´´½¨Â·ÓÉÆ÷µÈµÈ£¬ÔÚÐéÄâÍøÂ繦ÄܵİïÖúÏ£¬»ù´¡ÎïÀíÍøÂç¾Í¿ÉÒÔÏòÍâÌṩ¶îÍâµÄÍøÂç·þÎñÁË£¬±ÈÈç×â»§ÍêÈ«¿ÉÒÔ´´½¨Ò»¸öÊôÓÚ×Ô¼ºµÄÀàËÆÓÚÊý¾ÝÖÐÐÄÍøÂçµÄÐéÄâÍøÂç¡£Neutron
ÌṩÁ˱ȽÏÍêÉÆµÄ¶à×â»§»·¾³ÏµÄÐéÄâÍøÂçÄ£ÐÍÒÔ¼° API¡£Ïñ²¿ÊðÎïÀíÍøÂçÒ»Ñù£¬Ê¹Óà Neutron ´´½¨ÐéÄâÍøÂçʱҲÐèÒª×öһЩ»ù±¾µÄ¹æ»®ºÍÉè¼Æ¡£ |