Cloud computing ááẠáá»áœááºá¯ááºááá¯á·ááááá²ááá¯á· ááá¯ááá¯áááºááŸáá¯ááºážá
áœá¬ ááá¯ážáá±á¬ááºáááºáá±á¬ááºáá±ááŒá®áž áááºááá·áº cloud áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá¡áááºážáá¯á¶ážáá
áºááŒáááºáá»áŸ á¡áá¯á¶ážáááŒá¯áá°ážáá° áá
áºáŠážáá
áºáá±á¬ááºáá»áŸ ááŸááááºááá¯ááºáá±á ááá¯á·áá±á¬áºá Cloud áá
áºáá¯ááẠá¡ááá¡áá» áááºáá²á·ááá¯á· á¡áá¯ááºáá¯ááºáááºááᯠá
áááºáá°ážáá
áºáᯠá¡ááá·áºááœááºááẠáá°á¡áááºážáááºáᬠáááá«áááºá 5G ááẠáááºááœá±á·ááŒá
áºáá¬áá±ááŒá®ááŒá
áºááŒá®áž áááºáá®ááœááºážá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááẠáá¬á·ááºáá²ááŒá±ááŸááºážáá»ááºá០virtualized "ááá¯ááºáá»á¬áž" ááá¯á· ááœá±á·áá»á¬ážááœá¬ážááá·áºá¡ááá¯ááºážááẠááá¯ááºááŒá±ááŸááºážáá»ááºáá»á¬ážá០cloud ááŒá±ááŸááºážáá»ááºáá»á¬ážááá¯á· á
áááºááœá±á·áá»á¬ážáá¬áááºá
ááá±á·áá»áœááºá¯ááºááá¯á·ááẠcloud á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áá¡ááœááºážááá¯ááºážááá¹áá¬á¡ááŒá±á¬ááºážááŒá±á¬áááºááŒá
áºááŒá®ážá á¡áá°ážáááŒáá·áº áá»áœááºá¯ááºááá¯á·ááẠááœááºáááºá¡ááá¯ááºážáá¡ááŒá±áá¶áá»á¬ážááá¯ááŒáá·áºááŸá¯áá«áááºá
ááááºááá¯áᬠáá¬áá²á áá°áá®áá±á¬ virtualization - áááá¯ááá¯ááºááŒááºááœááºáž?
áá¯áá¹ááááŸááá²á·áá±ážááœááºážááẠááá¯áá«áááºá ááá¯ááºáá°áž - á¡á²áá«á virtualization ááá¯ááºáá«áá°ážá áá«áá±ááá·áº á¡á²áá«ááá«áá² ááá¯ááºááá¯ááºáá°ážá á¡áááá¹áá«ááºááŸá áºáá»áá¯ážááᯠááŒáá·áºááŒáá«á áá¯á·á
Cloud computing (áá±á¬ááºááœáẠCloud áá¯áá±á«áºáááº) áááºáá±á¬ááºááŸá¯áá±ážáá°áᶠá¡áááá·áºáá¯á¶ážááŒá áºááá¯ááºáá»á±ááŸááá±á¬ latency ááŸáá·áº áá¯ááºáá»á ááááºá¡áááºážáá¯á¶ážááŒáá·áº áááºááá¯á¡á¬ážááœáẠá¡áá¯á¶ážááŒá¯ááááºááŒá áºááŒá®áž á áááºá¡áá¯á¶ážááŒá¯ááá¯ááºááá·áº ááŒáá·áºáá±áá¬ážáá±á¬ ááœááºáá»á°áá¬á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá°áá»á¬áž á¡áááºááŒá±á áœá¬áááºáá±á¬ááºááœáá·áºáá±ážááá·áºáá¯á¶á á¶áá áºáá¯ááŒá áºáááºá
Virtualization - áááºážááẠáá¯ááºááá¯ááºážááá¯ááºáá¬áá á¹á ááºážáá áºáᯠ(á¥ááá¬á áá¬áá¬áá áºáá¯) ááᯠáá»á¬ážá áœá¬áá±á¬ virtual áá»á¬ážá¡ááŒá Ạááá¯ááºážááŒá¬ážááá¯ááºááŒá®áž á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡áá¯á¶ážáá»ááŸá¯ááᯠááá¯ážááŒáŸáá·áºááá¯ááºááẠ(á¥ááá¬á ááá·áºááœáẠáá¬áᬠ3 áá¯ááᯠ25-30 áá¬ááá¯ááºááŸá¯ááºážááŒáá·áº áááºáá±á¬ááºáá¬ážááŒá®ážá virtualization á¡ááŒá®ážááœáẠáááºááẠáá¬áᬠ1 áá¯ááᯠáááºáá±á¬ááºááááºááŒá áºáá«áááºá 80-90 áá¬ááá¯ááºááŸá¯ááºáž)á ááá¬áá¡ááá¯ááºážá virtualization ááẠá¡áááºážá¡ááŒá áºá¡áá»áá¯á·ááᯠá á¬ážááẠ- ááá¯á·áá±á¬áº áááºááœá±á·ááŒááá¬ážááá·áºá¡ááá¯ááºážá ááááºážááẠááá±á¬ááºážááá¯ááºááá¯ážááŸááá±áááºá Virtualization á á á¶ááŒááá°áá¬ááŸá¬ VMWare ááŒá áºááŒá®ážá virtual machines áá»á¬ážááᯠá á¯á¶áááºá áœá¬ ááŒááºáááºáá±ážáá±á¬ ááá¯á·ááá¯áẠá¥ááᬠKVM ááẠáá»áœááºá¯ááºááŸá áºáááºáááºá ááá¯á·áá±á¬áº áááºážááẠá¡ááá¬ááá á¹á ááŒá áºáááºá
áá»áœááºá¯ááºááá¯á·ááẠáááºážááᯠááááááŒá¯áááá² virtualization ááá¯á¡áá¯á¶ážááŒá¯ááŒá®áž áᶠrouter áá»á¬ážááẠvirtualization ááá¯áááºá¡áá¯á¶ážááŒá¯áá±ááŒá®ááŒá áºááẠ- á¥ááá¬á¡á¬ážááŒáá·áº JunOS ááá±á¬ááºáá¯á¶ážááœááºáá¬ážááŸááºážááœááºá áááºáááºááŸá¯á áá áºááᯠá¡áá»áááºááŸáá·áºáá áºááŒá±ážáá® Linux ááŒáá·áºááŒá°ážááŸá¯ (Wind River 9) áááááºááœáẠvirtual machine á¡ááŒá áºááá·áºááœááºážáá¬ážáááºá ááá¯á·áá±á¬áº virtualization ááẠcloud ááá¯ááºáá±á¬áºáááºáž virtualization ááá«áá² cloud ááẠááááºááŸáááá¯ááºáá«á
Virtualization ááẠcloud ááᯠáááºáá±á¬ááºááá·áº á¡áá±á¬ááºá¡áŠáá»á¬ážáá²á០áá áºáá¯ááŒá áºáááºá
L2 ááá¯ááááºážáá áºáá¯ááœáẠhypervisor á¡áá»á¬ážá¡ááŒá¬ážááᯠá á¯áá±á¬ááºážááŒááºážááŒáá·áº cloud áá áºáá¯ááŒá¯áá¯ááºááŒááºážá ansible á¡áá»áá¯ážá¡á á¬ážá¡áá»áá¯á·ááŸáá áºááá·áº vlan áá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºá á¬áááºážááœááºážáááºá¡ááœáẠyaml playbooks ááŸá áºáá¯ááᯠáá±á«ááºážááá·áºááŒááºážááŒáá·áº orchestration system áá²á·ááá¯á· áá áºáá¯áá¯ááᯠááááºááá¯á·áá¬ážááŒááºážááŒáá·áº áááºážááᯠá¡ááá¯á¡áá»á±á¬áẠvirtual machine áá»á¬ážáááºáá®ážáááºá¡ááœáẠá¡á¬ážáá¯á¶ážááœáẠá¡áá¯ááºáááŒá áºáá«á áááºážááẠááá¯ááááá»áááá·áºáááºá ááá¯á·áá±á¬áº ááœááºáá±á«áºáá¬áá±á¬ Frankenstein ááẠá¡ááŒá¬ážáá°áá»á¬ážá¡ááœáẠá¡áá¯á¶ážá áœááºá¡áááºáááºááŒá áºááá¯ááºáá±á¬áºáááºáž áááºážááẠáá»áœááºá¯ááºááá¯á·ááá¯á¡ááºáá±á¬ ááááºááá¯ááºááá¯ááºáá±á ááá¯á·á¡ááŒááºá áááºááẠáá°áá®áá±á¬ Openstack ááá¯áá°áá«áá áááºážááẠáááŸááááŒá áºááá¯á¡ááºáá±á¬ Frankenstein ááŒá áºáá±áá±ážáá±á¬áºáááºážá áá±á¬ááºážá áœá¬á áá±á¬áá±á¬ááẠááá¯á¡ááŒá±á¬ááºážááᯠáááŒá±á¬áá«ááŸáá·áºá
áá«áá±ááá·áº á¡áááºááŸá¬áááºááŒáá¬ážáá²á· á¡áááá¹áá«ááºá áá¬ááᯠCloud ááá¯á· áá±á«áºáááá²ááá¯áᬠááŸááºážááŸááºážáááºážáááºáž áááááá«áá°ážá
ááá¯á·ááŒá±á¬áá·áºá NIST (National Institute of Standards and Technology) á០á á¬áááºážáá áºáá¯ááẠcloud á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááœáẠááŸáááá·áºááá·áº á¡ááá ááá¹ááᬠá áá»ááºááᯠáá±ážáááº-
áá±á¬ááºážááá¯ááŸá¯á¡á áááºáá±á¬ááºááŸá¯áá±ážááŒááºážá á¡áá¯á¶ážááŒá¯áá°á¡á¬áž áá°á·á¡ááœáẠááœá²áá±áá±ážáá¬ážáá±á¬ ááœááºáá»á°áá¬á¡áááºážá¡ááŒá áºáá»á¬áž (á¥ááᬠááœááºáááºáá»á¬ážá virtual disksá memoryá processor cores á áááº) ááᯠá¡ááá²á· áá¯á¶ážá áœá²ááœáá·áº áá±ážáááẠááŒá áºááŒá®ážá áááºážá¡áááºážá¡ááŒá áºáá»á¬ážááᯠáááºáá±á¬ááºááŸá¯áá±ážáá°áá¶á០ááŒá¬ážáááºá áœááºáááºááŒááºážáááŸááá² á¡ááá¯á¡áá»á±á¬áẠáá±ážáá±á¬ááºááááºááŒá áºáááºá
áá»ááºááŒáá·áºáá±á¬áááºáá±á¬ááºááŸá¯áááŸáááá¯ááºááŸá¯á áá¯á¶ááŸáẠPCs áá»á¬ážááŸáá·áº áá«ážááœáŸá¬áá±á¬ client áá»á¬ážááŸáá·áº ááá¯ááá¯ááºážáá á¹á ááºážáá»á¬áž ááŸá áºáá»áá¯ážáá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážááẠá¡áááºážá¡ááŒá áºáá»á¬ážáᶠá á¶ááá¹ááá¬ážáá»á¬ážááŒáá·áº áá¶á·ááá¯ážáá±ážááá«áááºá
á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá±áááºáá»á¬ážá¡ááŒá Ạáá±á«ááºážá ááºááŒááºážá á¡áááºážá¡ááŒá áºá á¯áá±á«ááºážáá»á¬ážááẠáá±á¬ááºáááºá¡áá»á¬ážá¡ááŒá¬ážá¡á¬áž áá áºáá»áááºáááºážááœáẠá¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá¯ááºááááºááŒá áºááŒá®ážá áá±á¬ááºáááºáá»á¬ážááẠá¡áá®ážáá»ááºáá±ááŒá®áž á¡áááºážá¡ááŒá áºáá»á¬ážá¡ááœáẠá¡ááŒááºá¡ááŸááºááœáŸááºážááá¯ážááŸá¯ááŸáá·áº ááŒáá¯ááºááá¯ááºááŸá¯áááºážááŸááºážááŒá±á¬ááºáž áá±áá»á¬á á±ááááºá áááºáá±ááá·áº ááááºá á¬ááᯠá¡áá¯á¶ážááŒá¯ááẠááŒá áºááá¯ááºááŒá±ááᯠááœáŸááºááŒááá·áº pools áá»á¬ážááœááºáááºáž ááœááºáááºáá»á¬áž áá«áááºáááºá áá±áá°ážáááºáá»á¬ážááẠááá¯á¡ááºáá»ááºá¡á á¡ááá¯ááºážá¡áá¬ááᯠáá±á¬ááºááœááºááá¯ááºááááºá áá±áá°ážáááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááẠááá¯á¡ááºáá±á¬ á¡áááºážá¡ááŒá áºá¡ááŸá¬ážáá¶ááá¯ááºáááºááŸáááŸá¯ááŸáá·áº áá¯ááºááá¯ááºážááá¯ááºáá¬ááŸáá·áº á¡áá¯á¡áá±á¬ááºá¡áááºážá¡ááŒá áºáá»á¬ážá á á¯ááºáá°ááŸá¯á¡ááá·áºááᯠáá±ážá áœááºážááá¯ááºá á±ááẠ- áááºáá±á¬ááºááŸá¯ááᯠáááºáá¶áá°ááẠáá°áá±á¬ááºážááá¯áá¬ážáá±á¬ á¡áááºážá¡ááŒá áºá¡á á¯á¶ááŒáá·áº ááá¯ážááŸááºážá áœá¬ áá¶á·ááá¯ážáá±ážááẠ(á€á¡áááºážá¡ááŒá áºáá»á¬ážááẠáá¯ááºááá¯ááºážááá¯ááºáá¬áááºááŸáááá·áºáá±áᬠáááºáá»áŸááŸááááºá áá¬áá¬áá»á¬ážááŸáá·áº ááá¯ááºáá»á¬áž - áááºážááẠclient á¡ááœáẠá¡áá±ážáááŒá®ážáá«á) ááá¯á·áá±á¬áºá áá¶á·ááá¯ážáá±ážáá°ááẠá€á¡áááºážá¡ááŒá áºáá»á¬ážááᯠááœáá·áºáááºážááŒááºáá¬á áœá¬ ááŒáá¯áááºááŸá¬ááŒá¬ážáá¬ážááááºáá°áá±á¬á¡áá»ááºááᯠááá·áºááœááºážá ááºážá á¬ážááá«áááºá
ááá°áá®áá±á¬á¡ááŒá±á¡áá±áá»á¬ážááŸáá·áº á¡ááŒááºááá¯ááºáá»á±á¬áá®ááœá±ááŒá áºá¡á±á¬ááºá áááºáá±á¬ááºááŸá¯áá»á¬ážááẠááá¯ááºáá»á±á¬áá®ááœá±ááŸááááẠ- á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá»ááºááŒááºá áœá¬áá¶á·ááá¯ážáá±ážááŒááºážá áááºážááá¯á·á ááŒááºáááºááŒáá·áºááŒá°ážááŒááºážá áá±á¬ááºáááºááá±á¬ááºážááá¯áá»ááºá¡á á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá±á«ááºážááá·áºááŒááºáž ááá¯á·ááá¯áẠáá»áŸá±á¬á·áá»ááŒááºážááŸáá·áº cloud á¡áááºážá¡ááŒá áºáá»á¬ážááẠá¡áá¯á¶ážáááŸááᯠáá±á¬ááºáááºáááºá០áá¶á á¬ážááá«áááºá áá¬ážáááºáááœááºáá°á á±áááºá á¥ááá¬á¡á¬ážááŒáá·áºá áá¬áá¬ááŸá hard drive áá»ááºááœá¬ážá drives áá»á¬áž ááŒáá¯ááœá²ááœá¬ážáá±á¬ááŒá±á¬áá·áº Apple iCloud ááŸá ááá·áº disk space á áá áºá áááºáá áºááá¯ááºáž áá»á±á¬ááºááœááºááœá¬ážááŒá±á¬ááºáž ááááá±ážáá»ááºááᯠáááœá±á·ááá±á¬á·áá«á ááá¯á·á¡ááŒáẠááá·áºáááºááŸá á€áááºáá±á¬ááºááŸá¯áááŒá áºááá¯ááºááŒá±áá»á¬ážááẠá¡ááá·áºá¡áááºáááŸááá®ážáá«ážááŒá áºááẠ- ááẠ2 TB ááá¯á¡ááºááẠ- ááŒá¿áá¬áááŸááá«á áááºá áááºážááᯠáá±ážáá±á¬ááºááŒá®áž áááºáá¶áá«áááºá á¡áá¬ážáá°á¥ááá¬ááᯠGoogle.Drive ááá¯á·ááá¯áẠYandex.Disk ááŒáá·áºáá±ážááá¯ááºáá«áááºá
áááºáá±á¬ááºááŸá¯áá±ážáá±á¬ ááá¯ááºážáá¬ááŸá¯ ááŒá áºááá¯ááºááŒá±á Cloud á áá áºáá»á¬ážááẠá á¬ážáá¯á¶ážááŒá®ážáá±á¬ á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬áẠááááºážáá»á¯ááºááŒá®áž ááá¯ááá¯áá±á¬ááºážááœááºá¡á±á¬áẠáá¯ááºáá±á¬ááºááááºááŒá áºááŒá®áž á¡ááá¯áá« ááá¹ááá¬ážáá»á¬ážááẠáá¯á¶ážá áœá²áá°ááŸáá·áº áááºáá±á¬ááºááŸá¯áá±ážáá° ááŸá áºáŠážá áá¯á¶ážá¡ááœáẠááœáá·áºáááºážááŒááºáá¬ááŸá¯ááŸáááááºááŒá áºáááºá ááá¯ááá¯áááºááŸá¬ áááºááŸáá·áº ááá·áºáá±á¬ááºáááºáá»á¬áž áá¯á¶ážá áœá²áá±áá±á¬ á¡áááºážá¡ááŒá áºáá»á¬áž áááºáá»áŸááŸááááºááᯠá¡ááŒá²á á áºáá±ážááá¯ááºáá«áááºá
á€ááá¯á¡ááºáá»ááºáá»á¬ážááẠá¡áá»á¬ážáá°ááŸá¬ cloud áá áºáá¯á¡ááœáẠááá¯á¡ááºáá»ááºá¡áá»á¬ážá á¯ááŒá áºáááºáá°áá±á¬á¡áá»ááºááᯠááá·áºááœááºážá ááºážá á¬ážáááºááá¯ááŒá®áž Private cloud (áá¯áá¹ááá®áá¡ááœááºážááá¯ááºážááá¯á¡ááºáá»ááºáá»á¬ážá¡ááœáẠáá¯ááºááœáŸááºáá±á¬ cloud) ááẠá¡ááá¯áá«ááá¯á¡ááºáá»ááºáá»á¬ážááᯠá¡áááºážáááºáá»áááºááŸáááá¯ááºáá«áááºá ááá¯á·áá±á¬áºáááºáž áááºážááá¯á·ááᯠáá¯ááºáá±á¬ááºááẠáá»ááºáá±áá±ážáááºá ááá¯ááºáá«á cloud computing á á¡áá»áá¯ážáá»á±ážáá°ážá¡á¬ážáá¯á¶ážááᯠáááŸááááºááá¯ááºáá«á
á¡áááºááŒá±á¬áá·áºáá»áœááºá¯ááºááá¯á·ááẠcloud ááá¯á¡ááºááááºážá
ááá¯á·áá±á¬áºá á¡áá Ạááá¯á·ááá¯áẠááŸáááŒá®ážáá¬ážáááºážááá¬á áááºááá·áºáááá¯ááá¯áá±á¬á¡áá áºááá¯áááᯠáá áºá á¯á¶áá áºáá¯á¡ááœáẠáááºáá®ážáá¬ážááẠ(áá¯ááºáá«áááºá RIP-ng ááŸááœá²á)á áááá¯ááá¯áá±á¬á¡ááœáẠáááá¯ááá¯áá±á¬ááᯠáááºáá°áá»áŸ áááá¯á¡ááºáá« (áá¯ááºáá«áááºá RIP-ng ááŸááœá²á)á á¡áá¯á¶ážááŒá¯áá°/áá±á¬ááºáááºáá»á¬ážá¡ááœáẠáááºáá±á¬ááºááŸá¯áá áºáá»áá¯ážáá»áá¯ážááᯠáá±ážáá±á¬ááºááẠCloud ááᯠáááºáá®ážáá¬ážááŒááºážááŸá¬ áá¯áá¹áááááºáá«áááºá áá»áœááºá¯ááºááá¯á·á¡á¬ážáá¯á¶ážááẠá¡áááºážáá¯á¶áž cloud áááºáá±á¬ááºááŸá¯á¡áá»áá¯á· á¥ááᬠDropbox ááá¯á·ááá¯áẠGoogle.Docs ááá¯á·ááŸáá·áº áááºážááŸá®ážááŒááŒá®ážá áá°á¡áá»á¬ážá á¯ááẠáááºážááá¯á·ááᯠá¡á±á¬ááºááŒááºá áœá¬á¡áá¯á¶ážááŒá¯ááá¯ááºáááºáᯠáá»áœááºá¯ááºáá¯á¶ááŒááºááẠ- á¥ááá¬á á€áá±á¬ááºážáá«ážááᯠGoogle.Docs cloud áááºáá±á¬ááºááŸá¯ááᯠá¡áá¯á¶ážááŒá¯á áá±ážáá¬ážáá²á·ááŒááºážááŒá áºáááºá ááá¯á·áá±á¬áºáá»áœááºá¯ááºááá¯á·áááá±á¬ cloud áááºáá±á¬ááºááŸá¯áá»á¬ážááẠcloud ááá¯ááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááá áºá áááºáá áºááá¯ááºážáá¬ááŒá áºáááºâá¡ááá¡áá»ááŒá±á¬ááá»áŸááºá áááºážááá¯á·ááẠSaaS á¡áá»áá¯ážá¡á á¬ážáááºáá±á¬ááºááŸá¯áá áºáá¯áá¬ááŒá áºáááºá áá»áœááºá¯ááºááá¯á·ááẠSaaSá PaaS ááá¯á·ááá¯áẠIaaS áá¯á¶á á¶ááŒáá·áº cloud áááºáá±á¬ááºááŸá¯ááᯠáá¯á¶ážáá»áá¯ážááŒáá·áº áá¶á·ááá¯ážáá±ážááá¯ááºáá«áááºá áááºááá¯á¡ááºáá±á¬áááºáá±á¬ááºááŸá¯ááẠááá·áºááá¹ááá»á¬ážááŸáá·áº á áœááºážáá±á¬ááºáááºáá»á¬ážáá±á«áºááœááºáá°áááºáá«áááºá
áá áºáá¯áá»ááºážá á®ááᯠá¡á ááºááá¯ááºááŒáá·áºáá¡á±á¬ááºá
áá áºááºáá±á¬ááºááŸá¯ (SaaS) á¡ááŒá ẠSoftware áá»á¬áž á¥ááᬠYandex.Mail ááá¯á·ááá¯áẠGmail áá²á·ááá¯á·áá±á¬ á¡á®ážáá±ážááºáááºáá±á¬ááºááŸá¯áá áºáá¯ááẠáá¯á¶ážá áœá²áá°á¡á¬áž á¡ááŒáá·áºá¡ááááºáá±á¬ááºááŸá¯áá±ážááá·áºáá¯á¶á á¶áá áºáá¯ááŒá áºáááºá á€áááºáá±á¬ááºááŸá¯áá±ážááá¯á·ááŸá¯áá¯á¶á á¶ááœááºá áá±á¬ááºáááºáá áºáŠážá¡áá±ááŒáá·áº áááºááẠáááºáá±á¬ááºááŸá¯áá»á¬ážááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŸááœá²á áá¬áá»áŸááá¯ááºáá« - ááá¯ááá¯áááºááŸá¬á áááºáá±á¬ááºááŸá¯ááá¯ááá·áºááœááºážááŒááºážá áááºážáá¡ááŸá¬ážá¡ááœááºážááᯠáááºážáá¶ááŒááºáž ááá¯á·ááá¯áẠáááºáá±á¬ááºážááŒááºážá¡ááœáẠáááºá ááºážá á¬ážáááºáááá¯á¡ááºáá«á á¡áááá¡áá»ááºááŸá¬ ááá·áºá áá¬ážááŸááºááᯠá¡áá»áŸá±á¬á·ááá±ážáá²á á€áááºáá±á¬ááºááŸá¯áá±ážáá°á áá»ááºá¡áá¬á¡á¬ážáá¯á¶ážááᯠááá·áºá¡ááœáẠáá¯ááºáá±á¬ááºáá±ážáááºááŒá áºáááºá áááºáá±á¬ááºááŸá¯áá±ážáá°áá¡ááŒááºá¡áá áá¬áᬠáá¬á·ááºáá²ááŸáá·áº áááºáá¶áááºáááºááŸá¯á áá áºáá»á¬ážá០áá±áá¬áá±á·á áºááŸáá·áº áá±á¬á·ááºáá²áááºáááºáá»á¬ážá¡áá áááºáá±á¬ááºááŸá¯áá áºáá¯áá¯á¶ážá¡ááœáẠá¡ááŒáá·áºá¡ááá¬áááºáá°áá«áááºá
á ááºáá±á¬ááºááŸá¯áá áºáá¯á¡ááŒá áºááááºáá±á¬ááºáž (PaaS) â á€áá¯á¶á á¶ááᯠá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á áááºáá±á¬ááºááŸá¯áá±ážáá°á áááºáá±á¬ááºááŸá¯á¡ááœáẠá¡áá¯ááºáá á¹á ááºážáá áºáá¯ááŸáá·áº client ááᯠáá±ážáááºá á¥ááá¬á áááºáá¬áá¬ááᯠáá°ááŒáá«á áá¯á·á áááºáá±á¬ááºááŸá¯áá±ážáá°á áá¯á¶ážá áœá²áá°á¡á¬áž virtual server (ááááºáá±á¬á· RAM/CPU/Storage/Nets áá²á·ááá¯á·áá±á¬ á¡áááºážá¡ááŒá áºá¡á á¯á¶á¡áááº)ááᯠáá±á¬ááºáá¶á·áá±ážááŒá®áž OS ááŸáá·áº ááá¯á¡ááºáá±á¬áá±á¬á·ááºáá²ááᯠá€áá¬áá¬ááœááºááẠááá·áºááœááºážáá¬ážáá±á¬áºáááºážá á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠclient ááá¯ááºááá¯ááºááŸáá·áº áááºáá±á¬ááºááŸá¯á á áœááºážáá±á¬ááºáááºá¡ááœáẠclient á០á¡ááŒá±áá±ážáá«áááºá ááááºááá á¹á áá»á¬ážááœááºáá²á·ááá¯á· áááºáá±á¬ááºááŸá¯áá±ážáá°ááẠáá¯ááºááá¯ááºážááá¯ááºáá¬áá á¹á ááºážáááááá¬áá»á¬ážá hypervisorsá virtual machine ááá¯ááºááá¯ááºá áááºážáááœááºáááºáááŸáááá¯ááºááŸá¯á áááºááŒáá·áº á áœááºážáá±á¬ááºáááºá¡ááœáẠáá¬áááºááŸááá±á¬áºáááºáž áááºáá±á¬ááºááŸá¯ááá¯ááºááá¯ááºá áááºážááá¬áááºááá¹ááá¬ážááœáẠáááŸááá±á¬á·áá«á
á ááºáá±á¬ááºááŸá¯á¡ááŒá áºá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ (IaaS) - á€áá»ááºážáááºááŸá¯ááẠááá¯áá áááºáááºá á¬ážá áá¬áá±á¬ááºážáá±ááŒá®á á¡ááŸááºááááºááœááºá áááºáá±á¬ááºááŸá¯áá±ážáá°ááẠáá¯á¶ážá áœá²áá°á¡á¬áž ááŒá®ážááŒáá·áºá á¯á¶áá±á¬ virtualized á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááŒáá·áº áá¶á·ááá¯ážáá±ážááẠ- ááá¯ááá¯áááºááŸá¬ CPU Coresá RAMá Networks á áááºááá¯á·áá²á·ááá¯á·áá±á¬ á¡áááºážá¡ááŒá áºá¡áá»áá¯á· (á¡á á¯á¡áá±áž) á¡á á¯á¶ (áá±áá°ážáááº)á áááá¯ááºážááá·áº - ááœá²áá±áá±ážáá¬ážáá±á¬ áá±ááẠ(ááœá²áááºáž) á¡ááœááºážááŸá á€á¡áááºážá¡ááŒá áºáá»á¬ážááŸáá·áº áá±á¬ááºáááºá áá¯ááºáá»ááºááá·áºá¡áᬠ- áá±ážááœááºážáá°á¡ááœáẠá¡áá°ážá¡áá±ážáááŒá®ážáá«á áá±á¬ááºáááºááẠáááºážáááá¯ááºááá¯áẠvEPC ááá¯áááºáá®ážááá¯áááºááŒá áºá á± ááá¯á·ááá¯áẠá¡áá±ážá á¬ážá¡á±á¬áºááá±áá¬áá áºáá¯áááºáá®ážááŒá®áž áááºááœááºáá±ážáááºáá±á¬ááºááŸá¯áá»á¬áž áá±ážááá¯áááºááŒá áºá á± - áá±ážááœááºážáá¯ááºá áá¬áááá¯áá² áá¯ááºáá«á ááá¯ááá¯á·áá±á¬ á¡ááŒá±á¡áá±áá»áá¯ážááœááºá áááºáá±á¬ááºááŸá¯áá±ážáá°ááẠá¡áááºážá¡ááŒá áºáá»á¬ážá áááºážááá¯á·á á¡ááŸá¬ážá¡ááœááºážáá»á¬ážááᯠáááºážáá¶ááá¯ááºááŸá¯ááŸáá·áº áááŸáááá¯ááºááŸá¯á¡ááŒáẠáááºážááá¯á·á¡á¬áž á€á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá±á«ááºážá ááºážáááºááŸáá·áº á¡áááºážá¡ááŒá áºáá»á¬ážááᯠá¡áá»áááºáááœá±áž ááá¯ážááŒáŸáá·áºááá¯áẠááá¯á·ááá¯áẠáá»áŸá±á¬á·áá»ááá¯ááºááá·áº á áœááºážáááºááŸááá±á¬ client áᶠáááºážááá¯á·áááŸáááá¯ááºá á±ááá·áº OS ááá¯áááºáž áá¬áááºáá°áá«áááºá client ááá±á¬ááºážááá¯áá»ááºá¡áá ááá¯ááºážáá»á¬áž (ááŒááºáááœááºáááºáá»á¬ážááŸááœá²á) ááœááºáááºáá»á¬ážá áááºáááºááŸááºááŒááºážá¡áá«á¡ááẠáááºáá±á¬ááºááŸá¯áá±ážááá·áº áá±á«áºáááºááŸáá·áº ááœááºááá¯ážááºááŸáááá·áº áááá¯ááºážááá·áºááẠáá°á·ááá¯ááºáá° virtual machine áá»á¬ážááŸáá·áº á¡ááŒá¬ážáá±á¬ tinsel á¡á¬ážáá¯á¶ážááᯠá á®á ááºáá±ážáá«áááºá
OpenStack ááá¯áá¬áá¬áá²á
ááœá±ážáá»ááºá áá¬áá¯á¶ážáá¯áá¯á¶ážááœááºá áááºáá±á¬ááºááŸá¯áá±ážáá°ááẠcloud á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶ááᯠáááºáá®ážááá¯ááºá á±ááá·áº OS áá áºáᯠááá¯á¡ááºáá«áááºá á¡ááŸááºááŸá¬á SaaS ááŒáá·áºá á¡ááá¯ááºážáá áºáá¯áááºááá¯áá±á¬ á¡ááá¯ááºážááẠáááºážááá¬áá áºáá¯áá¯á¶ážá¡ááœáẠáá¬áááºááŸáááẠ- á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á¡ááœáẠáá¬áááºááŸááá±á¬ áá¬áááœá²áá áºáᯠááŸáááẠ- ááá¯ááá¯áááºááŸá¬ áááºážááẠá¡ááŒá¬ážáá¬áááᯠIaaS áá¶á·ááá¯ážáá±ážáááºá á€áá¬áááœá²ááẠáá¯á¶ážá áœá²áá°á¡á¬áž SaaS ááᯠáá±ážáá«áááºá OpenStack ááẠááá¯ááºáá»á¬ážá áá¬áá¬áá»á¬ážááŸáá·áº ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážááᯠá¡áááºážá¡ááŒá áºá á¯áá±á«ááºážáá áºáá¯áááºážá¡ááŒá Ạá á¯áá±á¬ááºážáá¬á á€áá¯á¶áá±áááºááᯠá¡á¯ááºá á¯ááœá²áá»á¬ážá¡ááŒá Ạááœá²áᬠááœááºáááºáá±á«áºááŸá áá¯á¶ážá áœá²áá°áá»á¬ážáᶠá€á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá·áº ááá¯ááºáá»á¬ážá áá¬áá¬áá»á¬ážááŸáá·áº ááá¯ááŸá±á¬ááºááŸá¯á áá áºáá»á¬ážáá²á០áá áºáá¯ááŒá áºáááºá
OpenStack ááœááºáá»á°áá¬á¡áááºážá¡ááŒá áºáá»á¬ážá áá±áá¬ááá¯ááŸá±á¬ááºááŸá¯ááŸáá·áº ááœááºáááºá¡áááºážá¡ááŒá áºáá»á¬ážá ááŒá®ážáá¬ážáá±á¬á¡á á¯á¡áá±ážáá»á¬ážááᯠááááºážáá»á¯ááºááá¯ááºááá·áº cloud áááºáááºááŸá¯á áá áºáá áºáá¯ááŒá áºááŒá®áž á á¶á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºážááá¹ááá¬ážáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á API áá áºáá¯ááŸáá áºááá·áº á á®áá¶ááœááºáá²ááá¯ááºá á±áá«áááºá
áá áºáááºážááá¯ááá±á¬áºá áááºážááẠcloud áááºáá±á¬ááºááŸá¯áá»á¬áž (á¡áá»á¬ážááŒááºáá°ááŸáá·áº áá¯áá¹áááá ááŸá áºáá»áá¯ážáá¯á¶áž) áááºáá®ážááẠáá®ááá¯ááºážáá¯ááºáá¬ážááá·áº á¡ááá²á·áá±á¬á·ááºáá²ááºááá±á¬áá»ááºáá»á¬ážááŒá áºááẠ- ááá¯ááá¯áááºááŸá¬ áá¬áá¬ááᯠáá±á«ááºážá ááºááŒá®áž á ááºáá á¹á ááºážáá»á¬ážááᯠá¡áááºážá¡ááŒá áºá¡á á¯á¡áá±ážáá áºáá¯ááá¯á· áá°ážááŒá±á¬ááºážááá¯ááºá á±ááá·áº áááááá¬á¡á á¯á¶áá áºáá¯ááŒá áºáááºá á€á¡áááºážá¡ááŒá áºáá»á¬ážááẠááá¯á¡ááºáá±á¬ á¡ááŸá¬ážáá¶ááá¯ááºáááºá¡ááá·áºááᯠáá±ážáá±á¬ááºáááºá
á€á¡ááŒá±á¬ááºážá¡áá¬ááá¯áá±ážáá¬ážá
ááºááœááºá OpenStack ááœá²á·á
ááºážáá¯á¶ááẠá€áá²á·ááá¯á·ááŒá
áºáááº-
áá¯á¶ááŸáá°ážáá°áá«áááºá
OpenStack ááœááºáá«áááºáá±á¬ á¡á áááºá¡ááá¯ááºážáá áºáá¯á á®ááẠáááá»áá±á¬áá¯ááºáá±á¬ááºáá»ááºááᯠáá¯ááºáá±á¬ááºáááºá á€ááŒáá·áºáá±áá¬ážáá±á¬ áááá¯áá¬áááºáá¬ááẠááá·áºá¡á¬áž ááá¯á¡ááºááá·áº áá¯ááºáá±á¬ááºááŸá¯ááá¯ááºáᬠá¡á áááºá¡ááá¯ááºážáá»á¬ážá¡á á¯á¶ááᯠááŒá±ááŸááºážáá»ááºááœáẠááá·áºááœááºážááá¯ááºá á±áá«áááºá ááá¯á·áá¬ááœááºá á¡áá»áá¯á·áá±á¬á¡á áááºá¡ááá¯ááºážáá»á¬ážááẠá¡ááŒá áºá¡á áááºá¡ááá¯ááºážáá»á¬ážááŒá áºááŒá®áž áááºážááá¯á·ááᯠáááºááŸá¬ážááŒááºážááẠááŒá±ááŸááºážáá»ááºáá áºáá¯áá¯á¶ážá ááŒá®ážááŒáá·áºá á¯á¶ááŒááºáž ááá¯á·ááá¯áẠáá áºá áááºáá áºááá¯ááºážáá¯ááºáá±á¬ááºááá¯ááºá áœááºážáááŸáááŒááºážááᯠáŠážáááºá á±áááºá á€á¡á áááºá¡ááá¯ááºážáá»á¬ážááᯠá¡áá»á¬ážá¡á¬ážááŒáá·áº á¡áá»áá¯ážá¡á á¬ážááœá²ááŒá¬ážáá¬ážáá«áááºá
- Dashboard â OpenStack áááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠáááºá¡ááŒá±áᶠGUI
- á¡áááááŒá±á¬áá»áá¯á¶áž á¡ááŒá¬ážáááºáá±á¬ááºááŸá¯áá»á¬ážá¡ááœáẠá¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºážááŸáá·áº ááœáá·áºááŒá¯áá»ááºáá¯ááºáá±á¬ááºááá¯ááºá áœááºážááá¯á·ááᯠáá¶á·ááá¯ážáá±ážááá·áº áááá¯áá»á¯ááºááá¯ááºááŸá¯ááŸááá±á¬ áááºáá±á¬ááºááŸá¯áá áºáá¯ááŒá áºááŒá®áž áá¯á¶ážá áœá²áá°á¡áá±á¬ááºá¡áá¬ážáá»á¬ážááŸáá·áº áááºážááá¯á·áá¡áááºážááá¹ááá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááŒááºážá
- áá»á°áááœáẠ- á¡áá»áá¯ážáá»áá¯ážáá±á¬ OpenStack áááºáá±á¬ááºááŸá¯áá»á¬ážá á¡ááºáá¬áá±á·á áºáá»á¬ážá¡ááŒá¬áž áá»áááºáááºááŸá¯ááᯠáá¶á·ááá¯ážáá±ážááá·áº ááœááºáááºáááºáá±á¬ááºááŸá¯áá áºáᯠ(VMs ááŸáá·áº áááºážááá¯á·á ááŒááºáááá¹áá¬ááá¯á· áááºáá±á¬ááºááŒááºážá¡áá«á¡áááº)
- cinder â virtual machines á¡ááœáẠááá¯ááŸá±á¬ááºááŸá¯ ááááºááá¯á·ááẠáááºáá±á¬ááºááœáá·áº áá±ážáááºá
- nova - virtual machines áá»á¬ážááááá¶ááá¬á á®áá¶ááá·áºááœá²ááŸá¯
- áá áºáá»áẠ- á ááºáá¯ááºáá¯á¶áá»á¬ážááŸáá·áº áá»áŸááºáá áºááŒááºááá¯ááºáá»ááºáá»á¬ážá ááá¯ááŸá±á¬ááºááŸá¯
- ááœá áºáẠâ ááá¯ááŸá±á¬ááºááŸá¯á¡áá¬ááá¹áá¯ááᯠáááºáá±á¬ááºááœáá·áº áá±ážáááºá
- áá»ááºááŸá¬áá»áẠ- áááºáá®áá®áᬠá á¯áá±á¬ááºážááŒááºážááŸáá·áº ááá¯ááºážáá¬ááá¯ááºáá±á¬ á áœááºážáááºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá·áº áááºáá±á¬ááºááŸá¯áá áºáá¯
- á¡áá° â á¡ááá¯á¡áá»á±á¬ááºáááºáá®ážááŸá¯ááŸáá·áº á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáááºá¡ááœáẠáá¯á¶á á¶áááááºáá»á¬ážááᯠá¡ááŒá±áá¶á á á¯á ááºážááŸá¯
ááá±á¬áá»ááºá¡á¬ážáá¯á¶ážá á
á¬áááºážá¡ááŒáá·áºá¡á
á¯á¶ááŸáá·áº áááºážááá¯á·ááááºááœááºáá»ááºááᯠááŒáá·áºááŸá¯ááá¯ááºáá«áááºá
OpenStack á¡á áááºá¡ááá¯ááºážáá áºáá¯á á®ááẠáááá»áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯ááá¯áá¯ááºáá±á¬ááºááŒá®áž áááºážáá¯ááºáá±á¬ááºáá»ááºááá¯á á®áá¶ááá·áºááœá²áááºááŸáá·áº áá áºá á¯áá áºá ááºážáááºážá¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áá áºáá¯áááºáá®ážááẠá¡ááŒá¬ážáá±á¬ cloud áááºáááºááŸá¯á áá áºáááºáá±á¬ááºááŸá¯áá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºá á±ááẠAPI ááᯠáá¶á·ááá¯ážáá±ážááá·áºáááºáá±á¬ááºááŸá¯áá áºáá¯ááŒá áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá Nova ááẠá€á¡áááºážá¡ááŒá áºáá»á¬ážááᯠconfigure áá¯ááºáááºáááºáá±á¬ááºááœáá·áºá¡ááœáẠááœááºááŒá°áᬠá á®áá¶ááá·áºááœá²ááŸá¯ááŸáá·áº API áá áºáá¯á¡á¬áž áá¶á·ááá¯ážáá±ážáááºá Glance ááẠáá¯á¶á á®áá¶ááá·áºááœá²ááŸá¯ááŸáá·áº áááºážááá¯á·ááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠAPI áá áºáá¯á Cinder ááẠááááºááá¯á·ááá¯ááŸá±á¬ááºááŸá¯ááŸáá·áº áááºážááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠAPI áá áºáá¯ááá¯á·ááᯠáá¶á·ááá¯ážáá±ážáá«áááºá áá¯ááºáá±á¬ááºáá»ááºá¡á¬ážáá¯á¶ážááẠá¡ááœááºáá®ážáááºáá±á¬áááºážáááºážááŒáá·áº á¡ááŒááºá¡ááŸááºáá»áááºáááºáá¬ážáááºá
ááá¯á·áá¬ááœááºá áááºážááá¯ááŒáá·áºáá»áŸáẠOpenStack ááœááºáááºáááºáá±áá±á¬áááºáá±á¬ááºááŸá¯áá»á¬ážá¡á¬ážáá¯á¶ážááẠáá±á¬ááºáá¯á¶ážááœáẠááœááºáááºááá¯á·áá»áááºáááºáá¬ážáá±á¬ virtual machine (ááá¯á·ááá¯áẠcontainer) áá áºáá»áá¯ážááŒá áºáááºá áá±ážááœááºážáá±á«áºáá¬ááẠ- á¡áááºááŒá±á¬áá·áºá€áá»áŸáá±á¬ááºáá»á¬ážá áœá¬áá±á¬ááŒááºá ááºááá¯á¡ááºááá²?
virtual machine áá áºáá¯ááᯠáááºáá®ážááŒá®áž Openstack ááœáẠá¡ááŒá²ááŸááá±áá±á¬ ááá¯ááŸá±á¬ááºááŸá¯ááœááºáááºááá¯á· áá»áááºáááºááŒááºážá¡ááœáẠá¡ááºáááá¯áá®áááºááᯠááŒáá·áºááŒáá«á áá¯á·á
- á ááºáá áºáá¯áááºáá®ážááẠáá±á¬ááºážááá¯ááŸá¯áá áºáá¯ááᯠáááºáá®ážáá±á¬á¡áá« Horizon (Dashboard) ááŸáá áºááá·áº áá±á¬ááºážááá¯ááŸá¯ ááá¯á·ááá¯áẠCLI ááŸáá áºááá·áº áá±á¬ááºážááá¯ááŸá¯ááŒá áºáá«á á±á ááááá¯á¶áž ááŒá áºáá±á«áºáá¬ááá·áºá¡áá¬ááŸá¬ Keystone ááœáẠááá·áºáá±á¬ááºážááá¯áá»ááºá ááœáá·áºááŒá¯áá»ááºááŒá áºááẠ- á ááºááᯠáááºáááºáá®ážááá¯ááºáá«ááá¬ážá á€ááœááºáááºááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºááœáá·áºá áááºááá°ááŒááºážááœá²áááºážá
- Keystone ááẠááá·áºáá±á¬ááºážááá¯áá»ááºááᯠá á áºááŸááºááŒá±á¬ááºážáááºáá±ááŒááŒá®áž áá±á¬ááºáááºá¡áá¯á¶ážááŒá¯ááá·áº áá¯á¶á·ááŒááºáá»ááºáááºáá±á·áá»áºááœáẠá á áºááŸááºááŒá±á¬ááºážá¡áá±á¬ááºá¡áá¬ážáá áºáá¯áá¯ááºáá±ážáááºá Keystone á០áá¯á¶á·ááŒááºááŸá¯ááᯠáááºáá¶áááŸáááŒá®ážáá±á¬áẠáá±á¬ááºážááá¯áá»ááºááᯠNova (nova api) ááá¯á· áá±ážááá¯á·áááºá
- Nova-api ááẠááááºá áá¯ááºáá¯ááºáá¬ážáá±á¬ á¡áá±á¬ááºá¡áá¬áž ááá¯áááºááᯠá¡áá¯á¶ážááŒá¯á Keystone ááᯠáááºááœááºááŒááºážááŒáá·áº ááá·áºáá±á¬ááºážááá¯áá»ááºá ááá¬ážáááºááŸá¯ááᯠá á áºáá±ážáááº
- Keystone ááẠá á áºááŸááºááŒá±á¬ááºážá¡áá±á¬ááºá¡áá¬ážááŒááŒááºážááᯠáá¯ááºáá±á¬ááºááŒá®áž ဠauth token ááá¯á¡ááŒá±áá¶á ááœáá·áºááŒá¯áá»ááºááŸáá·áº ááá·áºáááºáá»ááºáá»á¬ážááá¯ááºáᬠá¡áá»ááºá¡áááºáá»á¬ážááᯠáá±ážáá«áááºá
- Nova-api ááẠnova-database ááœáẠVM á¡áá áºá¡ááœáẠentry áá áºáá¯ááᯠáááºáá®ážááŒá®áž nova-scheduler ááá¯á· á ááºáááºáá®ážááẠáá±á¬ááºážááá¯áá»ááºááᯠáá±ážááá¯á·áááºá
- Nova-scheduler ááẠVM ááᯠáááºááŸááºáá¬ážáá±á¬ áá±á¬ááºáá»á¬ážá á¡áá±ážáá»á¬áž ááŸáá·áº áá¯ááºáá»á¬ážá¡ááá¯áẠá¡áá¯á¶ážááŒá¯ááá·áº host (ááœááºááŒá°áᬠnode) ááᯠááœá±ážáá»ááºáááºá á€ááŸááºáááºážááŸáá·áº VM ID ááᯠnova-áá±áá¬áá±á·á áºááá¯á· áá±ážáá¬ážáááºá
- ááá¯á·áá±á¬ááºá nova-scheduler ááẠinstance áá áºáá¯ááᯠá¡áá¯á¶ážááŒá¯ááẠáá±á¬ááºážááá¯ááŸá¯ááŒáá·áº nova-compute ááᯠáááºááœááºáááºá á ááºáá«áá¬áá®áá¬áá»á¬ážá¡ááŒá±á¬ááºáž á¡áá»ááºá¡áááºáá»á¬ážááᯠááá°ááẠNova-compute ááẠnova-conductor ááŸáá·áº áááºááœááºááẠ(nova-conductor ááẠnova-database ááŸáá·áº nova-compute ááŒá¬ážááŸá proxy server áá áºáá¯á¡ááŒá Ạáá¯ááºáá±á¬ááºááá·áº nova-compute áá áºáá¯ááŒá áºááŒá®áž nova-database ááá¯á· áá±á¬ááºážááá¯ááŸá¯á¡áá±á¡ááœááºááᯠááá·áºáááºááŒááºáž áá®ááœááºáá±á¬áááºáá»áŸá±á¬á·áá»áá±ážá)
- Nova-conductor ááẠnova-database á០áá±á¬ááºážááá¯áá¬ážáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºáá¶áááŸáááŒá®áž áááºážááᯠnova-compute ááá¯á· áá±ážááá¯á·áááºá
- ááá¯á·áá±á¬ááºá áá¯ááºáá¯á¶ ID ááá¯ááá°ááẠnova-compute ááᯠáá áºáá»ááºááŒáá·áºááá¯ááºáááºá Glace ááẠKeystone ááœáẠáá±á¬ááºážááá¯áá»ááºááᯠááá¬ážáááºá á±ááŒá®áž áá±á¬ááºážááá¯áá¬ážáá±á¬ á¡áá»ááºá¡áááºááᯠááŒááºáá±ážáááºá
- ááœááºááẠááá·áºáááºáá»ááºáá»á¬ážááá¯ááºáᬠá¡áá»ááºá¡áááºáá»á¬ážááᯠááá°ááẠNova-compute ááẠáá»á°áááœááºááᯠáááºááœááºáááºá áá áºáá»ááºááŒáá·áºááŒááºážáá²á·ááá¯á·áááºá áá»á°áááœááºááẠKeystone ááœáẠáá±á¬ááºážááá¯áá»ááºááᯠááŸááºáááºááŒá±á¬ááºáž á¡áááºááŒá¯ááŒá®áž áá±áá¬áá±á·á Ạ(port identifier, etc.) ááœáẠááá·áºááœááºážááŸá¯áá áºáá¯ááᯠáááºáá®ážááŒá®ážáá±á¬ááºá ááá¯á·ááºáá áºáá¯áááºáá®ážááẠáá±á¬ááºážááá¯áá»ááºáá áºáá¯ááᯠáááºáá®ážáᬠáá±á¬ááºážááá¯áá¬ážáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážááᯠnova-compute ááá¯á· ááŒááºáá±ážáááºá
- á¡áá¶á¡ááá¯ážá¡áá»ááºááᯠvirtual machine ááá¯á·ááœá²áá±áá±ážáááºáá±á¬ááºážááá¯ááŸá¯ááŒáá·áº Nova-compute á¡áááºá¡ááœááºáá»á¬ážááẠcinder ááŒá áºáááºá á¡ááŒáá·áºáá áºáá»ááºááŸáá·áºáááºáá°áááºá cider ááẠKeystone ááœááºáá±á¬ááºážááá¯ááŸá¯ááá¯á¡áááºááŒá¯áááºá á¡áá¶á¡ááá¯ážá¡áá»ááºáááºáá®ážááŸá¯áá±á¬ááºážááá¯áá»ááºááá¯áááºáá®ážáá¬áá±á¬ááºážááá¯áá¬ážáá±á¬á¡áá»ááºá¡áááºáá»á¬ážááá¯ááŒááºáá±ážáááºá
- áááºááŸááºáá¬ážáá±á¬ ááá·áºáááºáá±á¬ááºáá»á¬ážáá«ááŸááá±á¬ virtual machine áá áºáá¯ááᯠá¡áá¯á¶ážáá»ááẠáá±á¬ááºážááá¯ááŸá¯ááŒáá·áº Nova-compute á¡áááºá¡ááœáẠlibvirtá
ááááºáá±á¬á·á ááá¯ážááŸááºážáá±á¬ virtual machine áá áºáá¯ááᯠáááºáá®ážááŒááºážáᯠáááºááá±á¬ ááá¯ážááŸááºážáá±á¬ áá¯ááºáá±á¬ááºáá»ááºááẠcloud ááááºáá±á¬ááºážá á¡á áááºá¡ááá¯ááºážáá»á¬ážááŒá¬ážááœáẠAPI áá±á«áºááá¯ááŸá¯áá»á¬ážá áááºáá»á¬áááºá¡ááŒá áºááá¯á· ááŒá±á¬ááºážáá²ááœá¬ážáááºá ááá¯á·á¡ááŒááºá áááºááœá±á·ááŒááºáááá·áºá¡ááá¯ááºážá ááááºá áááºááŸááºáá¬ážáá±á¬ áááºáá±á¬ááºááŸá¯áá»á¬ážáááºáá»áŸáẠá¡ááŒááºá¡ááŸááºáááºááœááºááŸá¯ááŒá áºáá±á«áºááá·áºááŒá¬ážááœáẠáá±ážáááºáá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážáá«áááºáá«áááºá á ááºááá¯áááºáá®ážááŒááºážááẠcloud ááááºáá±á¬ááºážá០áááºáá¯ááºáá±á¬ááºááá¯ááºááá·áºá¡áá¬á áá±ážáááºáá±á¬á¡á áááºá¡ááá¯ááºážáá áºáá¯áá»áŸáá¬ááŒá áºááẠ- á¡ááœá¬ážá¡áá¬ááá¯áá»áááºááœááºáá»áŸá¬ááŸáááẠáá¬áááºááŸááá±á¬áááºáá±á¬ááºááŸá¯á ááááºááá¯á·ááááºážáááºážááŸá¯á¡ááœááºáá¬áááºáá°ááá·áºáááºáá±á¬ááºááŸá¯á DNS á¡ááœááºáá¬áááºáá°áá±á¬áááºáá±á¬ááºááŸá¯á ááá¹áá¯ááá¬áá¬áá¬áá»á¬ážááá¯á á®áá¶áá±á¬ááºááœááºáá±ážááá·áºáááºáá±á¬ááºááŸá¯á áááºááŒáá·áºáá¬áááºááŸááááºá Cloud ááẠááá·áºá¡á¬áž áááºá virtual machines áá»á¬ážááᯠááá¯ážá¡á¯ááºá á¯áá²á·ááá¯á· áááºáá¶ááá·áºááẠ( virtualization ááŸáá·áº ááá·áºáá»ááºááẠ) ááá·áºá ááºááœáẠá¡áá¯á¡áá±á¬ááºáááºáááºážáá»ááºááœáẠáá áºáá¯áá¯ááŒá áºááœá¬ážáá«áá áááºážááᯠá¡áááºááááºážáááºážááŸá¯áá»á¬ážá á áááºááá¯á·á០ááŒááºáááºááá°áá¬ážáá±á¬áºáááºážá virtual machine ááẠá¡áá±ážááŒá®ážáá±á¬á¡áááºážááá¹áá០ááá«áááºááá·áºáá¯á¶á á¶ááŒáá·áº áááºáá±á¬ááºáá¬ážááẠ- virtual machine "áá±" - ááŒá¿áá¬áááŸááá±á - á¡áá áºáá áºáá¯ááᯠááá¯ážááá¯ážááŸááºážááŸááºáž áááºáá®ážáá¬ážááŒááºážááŒá áºááŒá®áž áá¬ááºááẠáá¯á¶á á¶ááœááºáá±á«áºááœáẠá¡ááŒá±áá¶áá¬ážááŒá®áž áááºážááá¯á·ááŒá±á¬ááá·áºá¡ááá¯ááºáž áááºááœá²á·ááẠááá¯ááºáá±áá¬ááºá áá¯á¶ážááŸá¯á¶ážááŸá¯ááᯠáááááá¬ážáááá±á ááá¬áá¡á¬ážááŒáá·áºá áááºážááẠááŒáá¯ážááá¯ááºááŸá¯ááá¹ááá¬ážáá»á¬áž ááŸááá±ááŒááºážá¡ááœáẠáá±á¬ááºáá¶á·áá±ážááẠ- Heat templates áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áááºááẠááœááºáááºáá»á¬ážá áœá¬ááŸáá·áº virtual machines áá»á¬ážá áœá¬áá«áááºáá±á¬ ááŸá¯ááºááœá±ážáá±á¬áá¯ááºáá±á¬ááºáá»ááºááᯠá¡ááœááºááá° á¡áá¯á¶ážáá»ááá¯ááºáááºá
ááœááºáááºááá«áá² cloud á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶áááŸááááºááᯠá¡ááŒá²áááááá±ááá·áºááẠ- ááŒááºá ááºáá áºáá¯á á®ááẠááœááºáááºááŸáá áºááá·áº á¡ááŒá¬ážááŒááºá ááºáá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸááºá¡áá»áá¯ážáááºáá±á¬ááºááŸá¯ááŸáááẠá ááá¯á·á¡ááŒááºá cloud ááœáẠáá¯á¶ážááááºááŒáááºááŒááºážáááŸááá±á¬ ááœááºáááºáá áºáá¯ááŸááááºá áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá á¡á±á¬ááºáá¶ááœááºáááºááẠááá¯á ááá¯á·ááá¯áẠáá»á±á¬á·áááºážááẠ- node áá»á¬ážááŸáá·áº switches á¡áá áºáá»á¬ážááᯠáá±á·ááá¯ááºážáááá·áºáá±á¬áºáááºáž áááºááá·áºá¡á áááºá¡ááá¯ááºážááẠáááœáŸá²áááŸá±á¬ááºáᬠááŒá±á¬ááºážáá²ááá¯ááºááẠ- ááœááºáááºá¡áá áºáá»á¬ážááᯠáááºááá·áºááẠááá¯á·ááá¯áẠáá»ááºáá áºáááºá virtual machine á¡áá áºáá»á¬ážáá±á«áºáá¬áááºááŒá áºááŒá®áž á¡áá±á¬ááºážáá»á¬ážáá«ááŸááááá·áºááẠáá± áá±á¬ááºážáá«ážá¡á ááœáẠáá±ážáá¬ážááá·áº cloud áá¡áááá¹áá«ááºááᯠáááºááŸááºáááááºááŸáá·áºá¡áá»áŸá á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¯á¶ážá áœá²áá°áᶠá¡ááá¯á¡áá»á±á¬áẠááœá²áá±áá±ážááá·áºááŒá®áž áááºáá±á¬ááºááŸá¯áá±ážáá°áá¶á០á áœááºáááºááŸá¯ á¡áááºážáá¯á¶áž (ááá¯á·ááá¯áẠááá¯áá±á¬ááºážáá±ážáááº) ááŒáá·áº ááœá²áá±áá±ážááá·áºáááºá ááá¯ááá¯áááºááŸá¬á áááºáááá¯ááºáá±ážááá¯ááºáá¬á¡áá±á¬áá·áºáá¯á¶á ᶠhttp/https ááŸáááá·áºáááºáá±á¬ááºááá¯ááºáá±á¬ front-end áá¯á¶á á¶ááŒáá·áº ááá¯áááºááŸááá±ááá·áº ááœááºáááºá¡áááºážá¡ááŒá áºáá»á¬ážá áá¶á·ááá¯ážááŸá¯á¡áá»áá¯ážá¡á á¬ážááŸáá·áº áá¬áááºáá»ááœááºáááºá¡ááºáá»ááºáá®áᬠVasily ááẠbackend áá²á·ááá¯á·ááẠcloud ááá¯ááºáá«á Vasily ááŸá¬ áááºááŸá áºáá»á±á¬ááºážááŸááááº
Neutron ááẠááœááºáááºáááºáá±á¬ááºááŸá¯áá áºáá¯á¡áá±ááŒáá·áº cloud á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á ááœááºáááºá¡ááá¯ááºážááᯠá á®áá¶ááá·áºááœá²áááºá¡ááœáẠAPI áá áºáᯠáá±á¬ááºáá¶á·áá±ážáááºá áááºáá±á¬ááºááŸá¯ááẠNetwork-as-a-Service (NaaS) áá¯áá±á«áºáá±á¬ abstraction á¡ááœáŸá¬ááᯠáá¶á·ááá¯ážáá±ážááŒááºážááŒáá·áº Openstack á ááœááºáááºáá»áááºáááºááŸá¯á¡ááá¯ááºážááᯠá áœááºážá¡á¬ážááŸáá·áº á á®áá¶ááá·áºááœá²áá«áááºá ááá¯ááá¯áááºááŸá¬á ááœááºáááºááẠá¥ááá¬á virtual CPU cores ááá¯á·ááá¯áẠRAM ááá¬ááá²á·ááá¯á· áá°áá®áá±á¬ virtual ááá¯ááºážáá¬ááá¯ááºáá±á¬ áá°áá áºááŒá áºáááºá
ááá¯á·áá±á¬áº OpenStack á ááœááºáááºá¡á áááºá¡ááá¯ááºážá áááºáá±á¬ááºáá¯á¶ááá¯á· áááºáááœá¬ážáá®á á€ááœááºáááºááẠOpenStack ááœáẠáááºááá¯á·á¡áá¯ááºáá¯ááºááŒá±á¬ááºážá ááœááºáááºááẠá¡áááºááŒá±á¬áá·áº cloud á á¡áá±ážáá«áá±á¬ á¡á áááºá¡ááá¯ááºážáá áºáá¯ááŒá áºáááºááᯠáá¯á¶ážáááºááŒáá·áºááŒá áá¯á·á
ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááœáẠRED client VM ááŸá áºáá¯ááŸáá·áº GREEN client VM ááŸá áºáá¯ááŸááááºá á€áááºážááŒáá·áº á€á ááºáá»á¬ážááẠhypervisor ááŸá áºáá¯áá±á«áºááœáẠáááºááŸááá±áááºáᯠáá°áááŒáá«á áá¯á·á
áá±á¬áá±á¬áááºááœááºá áááºážááẠáá¬áᬠ4 áá¯á virtualization áá»áŸáá¬ááŒá
áºááŒá®ážá ááá¯á¡áá»áááºá¡áá áá»áœááºá¯ááºááá¯á·áá¯ááºáá±á¬ááºáá²á·ááá·áºá¡áá¬á¡á¬ážáá¯á¶ážááŸá¬ áá¬áᬠ4 áá¯ááᯠvirtualize ááŒá¯áá¯ááºáá¬ážááŒá®áž áááºážááá¯á·ááᯠáá¯ááºááá¯ááºážááá¯ááºáá¬áá¬áá¬ááŸá
áºáá¯ááœáẠáá¬ážááŸáááŒááºážááŒá±á¬áá·áºááŒá
áºáááºá ááá¯á¡áá»áááºá¡áá áááºážááá¯á·ááẠááœááºáááºááŸáá·áºááẠáá»áááºáááºáá¬ážááŒááºáž áááŸááá±á
cloud áá áºáá¯ááŒá¯áá¯ááºáááºá áá»áœááºá¯ááºááá¯á·ááẠá¡á áááºá¡ááá¯ááºážáá»á¬ážá áœá¬ááᯠááá·áºááœááºážááẠááá¯á¡ááºáá«áááºá ááááŠážá áœá¬á áá»áœááºá¯ááºááá¯á·ááẠááœááºáááºá¡á áááºá¡ááá¯ááºážááᯠvirtualize ááŒá¯áá¯ááºááẠ- áá»áœááºá¯ááºááá¯á·ááẠá€á áẠ4 áá¯á¶ážááᯠá¡ááœá²ááá¯ááºáá»áááºáááºááẠááá¯á¡ááºááŒá®áž client áá»á¬ážááẠL2 áá»áááºáááºááŸá¯ááᯠááá¯áá»ááºáá«áááºá áááºááẠááá¯ááºáá áºáá¯ááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž áááºážááŠážáááºáá»ááºááœáẠáááºá ááºááᯠáá¯á¶á á¶áááºááŸááºáᬠlinux áá¶áá¬ážááᯠá¡áá¯á¶ážááŒá¯á á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒá±ááŸááºážááá¯ááºááẠááá¯á·ááá¯áẠááá¯ááá¯á¡ááá·áºááŒáá·áºáá±á¬ á¡áá¯á¶ážááŒá¯áá°áá»á¬ážá¡ááœáẠopenvswitch (áá»áœááºá¯ááºááá¯á·ááẠáááºážááᯠáá±á¬ááºá០ááŒááºááœá¬ážáá«áááº)á ááá¯á·áá±á¬áº ááœááºáááºáá»á¬ážá áœá¬ááŸáááá¯ááºááŒá®áž ááá¯ááºáá áºáá¯ááŸáá áºááá·áº L2 ááᯠá¡áááºáááŒááºááœááºážá¡á¬ážáá±ážááŒááºážááẠá¡áá±á¬ááºážáá¯á¶ážá áááºáá°ážááá¯ááºáá« - ááœá²ááŒá¬ážáá±á¬áá¬ááá»á¬ážá áááºáá±á¬ááºááŸá¯á á¬ážááœá²á áá»áŸá±á¬ááºááœáŸá¬áááºááẠááá±á«ááºážáá»á¬ážá áœá¬á á±á¬áá·áºááá¯ááºážáá±áááŒááºážá ááŒá¿áá¬ááŒá±ááŸááºážááŒááºáž áááºááá¹ááááºáá»á¬ážááŸáááẠ- á€áá±ááºáá áºááá¹áá¬ááœááºá áá»ááºážáááºááŸá¯á á¡áá¯ááºáááŒá áºáá±á¬á·áá°ážá áá¯áá¹ááá®áá áºáá¯á áá«ááᯠááŒááºááŒááºáá¬ážáááºáá±á á¡á²áá«ááᯠááŸá±á·áááºááá¯á· ááœááºáá±áá±áá«áá²á ááá¯á·ááŒá±á¬áá·áºá hypervisors áá»á¬ážááŒá¬ážááœáẠáá»áœááºá¯ááºááá¯á·á virtual machines áá»á¬áž áááºááœááºáá±ážááá·áº L3 ááœááºáááºáá áºáá¯ááᯠááœá±ážáááºááŒá áºááŒá®ážá ဠL3 ááœááºáááºáááááºááœáẠáá»áœááºá¯ááºááá¯á·á virtual machines áá»á¬ážá áááºážááŒá±á¬ááºážááá¯áááºáááºááá·áº virtual L2 áááºááá·áºááœááºáááºáá»á¬ážááᯠáááºáá±á¬ááºáá«áááºá áááºááẠGREá Geneve ááá¯á·ááá¯áẠVxLAN ááᯠencapsulation á¡ááŒá áºáá¯á¶ážááá¯ááºáááºá á¡áá°ážá¡áá±ážáááŒá®ážáá±ááá·áº á¡áá¯áá±á¬áá±á¬áááºáá±á¬á· áá±á¬ááºáá¯á¶ážááᯠá¡á¬áá¯á¶á áá¯ááºááŒáá·áºáá¡á±á¬ááºá
VTEP ááᯠââáá áºáá±áá¬áá¬ááŸá¬ ááŸá¬ááá¯á·ááá¯ááẠ(áá°ááá¯ááºáž VxLAN áá±á«áá¬ááá²á· áááºážááŸá®ážáááºááá¯á· áá»áŸá±á¬áºááá·áºáá«áááº)á áá»áœááºá¯ááºááá¯á·ááœáẠáá¬áá¬áá»á¬ážá០ááá¯ááºááá¯ááºáá¬áá±á¬ L3 ááœááºáááºáá áºáá¯ááŸááá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááᯠáá¬áá¬áá»á¬ážáá±á«áºááœáẠVTEP áá¬ážááẠáááºááá·áºá¡áá¬áá០áá¬ážáá®ážáá¬ážááŒááºážáááŸáááá·áºá¡ááŒáẠOVS (OpenvSwitch) ááẠáááºážááᯠáá¯ááºáá±á¬ááºáá¬ááœáẠá¡áá±á¬ááºážáá¯á¶ážááŒá áºáááºá ááááºá¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠá€áá®ááá¯ááºážááᯠáááŸááá²á·áááºá
VM áá»á¬ážááŒá¬áž áááºážááŒá±á¬ááºážááᯠááá¯ááºážááŒá¬ážáá¬ážááááºááŒá
áºáá±á¬ááŒá±á¬áá·áºá virtual machine áá»á¬ážááá¯á· áŠážáááºáá±á¬ port áá»á¬ážááœáẠááá°áá®áá±á¬ vlan áá¶áá«ááºáá»á¬áž ááŸááá«áááºá áááºáá¶áá«ááºááẠVxLAN ááœáẠááá·áºááœááºážáá¬ážáá±á¬á¡áá«ááœáẠáá»áœááºá¯ááºááá¯á·ááẠVNI áá
áºáá¯ááŸááááºááŒá
áºáá±á¬ááŒá±á¬áá·áº áááºážááᯠá¡ááœááºááá° áááºááŸá¬ážááá¯ááºáá±á¬ááŒá±á¬áá·áº áááºáá¶áá«ááºááẠvirtual switch áá
áºáá¯ááœááºáᬠá¡áááºážááá¹áá០áá«áááºáá«áááºá
ááᯠáá»áœááºá¯ááºááá¯á·ááẠáááºážááá¯á·á¡ááœáẠááŒá¿áá¬áááŸááá² áá»áœááºá¯ááºááá¯á·á á
ááºáá»á¬ážááŸáá·áº virtual ááœááºáááºáá»á¬ážááᯠáááºáá®ážááá¯ááºááŒá®ááŒá
áºáááºá
ááá¯á·áá±á¬áºá client ááœáẠá¡ááŒá¬ážá ááºáá áºáá¯ááŸááá±á¬áºáááºáž ááá°áá®áá±á¬ááœááºáááºáá áºáá¯áá±á«áºááœáẠááŸááá±áá«á áááºááá¯á·ááŒá áºáááºáááºážá ááœááºáááºáá»á¬ážááŒá¬ážááœáẠroot áá¯ááºááẠááá¯á¡ááºáááºá Centralized routing ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá« ááá¯ážááŸááºážáá±á¬ááœá±ážáá»ááºááŸá¯ááᯠááŒáá·áºááẠ- ááá¯ááá¯áááºááŸá¬á traffic ááᯠá¡áá°ážáá®ážááá·áº network node áá»á¬ážááŸáááá·áº ááŒááºáááºážááẠ(á ááºážáááºážá¡áá áááºážááá¯á·ááᯠcontrol node áá»á¬ážááŸáá·áº áá±á«ááºážá ááºáá¬ážáááºá ááá¯á·ááŒá±á¬áá·áº áá»áœááºá¯ááºááá¯á·ááœáẠá¡áá°áá°áááºááŒá áºáááº)á
áá¬ááŸááŸá¯ááºááœá±ážáá¯á¶ááá±á«áºáá°áž - control node ááŸá¬ áá¶áá¬ážáá»ááºááŸá¬ááŒááºáá áºáá¯áááºáá®ážááŒá®áž á¡á²áá®ááá± á¡ááœá¬ážá¡áá¬ááᯠáá±á¬ááºážááŸááºááŒá®áž ááá¯á¡ááºáá²á·áá±áá¬ááŸá¬ áááºážááŒá±á¬ááºážáá±ážáááºá ááá¯á·áá±á¬áº ááŒá¿áá¬ááŸá¬ RED client ááẠ10.0.0.0/24 ááœááºáááºááᯠá¡áá¯á¶ážááŒá¯ááá¯ááŒá®áž GREEN client ááẠ10.0.0.0/24 ááœááºáááºááᯠá¡áá¯á¶ážááŒá¯ááá¯áá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá ááá¯ááá¯áááºááŸá¬á áá»áœááºá¯ááºááá¯á·ááẠááááºá á¬áá±áá¬áá»á¬ážááᯠá áááºááŒááºáá±á¬ááºáááºááŒá áºáááºá ááá¯á·á¡ááŒááºá áá±á¬ááºáááºáá»á¬ážááẠá¡ááŒá¬ážáá±á¬ááºáááºáá»á¬ážá¡á¬áž áááºážááá¯á·áá¡ááœááºážááá¯ááºážááœááºáááºáá»á¬ážááá¯á· áááºážááŒá±á¬ááºážááŒá±á¬ááºážááá¯ááºá á±ááẠá¡áááá¹áá«ááºááŸááá±á¬ááŒá±á¬áá·áºá ááœááºáááºáá»á¬ážááŸáá·áº áá¯á¶ážá áœá²áá°áá±áᬠáááºážááŒá±á¬ááºážááᯠááá¯ááºážááŒá¬ážáááºá áááºážááá¯á·áá áºáá¯á á®á¡ááœáẠáá®ážááŒá¬áž namespace áá áºáá¯ááᯠááœá²áá±áá±ážáá«áááºá Namespace ááẠá¡ááŸááºááááºááœáẠLinux network stack ááááá¹áá°ááŒá áºááŒá®ážá ááá¯ááá¯áááºááŸá¬ namespace RED ááŸá client áá»á¬ážááẠnamespace GREEN á០client áá»á¬ážáá¶á០áá¯á¶ážáááœá²áá¯ááºááŒááºážááŒá áºááẠ(áá±á¬ááºážááŒá®á ဠclient ááœááºáááºáá»á¬ážááŒá¬ážáááºážááŒá±á¬ááºážááᯠáá¯á¶áá± namespace ááá¯á·ááá¯áẠupstream áááºáá°ááá¯á·áá±á¬ááºáá±ážáááááá¬áá»á¬ážááœáẠááœáá·áºááŒá¯áá¬ážáááº)á
ááá¯ááá¯áááºááŸá¬á áá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºáá« áá¯á¶ááŒááºážááᯠáááŸááá«áááºá
L2 ááá¯ááºáá±á«ááºážáá»á¬ážááẠááœááºááŒá°áá¬áá¯á¶ážá¡á¬ážáá¯á¶ážá០ááááºážáá»á¯ááºááŸá¯áá¯ááºááá¯á· áá°ážááŒá±á¬ááºážáááºá á€ááœááºáááºáá»á¬ážá¡ááœáẠL3 á¡ááºáá¬áá±á·á
áºáááºááŸáááá·áºáá±áá¬á áá
áºáá¯á
á®ááẠáá®ážááŒá¬ážááœá²áá¯ááºáááºá¡ááœáẠáá®ážááŒá¬áž namespace áá
áºáá¯á
á®ááœááºááŸááááºá
ááá¯á·áá±á¬áº á¡áá±ážááŒá®ážáá¯á¶ážá¡áá¬ááᯠáá»áœááºá¯ááºááá¯á· áá±á·ááœá¬ážááŒáááºá virtual machine ááẠclient á¡á¬áž áááºáá±á¬ááºááŸá¯áá áºáᯠáá±ážááááºá ááá¯ááá¯áááºááŸá¬ áááºážááá¯á·áá±á¬ááºááŸáááá¯ááºááá·áº á¡áááºážáá¯á¶áž ááŒááºá interface áá áºáá¯ááŸáááá«áááºá ááá¯ááá¯áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠááŒááºáááá¹áá¬ááá¯á· ááœááºááœá¬ážááẠááá¯á¡ááºáááºá á€áá±áá¬ááœáẠááá°áá®áá±á¬ ááœá±ážáá»ááºááŸá¯áá»á¬áž ááŸááá«áááºá á¡ááá¯ážááŸááºážáá¯á¶ážááœá±ážáá»ááºááŸá¯ááᯠáá¯ááºááŒáá·áºáá¡á±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠáááºáá±á¬ááºááŸá¯áá±ážáá°áááœááºáááºááœáẠááá¬ážáááºááŒá áºáááºááŒá áºááŒá®áž á¡ááŒá¬ážááœááºáááºáá»á¬ážááŸáá·áº áááºáá±áááºááá¯ááºááá·áº áá¯á¶ážá áœá²áá°áá áºáŠážá á®ááá¯á· ááœááºáááºáá áºáá¯á á®ááᯠáá±á«ááºážááá·áºáááºááŒá áºáááºá ááœááºáááºáá»á¬ážááẠáá¶á·ááá¯ážáá±ážáá°ááœááºáááºá áá±ážáááºááŸá ááá°áá®áá±á¬ VRF áá»á¬ážááᯠááŒááºáá±á¬ááºááŒá®áž ááŒáá·áºááŸá¯ááá¯ááºáááºá ááœááºáááºáá±áá¬ááẠáááá¯ááºážááá·áºáá áºáá¯á á®á namespace ááœááºáááºáž ááŸááá±áááºááŒá áºáááºá ááá¯á·áá±á¬áºá áááºážááá¯á·ááẠáá¯ááºááá¯ááºážááá¯ááºáᬠ(ááá¯á·ááá¯áẠááá¯áá¯áá¹ááááŸááá±á¬) á¡ááœááºá¡ááŒááºáá áºáá¯ááŸáá áºááá·áº ááŒááºáááá¹áá¬ááá¯á· ááœááºááœá¬ážááŒáááºááŒá áºáááºá áááá¯ááºážááá·áºá¡ááœá¬ážá¡áá¬ááᯠááœá²ááŒá¬ážáááºá ááŒááºáááá¯á·ááœá¬ážááá·áºá¡ááœá¬ážá¡áá¬ááᯠáááá¯ááºážááá·áºá¡ááœáẠááœá²áá±áá±ážáá¬ážááá·áº VLAN áááºááŒáá·áº áááºáá±ážáááºááŒá áºáááºá
ááááºá¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááẠá€áá¯á¶ááŒááºážááᯠáááŸááá²á·áááº-
áá»áá¯ážááŒá±á¬ááºážáá®áá»á±á¬áºáá±á¬áá±ážááœááºážááŸá¬ á¡áááºááŒá±á¬áá·áº ááœááºáá»ááºááŸá¯ áá¯á¶áá»á¬ážáá±á«áºááœáẠáá¶áá«ážáá±á«ááºáá»á¬áž áááŒá¯áá¯ááºáááááºážá áááºážááẠááŒá¿áá¬ááŒá®ážááŒá®ážáá¬ážáá¬ážááá¯ááºáá«á ááá¯á·á¡ááŒááºá áááºááẠááŒáá·áºáá±áá¬ážáá±á¬ router (DVR) ááá¯ááœáá·áºáá«á áááºážááẠá¡áá¯ááºááŒá
áºáááá·áºáááºá á€á¡ááŒá±á¡áá±ááœááºá Openstack ááœáẠáá°áááºážá¡ááá¯ááºážá¡áá¯á¶ážááŒá¯ááá·áº áááá¯áá»á¯ááºááá¯ááºááŸá¯áá¶áá«ážáá±á«ááºááŒáá·áº á¡ááá¯ážááŸááºážáá¯á¶ážááœá±ážáá»ááºááŸá¯ááᯠáá»áœááºá¯ááºááá¯á·á
ááºážá
á¬ážáá±áá«áááºá ááŒáá·áºáá¬ážáá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá¡ááœááºá áááºážááá¯á·ááẠSR-IOV ááŸáá·áº Passthrough áá²á·ááá¯á·áá±á¬ ááŒáá·áºáá±áá¬ážáá±á¬ router ááŸáá·áº á¡ááŸáááºááŒáŸáá·áºáááºážááá¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áááºááŒá
áºááŒá®áž áááºážááá¯á·ááŒá±á¬ááá·áºá¡ááá¯ááºážá áááºážááẠáá¯á¶ážáááœá²ááŒá¬ážááŒá¬ážáá¬ážáá±á¬áá¬ááºáááºážááŒá
áºáááºá á¡áááºáá¯á¶áž á¡ááŒá±áá¶á¡ááá¯ááºážááᯠááá¯ááºááœááºááŒáá·áºáá¡á±á¬ááºá ááŒá®ážááẠá¡áá±ážá
áááºááᯠáá±ážáá«áááºá
ááááºáá±á¬á·á áá»áœááºá¯ááºááá¯á·áá¡á á®á¡á á¥áºááẠá¡áá¯ááºááŒá áºáá±ááŒá®ááŒá áºáá±á¬áºáááºážá ááœá²ááŒá¬ážáá»ááºá¡áá»áá¯á·ááŸááá«áááºá
- áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·áá ááºáá»á¬ážááᯠáá áºáááºážáá áºáá¯á¶ áá¬ááœááºááẠááá¯á¡ááºáááºá ááá¯ááá¯áááºááŸá¬á client áá®ááá¯á· switch interface ááœáẠfilter áá áºáá¯áá¬ážáááºááá¯á¡ááºáááºá
- virtual machine ááẠIP ááááºá á¬ááᯠá¡ááá¯á¡áá»á±á¬ááºááá°ááẠááŒá áºááá¯ááºááŒá±ááŸáá á±áá¬áá° áááºážááᯠááœááºááá¯ážááºááŸáááá·áº áááºáá±á¬ááºááŒá®áž ááááºá á¬ááᯠá¡áá»áááºááá¯ááºáž á á¬áááºážááœááºážááẠáááá¯á¡ááºáá«á
á ááºáá¬ááœááºááŸá¯ááŒáá·áºá ááŒáá«á áá¯á·á áááºážá¡ááœáẠáááºááẠbanal iptables ááá¯áá¯á¶ážááá¯ááºáááºá á¡áááºááŒá±á¬áá·áºááá¯ááºááááºážá
ááá¯ááá¯áááºááŸá¬á ááá¯áá»áœááºá¯ááºááá¯á·á topology ááẠá¡áááºážáááºááá¯ááá¯ááŸá¯ááºááœá±ážáá¬áá«áááºá
áááºááŒáá¡á±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠDHCP áá¬áá¬áá
áºáá¯ááá·áºááẠááá¯á¡ááºáááºá áááá¯ááºážááá·áºáá
áºáá¯á
á®á¡ááœáẠDHCP áá¬áá¬áá»á¬ážááᯠááŸá¬ááœá±ááẠá¡áá±á¬ááºážáá¯á¶ážáá±áá¬ááẠnamespaces áá»á¬ážáááºááŸááᬠá¡áááºááœááºáá±á¬áºááŒáá²á·ááŒá®ážáá±á¬ ááááºážáá»á¯ááºááŸá¯ Node ááŒá
áºáááá·áºáááº-
ááá¯á·áá±á¬áº ááŒá¿áá¬áá±ážáá±ážáá±ážáá±á¬á· ááŸááá«áááºá á¡áá¬á¡á¬ážáá¯á¶áž ááŒááºáááºá
áááºááŒá®áž DHCP ááœáẠááááºá
á¬ááŸá¬ážáááºážááŒááºážááá¯ááºáᬠá¡áá»ááºá¡áááºá¡á¬ážáá¯á¶áž áá»á±á¬ááºááœá¬ážáá«á áááºááá¯á·ááŒá
áºáááºáááºážá á
ááºáá»á¬ážááᯠááááºá
á¬á¡áá
áºáá»á¬áž áá±ážáááºááŸá¬ áá¯áá¹ááááŸáááŒá®áž á¡ááœááºá¡áááºááŒá±áááºááá¯ááºáá±á á€áá±áá¬ááœáẠáááºážáááºážááŸá
áºááœááºááŸáááẠ- ááá¯ááááºážá¡áááºáá»á¬ážááá¯áá¯á¶ážá áááá¯ááºážááá·áºáá
áºáá¯á
á®á¡ááœáẠDNS áá¬áá¬áá
áºáá¯ááá·áºáá« ááááºá
á¬ááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠá¡áá°ážá¡áá±ážááŒá®ážáááºááá¯ááºáá« (k8s ááœááºááŸááá±á¬ ááœááºáááºá¡ááá¯ááºážááŸáá·áºáááºáá°áááº) - ááá¯á·áá±á¬áº ááŒááºáááœááºáááºáá»á¬ážááœáẠááŒá¿áá¬ááŸááá±áá±á¬ááŒá±á¬áá·áºá ááááºá
á¬áá»á¬ážááᯠDHCP ááŸáá
áºááá·áº áááºážááá¯á·ááœáẠáá¯ááºáá±ážááá¯ááºááẠ- áááºááẠcloud platform ááŸá DNS áá¬áá¬áá»á¬ážááŸáá·áº áááºáá°ááŒá¯ááẠááá¯á¡ááºáááºá áá»áœááºá¯ááºáá¡ááŒááºá¡ááá±á¬á· á¡ááœááºááŒá±á¬ááºážááœááºááŒááºááœááºáááŸááá±á¬áºáááºáž ááŒá
áºááá¯ááºáá»á±ááŸáááá·áº ááŒááºá DNS áá¬áá¬áá
áºáá¯ááŸáá·áº áááºáá°ááŒá¯ááẠááá¯á¡ááºáá«áááºá ááá¯á·ááá¯áẠáá¯áááááœá±ážáá»ááºááŸá¯ááŸá¬ áááºáá¬áá±áá¬ááᯠá¡áá¯á¶ážááŒá¯áááºááŒá
áºááẠ- ááá¯ááá¯áááºááŸá¬ á
ááºá ááááºá
á¬áá
áºáá¯áááºáá¶áááŸáááŒá®ážááŒá
áºáá«á DHCP áá¬áá¬á០á
ááºááá¯á·áá¯ááºáá±ážáááá·áºááááºá
á¬ááᯠááááŸáááá¯ááºá
á±áááºá¡ááœáẠáááºáá¬áá±áá¬ááᯠá¡áá¯á¶ážááŒá¯áááºááŒá
áºáááºá áá¯áááááœá±ážáá»ááºááŸá¯ááŸá¬ áá¬ážááŸáá·áºáááºáááºááá·áº áá±á¬ááºáááºá¡áá»ááºá¡áááºáá»á¬ážááᯠááááºážáááºážááá¯ááºá
á±áá±á¬ááŒá±á¬áá·áº ááá¯ážááŸááºážááŒá®áž ááá¯ááá¯ááŒá±á¬ááºážááœááºááŒááºááœááºááŒá
áºáááºá ááᯠáá¯á¶ááŒááºážááœáẠá¡á±ážáá»áá·áºáááºáá¬áá±áá¬ááᯠááá·áºááŒáá«á
áá¯á·á
ááœá±ážááœá±ážááá»áá¯ážáááºááá·áº áá±á¬ááºááŒá¿áá¬áá
áºáá¯ááŸá¬ ááŒááºáááœááºáááºáá»á¬ážááẠáá¯á¶ážá
áœá²áá°á¡á¬ážáá¯á¶ážá០ááŒááºáááœááºáááºáá
áºáá¯á¡á¬áž á¡áá¯á¶ážááŒá¯ááá¯ááºá
áœááºážááŸáááááºááŒá
áºáá±á¬ááŒá±á¬áá·áº ááŒááºáááœááºáááºáá»á¬ážááẠááœááºáááºáá
áºáá¯áá¯á¶ážááœáẠááá¬ážáááºááŒá
áºááááºááá¯áá«á áááºáá²áááá·áºááẠ- á€ááœááºáááºáá»á¬ážáááœá²áá±áá»áá¬ážááŸá¯ááᯠá¡áááºáááŒááºááœá²áá±ááááºážáá»á¯ááºááẠááá¯á¡ááºáá«áááºá áá¯á¶ážá
áœá²áá°áá»á¬ážá¡á¬ážáá¯á¶ážá¡ááœáẠááŒááºáááŒáá¯áááºááŒááºáááºáá¬ážáá±á¬ááœááºáááºáá
áºáá¯áááºážááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºá
áœááºážááẠá¡áá»á¬ážáá°ááŸá¬ cloud áááºáá®ážáá¬ááœáẠá¡ááœááºá¡áá¯á¶ážáááºáá«áááºá áá»áœááºá¯ááºááá¯á·ááẠááááºá
á¬áá±áá¬áá±á·á
áºááᯠááá¯ááºáááºááœá±ážááœá±ážááẠáááá¯á¡ááºáá² áá¯á¶ážá
áœá²áá°áá
áºáŠážá
á®á ááŒááºáááœááºáááºá¡ááœáẠáá®ážááŒá¬ážááááºá
á¬áá±áá¬ááᯠááœá±ážáá»ááºááẠáááá¯á¡ááºáá±á¬ááŒá±á¬áá·áº áááºážááẠá
ááºáá»á¬ážááᯠá¡áá¯á¶ážáá»ááẠááá¯ááá¯ááœááºáá°á
á±áááºááŒá
áºáááºá ááá¯á·á¡ááŒááºá áá»áœááºá¯ááºááá¯á·ááẠááŒááºáááœááºáááºáá
áºáá¯ááᯠááŒáá¯áááºá
á¬áááºážááœááºážááá¯ááºááŒá®áž á¡áá¯á¶ážááŒá¯áá»áááºááœáẠáá»áœááºá¯ááºááá¯á·ááẠááŒááºáááááºá
á¬áá»á¬ážááᯠclient á
ááºáá»á¬ážááŸáá·áºáᬠáá»áááºáááºááẠááá¯á¡ááºáááºááŒá
áºáá«áááºá
ááá¯á·á¡ááŒáẠá€áá±áá¬ááœáẠNAT ááẠáá»áœááºá¯ááºááá¯á·áá¡áá°á¡áá®ááá¯á· áá±á¬ááºááŸááá¬ááẠ- áá»áœááºá¯ááºááá¯á·ááẠáá¯á¶ážá áœá²áá°áá»á¬ážá¡ááœáẠNAT áá¬áá¬ááŒááºááᯠá¡áá¯á¶ážááŒá¯á áá°áááºážá¡áááºáá±áá¬á០ááŒááºáááá¹áá¬ááá¯á· áááºáá±á¬ááºááá¯ááºá á±áááºááŒá áºáááºá á¡ááºážá áá®ááŸá¬ ááŒá¿áá¬áá±ážáá áºáá¯ááŸááááºá áááá¯ááºážááá·áºáá¬áá¬ááẠáááá¯ááºážááá·áºáá áºáŠážá¡ááŒá Ạáá¯ááºáá±á¬ááºááŒá®áž áá¬áá¬áá²á·ááá¯á·ááá¯ááºáá² áá¯ááºáá±á¬ááºáá«áá ááá¯ááá¯áááºááŸá¬ áááºážááẠáá»áááºáááºááŸá¯áá»á¬ážááᯠáááºáá¶ááá·áºá¡á á¬áž á áááºáá¯ááºáá±á¬ááºáá«á áá±á¬ááºážáá«áááºá áá«áá±ááá·áº áá«ááá¯á·á¡ááœááºá áááŒá¬ážáááºážáááºážááŒá áºáááá·áºáááºá á€ááá á¹á ááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡ááœá¬ážá¡áá¬ááᯠáááºáá¶áá±á¬á¡áá«á á€áááºážááŒá±á¬ááºážááẠclient A á virtual machine A á¡ááœáẠáááºááœááºááŒá±á¬ááºáž áá¬ážáááºááá±á¬áá±á«ááºá á±ááẠáŠážáááºáᬠNAT ááᯠáá¯ááºáá±á¬ááºááẠááá¯á¡ááºáááºá ááá¯ááá¯áááºááŸá¬ á¥ááᬠ100.1.1.1á á¥ááᬠ10.0.0.1 .100á á¡ááœááºážááááºá ᬠ200 ááá¯á·á á€ááá á¹á ááœááºá áá¯á¶ážá áœá²áá°á¡á¬ážáá¯á¶ážááẠáá°áá®áá±á¬ááœááºáááºááᯠá¡áá¯á¶ážááŒá¯áááºááŒá áºáá±á¬áºáááºáž á¡ááœááºážááá¯ááºáž áá®ážááŒá¬ážááœá²áá¬ážááŸá¯ááᯠáá¯á¶ážáááááºážááááºážáá¬ážáááºá ááá¯ááá¯áááºááŸá¬á áá»áœááºá¯ááºááá¯á·ááẠcontrol node ááœáẠdNAT ááŸáá·áº sNAT ááŒá¯áá¯ááºáááºááá¯á¡ááºáááºá áá±áá±á«áºááááºá á¬áá»á¬áž ááá¯á·ááá¯áẠááŒááºáááœááºáááºáá»á¬ážáá«ááŸáááá·áº ááœááºáááºáá áºáá¯áááºážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááŸááááŸá ááá¯á·ááá¯áẠááŸá áºáá¯áá¯á¶ážááᯠáá áºááŒáá¯ááºááẠcloud áá²ááá¯á· áááºáá°áá±á¬ááºáá¬ááá¯ááá·áºá¡áá±á«áº áá°áááºáááºá áá»áœááºá¯ááºááá¯á·ááẠáá¯á¶ááŒááºážááœáẠáá±áá±á«áºááááºá á¬áá»á¬ážááᯠááá·áºáááºááá¯ááºáá±á¬áºáááºáž á¡á á±á¬ááá¯ááºážááœáẠááá·áºááœááºážáá¬ážááŒá®ážááŒá áºáá±á¬ ááŒááºáááœááºáááºáá»á¬ážááᯠáá»ááºáá¬ážáá²á·áá«ááẠ- áá¯á¶ážá áœá²áá°ááá¯ááºážááœáẠáááºážáááá¯ááºááá¯áẠááŒááºáááœááºáááºáá»á¬áž ááŸáááẠ(áá¯á¶ááœáẠáááºážááá¯á·ááᯠááŒááºáá¡ááºáá¬áá±á·á áºááœáẠvlan XNUMX ááŸáá·áº XNUMX á¡ááŒá ẠááœáŸááºááŒáá¬ážáááº)á
ááááºá¡áá±ááŒáá·áº áá»áœááºá¯ááºááá¯á·ááẠáá áºáá»áááºáááºážááœáẠá áááºáááºá á¬ážá áá¬áá±á¬ááºážááŒá®áž áá±á¬ááºážá áœá¬ ááœá±ážáá±á«áºááá¯ááºáá±á¬ á¡ááŒá±áá áºáá¯ááᯠáááŸááá²á·ááŒá®ážá á¡áá»áá¯á·áá±á¬ ááŒá±á¬ááºážááœááºááŒááºááœááºááŸááá±á¬áºáááºáž á¡ááŸá¬ážáá¶ááá¯ááºáááºááŸáááŸá¯ ááá¹ááá¬ážáá»á¬áž áááŸááá±ážáá«á
ááááŠážá áœá¬á áá»áœááºá¯ááºááá¯á·ááœáẠcontrol node áá áºáá¯áá¬ááŸáááẠ- áááºážááá»áá¯á·ááœááºážááŸá¯áááºá áá áºáá»á¬ážá¡á¬ážáá¯á¶ážááŒáá¯ááœá²ááœá¬ážá á±áááºá á€ááŒá¿áá¬ááá¯ááŒá±ááŸááºážáááºá á¡áááºážáá¯á¶áž node 3 áá¯á quorum áá áºáá¯ááŒá¯áá¯ááºááẠááá¯á¡ááºáááºá áá«ááᯠáá¯á¶ááŒááºážááŸá¬ ááá·áºááŒáá·áºáá¡á±á¬ááºá
áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá node á¡á¬ážáá¯á¶ážááᯠsynchronized áá¯ááºááŒá®áž active node áá
áºáá¯ááœááºááœá¬ážáá±á¬á¡áá«á á¡ááŒá¬áž node ááẠáááºážááá¬áááºáá»á¬ážááᯠááœáŸá²ááŒá±á¬ááºážáá°áááºááŒá
áºáááºá
áá±á¬ááºááŒá¿áá¬ááŸá¬ virtual machine disk áá»á¬ážááŒá áºáááºá áá±á¬áá±á¬áááºááœáẠáááºážááá¯á·ááᯠhypervisor áá»á¬ážááá¯ááºááá¯áẠááááºážáááºážáá¬ážááŒá®ážá hypervisor ááŸáá·áº ááŒá¿áá¬áá»á¬ážááŸááá«á áá»áœááºá¯ááºááá¯á·ááẠáá±áá¬á¡á¬ážáá¯á¶áž áá¯á¶ážááŸá¯á¶ážááẠ- áá»áœááºá¯ááºááá¯á·ááẠáá áºááá¯áá¬áá áá¬áá¬áá áºáá¯áá¯á¶ážáá« áá¯á¶ážááŸá¯á¶ážááœá¬ážáá«á á€áá±áá¬ááœáẠáááºáá±á¬ááºá á®ážáááºážááŒááºážááẠáá°áá®áá±ážáááºááá¯ááºáá«á ááá¯ááá¯á·áá¯ááºáá±á¬ááºáááºá ááá¯ááŸá±á¬ááºááŸá¯áá áºáá»áá¯ážáá»áá¯ážá¡ááœáẠááŸá±á·áá¯á¶ážá¡ááŒá Ạáá±á¬ááºááœááºááá·áº áááºáá±á¬ááºááŸá¯áá áºáᯠááŒá¯áá¯ááºááẠááá¯á¡ááºáá«áááºá áááºááá·áºááá¯ááŸá±á¬ááºááŸá¯áá»áá¯ážááẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠá¡áá°ážá¡áá±ážáá«áááá·áºáááºááá¯ááºáá«á ááá¯á·áá±á¬áº áááºážááẠáá»áœááºá¯ááºááá¯á·ááá±áá¬ááᯠdisk ááŸáá·áº node ááŸá áºáá¯áá¯á¶ážááŸáá·áº á¡á áá¯ážáá¡ááœá²á·áá áºáá¯áá¯á¶áž ááŒá áºááá¯ááºáá»á±á០áá¬ááœááºáá±ážááá·áºáááºá á€áá±áá¬ááœáẠááœá±ážáá»ááºá áá¬áá»á¬ážá áœá¬ááŸáááẠ- Fiber Channel ááŸáá·áº SAN ááœááºáááºáá»á¬áž ááŸááá«áááºá ááá¯á·áá±á¬áº ááá¯ážááá¯ážáá¬ážáá¬áž ááŒá±á¬ááá«ááẠ- FC ááẠá¡ááááºá á¡ááœá±á¡ááŸá áºáá áºáᯠááŒá áºáá±ááŒá® - áááºáá°ááá¯á·áá±á¬ááºáá±ážááœáẠE1 á analogue áá áºáᯠ- áá¯ááºáá²á·á áá»áœááºáá±á¬áºááá±á¬áá°áá«áááºá áááºážááᯠá¡áá¯á¶ážááŒá¯áá²ááŒá áºáááºá ááá¯á·áá±á¬áº áááŸáááẠáá¯á¶ážááááŒá áºááá¯ááºáá²á·áá±áá¬áá²áá±á ááá¯á·ááŒá±á¬áá·áºá áá»áœááºá¯ááºááẠá¡ááŒá¬ážá áááºáááºá á¬ážááœááºáᬠá¡ááŒá¬ážááœá±ážáá»ááºá áá¬áá»á¬áž ááŸááá±ááŒá±á¬ááºážááá 2020 áá¯ááŸá áºááœáẠFC ááœááºáááºááᯠáá»áœááºá¯ááºááá¹áá¡áá»á±á¬áẠááŒáá·áºáá»ááºáááºááá¯ááºáá«á áá°á·áá¬áá¬áá° áá áºáá±á¬ááºáá»ááºážá á®á¡ááœááºá á¡ááá·áºá¡áááºááœá±á¡áá¯ááºáá¯á¶ážáá²á· FC áᬠáá»áœááºáá±á¬áºááá¯á·ááá¯á¡ááºáá¬ááá¯á· áá¯á¶ááŒááºáá°ááœá± ááŸááá±á¬ááºážááŸáááá¯ááºáá«ááẠ- áá»áœááºáá±á¬áº ááŒááºážáá¯á¶áá±ááŸá¬ ááá¯ááºáá«áá°ážá áá°ááá¯ááºážááŸá¬ áá°ááá¯á·áá²á· ááá¯ááºááá¯ááºá¡ááŒááºááŸááá«áááºá áá«áá±ááá·áº áá»áœááºáá±á¬á·áºá¡ááŒááºá¡á á áááºáááºá á¬ážá áá¬á¡áá±á¬ááºážáá¯á¶ážááŒá±ááŸááºážáá»ááºááá±á¬á· Ceph ááá¯áá»áá¯áž SDS ááá¯áá¯á¶ážááá¯á·áá«áá²á
Ceph ááẠááá·áºá¡á¬áž ááŒá áºááá¯ááºáá»á±ááŸááá±á¬ á¡áááºááœá±ážáá»ááºááŸá¯áá»á¬áž á¡áá»á¬ážá¡ááŒá¬ážááŒáá·áº áá±áá¬ááá¯ááŸá±á¬ááºááŸá¯ááŒá±ááŸááºážáá»ááºááᯠáááºáá±á¬ááºááá¯ááºá á±áááºá áá°áá®ááŸá¯á á áºáá±ážááŒááºáž (5 ááá¯á·ááá¯áẠ6 á០áááºáá±á¬ááºá á®ážáááºážááŒááºážá¡áá) ááŸáá·áºá¡áá¯á¶ážáááºáá±á¬ áá¯ááºáá»á¬ážááŸáá·áºá¡áá° ááœá²ááŒá¬ážáá±á¬áá áºáá»á¬ážáá®ááá¯á· áá±áá¬á¡ááŒáá·áºá¡á á¯á¶ááᯠáááºáá°áááºáá»áŸááŒáá·áºá¡áá¯á¶ážáááºáá¬á áá áºááºáá»á¬ážááááºáá±áá¬ááᯠááá·áºááœááºážá ááºážá á¬ážááŒááºážááŒáá·áºá áá¬áá¬áá»á¬ážá áá®ááá¯áá»á¬ážááŸá áá¬áá¬áá»á¬áž á áááºááá¯á·
Ceph áááºáá±á¬ááºááẠáá±á¬ááºááẠnode 3 áᯠááá¯á¡ááºáááºá ááááºááá¯á·ááŒááºážá á¡áá¬ááá¹áá¯ááŸáá·áº ááá¯ááºááááºážáááºážááŒááºážáááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á ááœááºáááºááŸáá áºááá·áº ááá¯ááŸá±á¬ááºááŸá¯ááŸáá·áº á¡ááŒááºá¡ááŸááºáá¯á¶á·ááŒááºááŸá¯ááá¯áááºáž áá¯ááºáá±á¬ááºáááºááŒá áºáááºá schema ááœáẠááá¯ááŸá±á¬ááºááŸá¯ááᯠááá·áºááŒáá«á áá¯á·á
ááŸááºáá»ááº- áááºááẠhyperconverged compute node áá»á¬ážááá¯áááºáž ááŒá¯áá¯ááºááá¯ááºááẠ- áááºážááẠnode áá áºáá¯ááœáẠáá¯ááºáá±á¬ááºáá»ááºáá»á¬áž á¡áá»á¬ážá¡ááŒá¬ážááᯠáá±á«ááºážá ááºááŒááºážá ááá±á¬ááá¬ážááŒá áºááẠ- á¥ááá¬á storage+compute - ceph ááá¯ááŸá±á¬ááºááŸá¯á¡ááœáẠá¡áá°áž node áá»á¬ážááᯠááá±á¬áºááŒáá² ááŒá áºáááºá SDS ááẠáá»áœááºá¯ááºááá¯á·áááºááŸááºáá¬ážáá±á¬ ááŒáá¯áááºááŸá¬áá°ááŸá¯á¡ááá·áºááŒáá·áº áá±áá¬ááᯠááááºážáááºážáá¬ážáá±á¬ááŒá±á¬áá·áº áá°áá®áá±á¬á¡ááŸá¬áž-áá¶ááá¯ááºáááºááŸááá±á¬á¡á á®á¡á ááºááᯠáá»áœááºá¯ááºááá¯á·áááŸááá«áááºá ááá¯á·áá±á¬áºá hyperconverged node áá»á¬ážááẠá¡ááŒá²áááºáž á¡áá±ážá¡áá°áá áºáá¯ááŒá áºááẠ- ááá¯ááŸá±á¬ááºááŸá¯ node ááẠááááá áºáá»ááºááœááºááŒááºááááºá¡ááá¯ááºáž áá±ááá¯á¡áá°áá±ážáá¯á¶áá¬áá (áááºážááœáẠvirtual machines áá»á¬ážáááŸááá±á¬ááŒá±á¬áá·áº) - áááºážááẠSDS áááºáá±á¬ááºááŸá¯á¡ááœáẠCPU á¡áááºážá¡ááŒá áºáá»á¬ážááᯠáá¯á¶ážá áœá²ááẠ(ááááºáá±á¬á·á áááºážááẠá¡á¬ážáá¯á¶ážáá¯ááºáá±á¬ááºáááºá nodes, disks, etc.) áá»ááºááœááºááŒá®ážáá±á¬áẠáá¯á¶áá°ááœá¬ážááŒááºážááŸáá·áº ááŒááºáááºááá°ááŒááºáž ááá¯ááá¯áááºááŸá¬á áááºááẠáááºážááᯠstorage ááŸáá·áº áá±á«ááºážá ááºáá«á compute node á áá«áá«á¡áá»áá¯á· áá¯á¶ážááŸá¯á¶ážáááºááŒá áºáááºá
á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠáá áºáááºážáááºážááŒáá·áº á á®áá¶ááá·áºááœá²ááẠááá¯á¡ááºááẠ- áá»áœááºá¯ááºááá¯á·ááẠá ááºáá áºáá¯á ááœááºáááºáá áºáá¯á virtual router á áááºááá¯á·ááᯠáááºáá®ážááá¯ááºááá·áº á¡áá¬áá áºáᯠááá¯á¡ááºáá«áááºá áááºážááá¯ááŒá¯áá¯ááºáááºá¡ááœááºá áá»áœááºá¯ááºááá¯á·ááẠááá¯ááºááœááºáá áºáá¯á¡ááŒá Ạáá¯ááºáá±á¬ááºááá·áº ááááºážáá»á¯ááºááŸá¯ node ááá¯á· áááºáá±á¬ááºááŸá¯áá áºáá¯ááᯠáá±á«ááºážááá·áºáá«áááºá client ááẠhttp/ https ááŸáááá·áº ဠportal ááá¯á· áá»áááºáááºááá¯ááºááŒá®áž áá°ááá¯á¡ááºááá»áŸááᯠáá¯ááºáá±á¬ááºááá¯ááºáááá·áºááẠ(áá±á¬ááºážááŒá®á áá®ážáá«áž)á
ááááºá¡áá±ááŒáá·áºá ááᯠáá»áœááºá¯ááºááá¯á·ááœáẠá¡ááŸá¬ážáá¶ááá¯ááºáá±á¬ á áá áºáá áºáá¯ááŸááááºá á€á¡ááŒá±áá¶á¡áá±á¬ááºá¡á¡á¯á¶á á¡á áááºá¡ááá¯ááºážá¡á¬ážáá¯á¶ážááᯠáá áºáááºážáááºážááŒáá·áº á á®áá¶ááá·áºááœá²ááááºááŒá áºáááºá Openstack ááẠáááá»áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯á á®ááá¯áá±ážáá±á¬ááºááá·áº ááá±á¬áá»ááºá¡á á¯áá áºáá¯ááŒá áºááŒá±á¬ááºáž ááááºááá±á¬áºááŒáá²á·áááºá áá»áœááºá¯ááºááá¯á·ááŒááºáááá·áºá¡ááá¯ááºážá ááŒááºáááºáááºááŸááºáááºááŸáá·áº ááááºážáá»á¯ááºááẠááá¯á¡ááºáá±á¬ áá¯á¶áá±á¬ááºáá±á¬ááŒááºá ááºáá»á¬ážááẠáá»á¬ážá áœá¬ááŸááááºá áá®áá±á·áá±á¬á· Network á¡ááá¯ááºážá¡ááŒá±á¬ááºáž ááŒá±á¬ááŒáá«áááºá
áá»á°áááœááºáááá¯áá¬
OpenStack ááœááºá NATá Floating IPá DHCP á áááºááŒáá·áº áááºáá±á¬ááºááŸá¯áá»á¬ážáá±ážáá±á¬ááºááá·áº VMs áá»á¬ážááŒá¬ážááœááºááŸááá±á¬ VM áá»á¬ážááŒá¬ážáááºážááŒá±á¬ááºážáááºážááŒá±á¬ááºážááᯠáá±áá»á¬á á±ááá·áº virtual machine ports áá»á¬ážááᯠáá»áááºáááºááẠáá¬áááºááŸááá±á¬ Neutron ááŒá áºááẠá
ááŒáá·áºáá¬ážáá±á¬á¡ááá·áºááœááºá ááœááºáááºáááºáá±á¬ááºááŸá¯ (á¡ááŒá±áá¶á¡ááá¯ááºáž) ááá¯ááºáá±á¬ááºááŸá¯ááᯠá¡á±á¬ááºáá«á¡ááá¯ááºážáá±á¬áºááŒááá¯ááºáááºá
VM ááᯠá áááºáá±á¬á¡áá«á ááœááºáááºáááºáá±á¬ááºááŸá¯áááº-
- áá±ážáá¬ážááá·áº VM (ááá¯á·ááá¯áẠááááºáááºážáá»á¬áž) á¡ááœáẠááááºáááºážáá áºáá¯ááᯠáááºáá®ážááŒá®áž áááºážááŸáá·áºáááºáááºááá·áº DHCP áááºáá±á¬ááºááŸá¯ááᯠá¡ááŒá±á¬ááºážááŒá¬ážáááºá
- virtual network device á¡áá áºáá áºáá¯ááᯠáááºáá®ážáá¬ážááẠ(libvirt ááŸáááá·áº);
- VM ááẠá¡ááá·áº 1 ááœáẠáááºáá®ážáá¬ážáá±á¬ ááááºáááºáž(áá»á¬áž) ááá¯á· áá»áááºáááºáááºá
áá°ážáááºážáááºááŸá¬á Neutron áá¡áá¯ááºááẠLinux ááá¯á·áááºáá±á¬ááºáá°ážáá°ááá¯ááºážááŸáá·áºáááºážááŸá®ážááá·áºá á¶ááá°áá¬ááá¹ááá¬ážáá»á¬ážáá±á«áºááœááºá¡ááŒá±áá¶ááẠ- namespacesá iptablesá linux áá¶áá¬ážáá»á¬ážá openvswitchá conntrack á áááºááŒáá·áºá
áá»á°áááœááºááẠSDN ááááºážáá»á¯ááºáááááá¬ááá¯ááºááŒá±á¬ááºáž áá»ááºáá»ááºážááŸááºážáááºážááá·áºáááºá
áá»á°áááœááºááœáẠá¡ááŒááºá¡ááŸááºáá»áááºáááºáá¬ážáá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážá áœá¬ áá«áááºáááº-
Openstack-neutron-áá¬áᬠAPI ááŸáááá·áºá¡áá¯á¶ážááŒá¯áá°áá±á¬ááºážááá¯ááŸá¯áá»á¬ážááŸáá·áºá¡áá¯ááºáá¯ááºáá±á¬ daemon áá
áºáá¯ááŒá
áºáááºá á€áááºááá¯ážááẠáááºááá·áºááœááºáááºáá»áááºáááºááŸá¯áá»á¬ážááá¯áááᯠááŸááºáá¯á¶áááºáá¬ááœáẠááá«áááºáá±á¬áºáááºáž áááºážá¡ááœáẠááá¯á¡ááºáá±á¬á¡áá»ááºá¡áááºáá»á¬ážááᯠáááºážáááááºá¡ááºáá»á¬ážáᶠáá±ážáá±á¬ááºáᬠá¡ááá¯ááŸááá±á¬ááœááºáááºááŒááºá
ááºááᯠáá»áááºááŸááá±ážáááºá OpenStack node áá»á¬ážááŸá Neutron á¡á±ážáá»áá·áºáá»á¬ážááẠNeutron áá¬áá¬ááŒáá·áº ááŸááºáá¯á¶áááºáááºá
áá»á°áááœááºáá¬áá¬ááẠá¡ááŸááºááááºááœáẠá¡ááá¯ááºážááŸá áºááá¯ááºážáá«áááºááá·áº python ááŒáá·áº áá±ážáá¬ážáá¬ážáá±á¬ application áá áºáá¯ááŒá áºáááºá
- REST áááºáá±á¬ááºááŸá¯
- áá»á°áááœáẠááááºá¡áẠ(core/service)
REST áááºáá±á¬ááºááŸá¯ááẠá¡ááŒá¬ážáá±á¬ á¡á áááºá¡ááá¯ááºážáá»á¬ážá០API áá±á«áºááá¯ááŸá¯áá»á¬ážááᯠáááºáá¶ááẠáá®ááá¯ááºážáá¯ááºáá¬ážááŒááºážááŒá áºááẠ(á¥ááá¬á á¡áá»ááºá¡áááºá¡áá»áá¯á·ááᯠáá±ážáá±á¬ááºááẠáá±á¬ááºážááá¯áá»ááºá á áááºááŒáá·áº)
Plugins áá»á¬ážááẠAPI áá±á¬ááºážááá¯ááŸá¯áá»á¬ážá¡ááœááºáž áá±á«áºáá±á«áºáá±á¬ plug-in software á¡á áááºá¡ááá¯ááºážáá»á¬áž/ module áá»á¬ážááŒá áºááẠ- ááá¯ááá¯áááºááŸá¬á áááºáá±á¬ááºááŸá¯áá áºáá¯á ááá·áºááœááºážáááºááœáŸááºážáá»ááºááẠáááºážááá¯á·ááŸáááá·áº ááŒá áºáá±á«áºáá«áááºá ááááºá¡ááºáá»á¬ážááᯠáááºáá±á¬ááºááŸá¯ááŸáá·áº root áá°á ááŸá áºáá»áá¯ážááœá²ááŒá¬ážáá¬ážáááºá á ááºážáááºážá¡áá ááŒááºážááááºá¡ááºááẠVMs áá»á¬ážááŒá¬ážááœáẠááááºá á¬áá±áá¬ááŸáá·áº L2 áá»áááºáááºááŸá¯áá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááẠá¡ááááá¬áááºááŸáááŒá®áž áááºáá±á¬ááºááŸá¯ááááºá¡ááºáá»á¬ážááẠVPN ááá¯á·ááá¯áẠFW áá²á·ááá¯á·áá±á¬ áá±á¬ááºáááºáá¯ááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááᯠáá±ážáá±á¬ááºáá¬ážááŒá®ážááŒá áºáááºá
ááá±á·áááŸáááá¯ááºáá±á¬ ááááºá¡ááºáá»á¬ážá
á¬áááºážááᯠá¥ááá¬á¡á¬ážááŒáá·áº ááŒáá·áºááŸá¯ááá¯ááºáá«áááºá
áááºáá±á¬ááºááŸá¯ ááááºá¡ááºáá»á¬ážá áœá¬ ááŸáááá¯ááºáá±á¬áºáááºáž ááŒááºážááááºá¡ááºáá áºáá¯áᬠááŸáááá¯ááºáá«áááºá
openstack-neutron-ml2 á ᶠOpenstack root plugin ááŒá áºáááºá á€ááááºá¡ááºááœáẠáá±á¬áºáá»á°áá¬áááá¯áá¬áá áºáᯠáá«áááºááŒá®áž áááºážááŸáá·áºáá»áááºáááºáá¬ážáá±á¬ áááá¯ááºáá¬áá»á¬ážááŸáá áºááá·áº ááœááºáááºáááºáá±á¬ááºááŸá¯ááᯠá á®á ááºáááºááŸááºáá±ážáááºá áá»áœááºá¯ááºááá¯á·ááẠááááºá¡ááºááᯠá¡áááºážáááºá¡ááŒá¬ááœáẠááŒáá·áºááŸá¯ááááºááŒá áºááŒá®ážá á¡ááŸááºááŸá¬ áááºážááẠOpenStack ááœááºáááºá¡ááá¯ááºážááœáẠáá»á±á¬á·ááŒá±á¬ááºážááŸá¯ááᯠáá±ážáá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá root plugin ááᯠá¡á á¬ážááá¯ážááá¯ááºááẠ(á¥ááá¬á Contrail Networking ááẠááá¯ááá¯á·áá±á¬ á¡á á¬ážááá¯ážááŸá¯ááᯠááŒá¯áá¯ááºáááº)á
RPC áááºáá±á¬ááºááŸá¯ (rabbitmq-áá¬áá¬) â á¡ááŒá¬áž OpenStack áááºáá±á¬ááºááŸá¯áá»á¬ážááŸáá·áº á¡ááŒááºá¡ááŸáẠáááºááœááºááŸá¯ ááŸáá·áº ááœááºáááºáááºáá±á¬ááºááŸá¯ á¡á±ážáá»áá·áºáá»á¬ážááŒá¬áž á¡ááŒááºá¡ááŸáẠáááºááœááºáá±ážááá·áº áááºáá±á¬ááºááŸá¯áá áºáá¯á
ááœááºáááºá¡á±ážáá»áá·áºáá»á¬áž - ááœááºáááºáááºáá±á¬ááºááŸá¯áá»á¬ážááᯠá á®á ááºáááºááŸááºáá±ážááá·áº node áá áºáá¯á á®ááœááºááŸááá±á¬ á¡á±ážáá»áá·áºáá»á¬ážá
á¡á±ážáá»áá·áºá¡áá»áá¯ážá¡á á¬ážáá»á¬ážá áœá¬ááŸááááºá
á¡ááá á¡á±ážáá»áá·áºá L2 á¡á±ážáá»áá·áº. á€á¡á±ážáá»áá·áºáá»á¬ážááẠcontrol node áá»á¬ážá¡áá«á¡ááẠhypervisors áá áºáá¯á á®ááœáẠá¡áá¯ááºáá¯ááºááẠ(ááá¯ááááá»á áœá¬á á¡áááºážááŸá¬ážáá°áá»á¬ážá¡ááœáẠáááºááá·áºáááºáá±á¬ááºááŸá¯ááá¯áááᯠáá±ážáá±á¬ááºáá±á¬ node áá»á¬ážá¡á¬ážáá¯á¶ážááœááº) ááŸáá·áº áááºážááá¯á·áá¡ááááá¯ááºáá±á¬ááºáá»ááºááŸá¬ áá¬ááẠL2 ááœááºáááºáá áºáá¯ááá¯á· virtual machines áá»á¬ážááᯠáá»áááºáááºáááºááŸáá·áº áááºááá·áºááŒá áºáááºáá»á¬ážááŒá áºáá±á«áºááá·áºá¡áá« ááááá±ážáá»ááºáá»á¬ážáá¯ááºáá±ážááẠ( á¥ááá¬á¡á¬ážááŒáá·áº port ááᯠdisable/enable)á
áá±á¬ááºáá áºáá¯á á¡áá±ážáááŒá®ážáá²á· á¡á±ážáá»áá·áºáá áºáá¯áá«á L3 á¡á±ážáá»áá·áº. áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá á€á¡á±ážáá»áá·áºááẠááœááºááẠnode áá±á«áºááœáẠáá®ážááá·áºáá¯ááºáá±á¬ááºááẠ(áááŒá¬ááááá¯áááᯠááœááºááẠnode á¡á¬áž ááááºážáá»á¯ááºááŸá¯ node áá áºáá¯ááŸáá·áº áá±á«ááºážá ááºáá¬ážáááº) ááŸáá·áº á¡áááºááŸá¬ážááœááºáááºáá»á¬ážááŒá¬ážáááºážááŒá±á¬ááºážááᯠáá¶á·ááá¯ážáá±ážááẠ(áááºážáááœááºáááºáá»á¬ážááŸáá·áº á¡ááŒá¬ážá¡áááºááŸá¬ážáá»á¬ážá ááœááºáááºáá»á¬ážááŒá¬ážááœáẠááŸá áºáá¯á áá¯á¶ážááẠááŒááºáááá¹áá¬ááá¯á· áááºáá±á¬ááºááá¯ááºáááºá áá¶á·ááá¯ážáá±ážáááºá NAT á¡ááŒáẠDHCP áááºáá±á¬ááºááŸá¯)á ááá¯á·áá±á¬áºá DVR (ááŒáá·áºáá±áá¬ážáá±á¬áá±á¬ááºáá¬) ááá¯á¡áá¯á¶ážááŒá¯ááá·áºá¡áá« L3 ááááºá¡ááºáá áºáá¯ááá¯á¡ááºááŸá¯ááẠcompute node áá»á¬ážááœááºáááºážáá±á«áºáá¬áááºá
L3 á¡á±ážáá»áá·áºááẠá¡áááºááŸá¬ážáá áºáŠážá á®á¡á¬áž áááºážáááá¯ááºááá¯áẠáá®ážááŒá¬ážááœááºáááºáá»á¬ážá¡á á¯á¶ááŸáá·áº Layer 2 ááœááºáááºáá»á¬ážá¡ááœáẠááááºáá±ážáááºáá±á¬ááºááŸá¯áá»á¬ážááᯠáá±ážáá±á¬ááºááá·áº virtual router áá»á¬ážá áá¯ááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááᯠáá±ážáá±á¬ááºááẠLXNUMX á¡á±ážáá»áá·áºááẠLinux namespaces ááᯠá¡áá¯á¶ážááŒá¯áááºá
áá±áá¬áá±á·á - ááœááºáááºáá»á¬ážá subnetsá portsá pool á áááºááá¯á·á identifiers áá±áá¬áá±á·á áºá
á¡ááŸááºááŸá¬á Neutron ááẠáááºááá·áº network entities áá»á¬ážáááºáá®ážááŒááºážá០API áá±á¬ááºážáá¶áá»ááºáá»á¬ážááᯠáááºáá¶áááºá áá±á¬ááºážááá¯áá»ááºááᯠá á áºááŸááºááŒá±á¬ááºážáááºáá±ááŒááŒá®áž RPC (áááºážááẠá¡áá»áá¯á·áá±á¬ plugin ááá¯á·ááá¯áẠagent ááá¯áááºáá±á¬ááºáá«á) ááá¯á·ááá¯áẠREST API (áááºážááẠSDN ááœááºáááºááœááºáá«á) á¡á±ážáá»áá·áºáá»á¬áž ( plugins áá»á¬ážááŸáááá·áº) ááá¯á·áá±ážááá¯á·áá«áááºá áá±á¬ááºážááá¯áá¬ážáá±á¬ áááºáá±á¬ááºááŸá¯ááᯠá á¯á ááºážááẠááá¯á¡ááºáá±á¬ ááœáŸááºááŒá¬ážáá»ááºáá»á¬ážá
ááᯠá ááºážáááºáááºáááºááŒááºážááá¯á· ááŸáá·áºááŒáá·áºáá¡á±á¬áẠ(áááºážááᯠáááºááá¯á·á¡áá¯á¶ážááŒá¯áá¯á¶ááŸáá·áº áááºážááœááºáá«áááºáááºáá»á¬ážááᯠáá±á¬ááºá០áááºááœá±á·ááŒááºááá«áááº) ááŸáá·áº á¡á áááºá¡ááá¯ááºážáá áºáá¯á á®ááááºáá±áá¬ááᯠááŒáá·áºááŸá¯áá«-
(overcloud) [stack@undercloud ~]$ openstack network agent list
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
| ID | Agent Type | Host | Availability Zone | Alive | State | Binary |
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
| 10495de9-ba4b-41fe-b30a-b90ec3f8728b | Open vSwitch agent | overcloud-novacompute-1.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| 1515ad4a-5972-46c3-af5f-e5446dff7ac7 | L3 agent | overcloud-controller-0.localdomain | nova | :-) | UP | neutron-l3-agent |
| 322e62ca-1e5a-479e-9a96-4f26d09abdd7 | DHCP agent | overcloud-controller-0.localdomain | nova | :-) | UP | neutron-dhcp-agent |
| 9c1de2f9-bac5-400e-998d-4360f04fc533 | Open vSwitch agent | overcloud-novacompute-0.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| d99c5657-851e-4d3c-bef6-f1e3bb1acfb0 | Open vSwitch agent | overcloud-controller-0.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| ff85fae6-5543-45fb-a301-19c57b62d836 | Metadata agent | overcloud-controller-0.localdomain | None | :-) | UP | neutron-metadata-agent |
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
(overcloud) [stack@undercloud ~]$
ááááºáá±á¬á· áá«áᬠáá»á°áááœááºáá²á· áááºáá±á¬ááºáá¯á¶ áá
áºáá¯áá¯á¶ážáá«áá²á ááᯠML2 ááááºá¡ááºá¡ááœáẠá¡áá»áááºá¡áááºážááẠáá¯á¶ážá
áœá²ááá»áá¯ážáááºáá«ááŒá®á
Modular Layer 2
á¡áááºááœááºáá±á¬áºááŒáá²á·ááá·áºá¡ááá¯ááºážá ááááºá¡ááºááẠá ᶠOpenStack root ááááºá¡ááºáá áºáá¯ááŒá áºááŒá®áž áá±á¬áºáá»á°áá¬áááá¯áá¬áá áºáá¯ááŸááááºá
ML2 ááááºá¡ááºáááŸá±á·áááºáá°ááœáẠáááºáááºááŸá¯áá áºáá¯ááœáẠáááºážááá¬áá»á¬ážá áœá¬ááᯠáá±á¬ááŸá±á¬á¡áá¯á¶ážááŒá¯ááŒááºážááᯠááœáá·áºáááŒá¯áá±á¬ monolithic áááºáá±á¬ááºááŸá¯áá áºáá¯ááŸááááºá á¥ááá¬á¡á¬ážááŒáá·áºá áááºááẠopenvswitch ááŸáá·áº linuxbridge ááŸá áºáá¯áá¯á¶ážááᯠáá áºááŒáá¯ááºáááºáááºážááœáẠá¡áá¯á¶ážááŒá¯ááá¯ááºááẠ- ááá ááá¯á·ááá¯áẠáá¯áááááŒá áºáááºá á€á¡ááŒá±á¬ááºážááŒá±á¬áá·áºá áááºážááááá¯áá¬áááºáá¬ááŒáá·áº ML2 ááááºá¡ááºááᯠáááºáá®ážáá²á·áááºá
ML2 ááœáẠá¡á áááºá¡ááá¯ááºáž ááŸá áºáᯠáá«ááŸáááẠ- áá¬ááºáá±á¬ááºáž á¡áá»áá¯ážá¡á á¬áž ááŸá áºáá»áá¯áž- Type drivers ááŸáá·áº Mechanism drivers á
áá¬ááºáá±á¬ááºážááá¯ááá¯ááºáá«á á¥ááᬠVxLANá VLANá GRE ááœááºáááºáá»áááºáááºááŸá¯áá»á¬ážááᯠá á¯á ááºážááẠá¡áá¯á¶ážááŒá¯ááá·áº áááºážááá¬áá»á¬ážááᯠáá¯á¶ážááŒááºáá«á áá áºáá»áááºáááºážááŸá¬áááºá áá¬ááºáá±á¬ááºážááẠááá°áá®áá±á¬áááºážááá¬áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážáááºá á á¶áááºážááá¬ááẠáááºááá·áºááœááºáááºáá»á¬ážááŸáá·áº vlan ááŒááºáááœááºáááºáá»á¬ážá¡ááœáẠVxLAN áááºááºáá±á«ááºážáá»á¬ážááŒá áºáááºá
Type drivers áá»á¬ážááœáẠá¡á±á¬ááºáá« network á¡áá»áá¯ážá¡á á¬ážáá»á¬áž áá«áááºáááº-
ááŒá¬ážáá±á¬ - tagging ááá«áá²ááœááºáááº
VLAN áá»á¬áž - tagged ááœááºáááº
áá±áááá¯ááºáᬠâ All-in-one áááºáááºááŸá¯áá»á¬ážá¡ááœáẠá¡áá°ážááœááºáááºá¡áá»áá¯ážá¡á
á¬áž (ááá¯áá²á·ááá¯á·áá±á¬ áááºáááºááŸá¯áá»á¬ážááẠdeveloper áá»á¬ážá¡ááœáẠááá¯á·ááá¯áẠáá±á·áá»áá·áºááŸá¯á¡ááœáẠááá¯á¡ááºáááº)
GRE - GRE á¥áááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áááºááá·áºááœááºáááº
VxLAN - VxLAN á¥áááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á áááºááá·áºááœááºáááº
ááá¹ááá¬ážáá¬ááºáá±á¬ááºážáá»á¬áž á¡áá»áá¯ážá¡á á¬áž driver ááœááºáá±á¬áºááŒáá¬ážáá±á¬áááºážááá¬áá»á¬ážáá¡ááœá²á·á¡á ááºážááá¯áá±áá»á¬á á±áááºáááááá¬áá»á¬ážááá¯áááºááŸááºáá« - á¥ááá¬á openvswitchá sr-iová opendaylightá OVN á áááºááŒáá·áºá
á€áááá¯ááºáá¬ááᯠá¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯á¡áá±á«áº áá°áááºá Neutron á០ááááºážáá»á¯ááºáá¬ážáá±á¬ á¡á±ážáá»áá·áºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááẠááá¯á·ááá¯áẠááŒááºá SDN ááááºážáá»á¯ááºáááááá¬ááŸáá·áº áá»áááºáááºááŸá¯áá»á¬ážááᯠL2 ááœááºáááºáá»á¬áž á á¯á ááºážááŒááºážá áááºážááŒá±á¬ááºážáááºááŸááºááŒááºáž á áááºááŒáá·áº áááºááá¯ááºááá·áº ááŒá¿áá¬á¡á¬ážáá¯á¶ážááᯠááá¯á áá¯ááºáá±ážááá·áº ááŒááºá SDN ááááºážáá»á¯ááºáááááá¬ááᯠá¡áá¯á¶ážááŒá¯áááºááŒá áºáááºá
á¥ááá¬- áá»áœááºá¯ááºááá¯á·ááẠML2 ááᯠOVS ááŸáá·áº ááœá²áá¯á¶ážáá«áá ááá¯á·áá±á¬áẠOVS ááᯠá á®áá¶ááá·áºááœá²áá±á¬ ááœááºááŒá°áá¬áá¯á¶áá áºáá¯á á®ááœáẠL2 á¡á±ážáá»áá·áºááᯠááá·áºááœááºážáá¬ážáááºá ááá¯á·áá±á¬áºá á¥ááá¬á OVN ááá¯á·ááá¯áẠOpenDayLight ááᯠáá»áœááºá¯ááºááá¯á·á¡áá¯á¶ážááŒá¯áá«áá OVS áááááºážáá»á¯ááºááŸá¯ááẠáááºážááá¯á·áááá¬ážá á®áááºááá¯ááºááœáá·áºá¡á±á¬ááºááœáẠááŸááá¬ááẠ- Neutron ááẠroot plugin ááŸáááá·áº controller ááá¯á¡áááá·áºáá±ážáááºá áááºážáááºááŒá±á¬áá¬ážááá·áºá¡ááá¯ááºážáá¯ááºáá±á¬ááºáá±ááŒá®ááŒá áºáááºá
Open vSwitch ááᯠááŒá®ážááŒáá·áºáá¡á±á¬ááº
áá±á¬áá±á¬áááºááœáẠOpenStack áá¡áááá¡á
áááºá¡ááá¯ááºážáá
áºáá¯ááẠOpen vSwitch ááŒá
áºáááºá
Juniper Contrail ááá¯á·ááá¯áẠNokia Nuage áá²á·ááá¯á·áá±á¬ á¡ááá¯áá±á¬ááºážáá»áá° SDN ááá«áá² OpenStack ááᯠááá·áºááœááºážááá·áºá¡áá« OVS ááẠcloud ááœááºáááºá á¡ááá ááœááºáááºá¡á
áááºá¡ááá¯ááºážááŒá
áºááŒá®áž iptablesá conntracká namespaces ááá¯á·ááŸáá·áº á¡áá° ááŒáá·áºá
á¯á¶áá±á¬ááºážááœááºáá±á¬ ááŸá¬ážáááºážáá±ááá¯ááºááŸá¯ áááºááá·áºááœááºáááºáá»á¬ážááᯠá
á¯á
ááºážááá¯ááºá
á±áááºááŒá
áºáááºá á¥ááá¬á¡á¬ážááŒáá·áºá ááŒááºááá¯áá¹ááá® (áá±á¬ááºážáá»áá°) SDN ááŒá±ááŸááºážáá»ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á á€á¡á
áááºá¡ááá¯ááºážááᯠá¡á
á¬ážááá¯ážááá¯ááºáááºá
OVS ááẠvirtualized áááºáááºážáá»ááºáá»á¬ážááœáẠá¡áá¯á¶ážááŒá¯áááºá¡ááœáẠáá®ááá¯ááºážáá¯ááºáá¬ážááá·áº open source software switch áá áºáá¯ááŒá áºáááºá
áá±á¬áá±á¬áááºááœááºá OVS ááœáẠQoSá LACPá VLANá VxLANá GENEVEá OpenFlowá DPDK á áááºááŒáá·áº áááºážááá¬áá»á¬ážáá«áááºááá·áº á¡ááœááºáá»á±á¬ááºáááºáá±á¬ áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááŸááá«áááºá
ááŸááºáá»ááº- OVS ááẠááœááºá áœá¬ loaded áááºáá®ááœááºážáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá¡ááœáẠSoft switch á¡ááŒá Ạááá°ááá² WEB áá¬áᬠááá¯á·ááá¯áẠáá±ážááºáá¬áá¬áá²á·ááá¯á·áá±á¬ ááŸáá¯ááºážááŸá¯ááºážáááºážáá±á¬ á¡áá¯ááºáá®áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážá¡ááœáẠááá¯ááá¯áá®ááá¯ááºážáá¯ááºáá¬ážáááºá ááá¯á·áá±á¬áºá OVS ááẠááá¯ááá¯ááœá¶á·ááŒáá¯ážáá¬áá±ááŒá®áž OVS á áááºááŸáá¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯áá»á¬ážááẠáááºážáá áœááºážáá±á¬ááºáááºááŸáá·áº á áœááºážáá±á¬ááºáááºáá»á¬ážááᯠá¡ááœááºááŒáŸáá·áºáááºáá¬ážáá±á¬ááŒá±á¬áá·áº áááºážá¡á¬áž áááºáá®ááœááºážá¡á±á¬áºááá±áá¬áá»á¬ážá០ááŒáá·áºáá¬ážáá±á¬áá¯ááºáá±á¬ááºááŸá¯áá»á¬ážááŒáá·áº á¡áá¯á¶ážááŒá¯ááœáá·áºáá±ážáááºá á¥ááá¬á DPDK á¡ááŸáááºááŒáŸáá·áºááŸá¯á¡ááœáẠáá¶á·ááá¯ážááŸá¯ááŒáá·áº OVS á¡áá±á¬ááºá¡áááºáá±á¬áºááŸá¯áá áºáá¯ááŸááááºá
OVS á á¡áá±ážááŒá®ážáá±á¬ á¡á áááºá¡ááá¯ááºáž (á) áá¯ááœáẠáááºááááá¬ážááẠááá¯á¡ááºáááº-
- Kernel module - ááááºážáá»á¯ááºááŸá¯ááŒááºá ááºááŸáááŸááá±á¬á ááºážáá»ááºážáá»á¬ážáá±á«áºááœááºá¡ááŒá±áá¶á traffic ááá¯áá¯ááºáá±á¬ááºáá±á¬ kernel space ááœááºááŸááá±á¬á¡á áááºá¡ááá¯ááºážáá áºáá¯á
- áá»á áºáá° daemon (ovs-vswitchd) ááẠkernel module ááᯠáááá¯ááááºáá±ážáá¬ážááŒááºážá¡ááœáẠáá¬áááºááŸááá±á¬ á¡áá¯á¶ážááŒá¯áá°á¡á¬áá¬áááœáẠá áááºáá¯ááºáá±á¬ááºááá·áº áá¯ááºáááºážá ááºáá áºáá¯ááŒá áºááẠ- ááá¯ááá¯áááºááŸá¬ áááºážááẠswitch ááá¯ááºáá±á¬ááºááŸá¯ááá¯áá¹ááááᯠááá¯ááºááá¯ááºááá¯ááºá á¬ážááŒá¯áááºá
- áá±áá¬áá±á·á áºáá¬áᬠ- ááœá²á·á ááºážááŸá¯áá¯á¶á á¶ááᯠááááºážáááºážáá¬ážááá·áº OVS áááºáááºááá·áº host áá áºáá¯á á®ááœáẠáááºááŸááá±á¬ áá±áááœááºážáá±áá¬áá±á·á áºá SDN ááááºážáá»á¯ááºáááááá¬áá»á¬ážááẠOVSDB áááá¯ááá¯áá±á¬ááᯠá¡áá¯á¶ážááŒá¯á ဠmodule ááŸáááá·áº áááºááœááºááá¯ááºáááºá
á€á¡áá¬á¡á¬ážáá¯á¶ážááᯠovs-vsctlá ovs-appctlá ovs-ofctl á áááºááá¯á·áá²á·ááá¯á· áá±á¬áá«ááŸá¬ááœá±áá±ážááŸáá·áº á á®áá¶ááá·áºááœá²áá±ážááá¯ááºáᬠáááááá¬á¡á á¯á¶ááŒáá·áº ááá¯ááºáá«ááœá¬ážáá«áááºá
áááºááŸáááœááºá Openstack ááẠEPCá SBCá HLR áá²á·ááá¯á·áá±á¬ ááœááºáááºáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáááºážááá¯á·ááŒá±á¬ááºážááœáŸá±á·áááºá¡ááœáẠáááºáá®ááœááºážá¡á±á¬áºááá±áá¬áá»á¬ážá០ááœááºáá»ááºá áœá¬á¡áá¯á¶ážááŒá¯áá¬ážáá«áááºá á¡áá»áá¯á·áá±á¬áá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááẠááááºá¡ááá¯ááºáž OVS ááœáẠááŒá¿áá¬áááŸááá² áá±ááá¯ááºááá¯ááºáá±á¬áºáááºáž á¥ááá¬á¡á¬ážááŒáá·áºá EPC ááẠá á¬áááºážááœááºážáá°á¡ááœá¬ážá¡áá¬ááᯠáá¯ááºáá±á¬ááºáá±ážááẠ- ááá¯á·áá±á¬áẠáááºážááẠááŒááºáááºážááœá¬ážáá«áááºá ááŒá®ážáá¬ážáá±á¬á¡ááœá¬ážá¡áá¬ááá¬á (ááᯠáá¬ááºááŒá±á¬á¡ááœá¬ážá¡áá¬ááá¬áááẠáá áºá áá¹ááá·áºáá»áŸáẠáá áºáá«áá áºáá¬ááááºážá¡áá áá±á¬ááºááŸááááº)á áá¯á¶ááŸááºá¡á¬ážááŒáá·áºá kernel space ááŸáááá·áº ááá¯ááá¯á·áá±á¬áááºážááŒá±á¬ááºážááᯠáá±á¬ááºážááŸááºááŒááºáž ( forwarder ááẠáá°ááá¯á¶á á¶á¡ááá¯ááºáž áááºááŸááá±áá±á¬ááŒá±á¬áá·áº) ááẠá¡áá±á¬ááºážáá¯á¶ážá áááºáá°ážááá¯ááºáá«á ááá¯á·ááŒá±á¬áá·áºá OVS ááẠkernel ááá¯ááŒááºá NIC ááŸá¡ááœá¬ážá¡áá¬áá»á¬ážááá¯áá±ážááá¯á·ááẠDPDK á¡ááŸáááºááŒáŸáá·áºáááºážááá¬ááá¯á¡áá¯á¶ážááŒá¯ááŒá®ážá¡áá¯á¶ážááŒá¯áá°á¡á¬áá¬áááœááºáá¯á¶ážáá¡áá¯á¶ážááŒá¯áá±á·ááŸááááºá
ááŸááºáá»ááºá SR-IOV ááŸáá·áº Passthrough ááá¹ááá¬ážáá»á¬ážááᯠá€áááºááœááºáá»ááºá¡ááœáẠá¡áá¯á¶ážááŒá¯áá«áááºá
áááºážááẠáááá·áºá¡ááŒááºá¡áááºááœáẠáááºááá¯á·á¡áá¯ááºáá¯ááºááááºážá
áá² á¡áá¯áááºááœá±á·á¡ááá¯ááºážááᯠáááºááŒá®áž áááºááœá±á·ááŸá¬ áááºááá¯á¡áá¯ááºáá¯ááºáá² ááŒáá·áºáá¡á±á¬ááºá
áŠážá áœá¬á ááá¯ážááŸááºážáá±á¬ Openstack áááºáááºááŸá¯áá áºáá¯ááᯠá¡áá¯á¶ážáá»ááá¯ááºááŒáá«á áá¯á·á áá»áœááºá¯ááºááœáẠá ááºážáááºááŸá¯áá»á¬ážá¡ááœáẠáá¬áá¬á¡á á¯á¶áááŸááá±á¬ááŒá±á¬áá·áºá áá»áœááºá¯ááºááá¯á·ááẠvirtual machine áá»á¬ážá០áá¯ááºááá¯ááºážááá¯ááºáá¬áá¬áá¬áá áºáá¯ááœáẠááŸá±á·ááŒá±ážáá¯á¶á á¶ááᯠá á¯á ááºážáá«áááºá áá¯ááºáá²á·á ááá¬áá¡ááá¯ááºážá ááá¯ááá¯á·áá±á¬ááŒá±ááŸááºážáá»ááºááẠá á®ážááœá¬ážááŒá áºáááºááœááºáá»ááºáá»á¬ážá¡ááœáẠáááá·áºáá»á±á¬áºáá±á¬áºáááºáž Openstack ááœáẠááœááºáááºá¡áá¯ááºáá¯ááºáá¯á¶á¥ááá¬ááá¯ááŒáá·áºáááºá ááá¯ááá¯á·áá±á¬áááºáááºááŸá¯ááẠáá»ááºá áá¡ááœááºáá¯á¶áá±á¬ááºáá«áááºá ááá¯á·á¡ááŒááºá ááá¯ááá¯á·áá±á¬áááºáááºááŒááºážááẠáá±á·áá»áá·áºáá±áž áááºááœááºáá»ááºá¡ááœáẠááá¯áááẠá áááºáááºá á¬ážá áá¬áá±á¬ááºážááẠ- áááºá¡ááœá¬ážá¡áᬠá áááºááá¯á·ááᯠáááºážá á¬ážááá¯ááºáá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá
á¡ááŒá±áá¶á¡ááá¯ááºážááᯠááŒáá·áºáááºáᬠááá¯á¡ááºáá±á¬ááŒá±á¬áá·áº ááœááºáááºáá»á¬ážá áœá¬ááᯠáá»áœááºá¯ááºááá¯á· á¡áá¯á¶ážáááŒá¯ááá¯ááºáá±á¬áºáááºáž ááœááºáááºááŸá áºáá¯ááá¯áᬠá¡áá¯á¶ážááŒá¯ááŒá®áž á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒáŸáá·áºáááºáá±ážáᬠá€á¡ááŒááºá¡áááºááŸá áá¯áááááœááºáááºááᯠundercloud ááŸáá·áº DNS áá¬áá¬ááá¯á· áááºáá±á¬ááºáááºá¡ááœáẠáá®ážááá·áºá¡áá¯á¶ážááŒá¯áááºááŒá áºáááºá áá»áœááºá¯ááºááá¯á·ááẠááŒááºáááœááºáááºáá»á¬ážááᯠááá¯áá ááááá±á¬á·áá« - á€áááºááŸá¬ áá®ážááŒá¬ážááŒá®ážáá¬ážáá±á¬ áá±á¬ááºážáá«ážá¡ááœáẠáá±á«ááºážá ááºáá áºáá¯ááŒá áºáááºá
áá«ááᯠá ááá¯ááºáá¡á±á¬ááºá ááááá¯á¶áž áá®á¡áá¯áá®áááºážáááºážá TripleO (Openstack on Openstack) ááᯠá¡áá¯á¶ážááŒá¯á Openstack ááᯠinstall áá¯ááºáá«áááºá TripleO á á¡ááŸá áºáá¬áááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠundercloud áá¯áá±á«áºáá±á¬ Openstack all-in-one (ááá¯ááá¯áááºááŸá¬ node áá áºáá¯ááœááº) ááᯠinstall áá¯ááºááŒá®ážáá±á¬áẠovercloud áá¯áá±á«áºáá±á¬ áá¯ááºáá±á¬ááºáá»ááºá¡ááœáẠáááºááœááºáá¬ážáá±á¬ Openstack ááá¯ááá·áºááœááºážáááºá¡ááœáẠá¡áá¯á¶ážááŒá¯áááºá¡ááœáẠdeployed Openstack áá áœááºážáááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááŒá áºáááºá Undercloud ááẠááœááºáá»ááºááŸá¯á ááááºážáá»á¯ááºááŸá¯á ááá¯ááŸá±á¬ááºááŸá¯ áá¯á¶ááŸááºáá»á¬ážá á¡áááºážááá¹ááá»á¬ážááᯠáá¯ááºáá±á¬ááºáá±ážááá·áº hypervisors áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáááºá¡ááœáẠáá¯ááºááá¯ááºážááá¯ááºáá¬áá¬áá¬áá»á¬áž (ááá¹áá¯á¡ááœááº) - Ironic ááá±á¬áá»ááºááᯠá á®áá¶ááá·áºááœá²ááẠáááºážáááœá±ážáá¬áá«á áœááºážáááºááᯠá¡áá¯á¶ážááŒá¯áááºááŒá áºáááºá ááá¯ááá¯áááºááŸá¬á áá»áœááºá¯ááºááá¯á·ááẠOpenstack ááá¯á¡áá¯á¶ážááŒá¯áááºáááºááá·áºááŒááºáááŸáááááá¬áá»á¬ážááá¯á¡áá¯á¶ážáááŒá¯áá« - áá»áœááºá¯ááºááá¯á·ááẠOpenstack ááá¯á¡áá¯á¶ážááŒá¯á Openstack ááá¯á¡áá¯á¶ážááŒá¯áááºá áááºáááºááŸá¯ ááá¯ážáááºáá¬áááºááŸáá·áºá¡áá»áŸ áááºážááẠááá¯ááá¯ááŸááºážáááºážáá¬áááºááŒá áºáᬠáá»áœááºá¯ááºááá¯á·ááẠááá¯áá±áá¬ááœáẠáááºááá±áá² ááŸá±á·ááá¯á· áááºááœá¬ážáá«áááºá
ááŸááºáá»ááº- á€áá±á¬ááºážáá«ážááœááºá ááá¯ážááŸááºážááŸá¯á¡ááœááºá á¡ááœááºážááá¯ááºáž Openstack ááœááºáááºáá»á¬ážá¡ááœáẠááœááºáááºá¡áá®ážáá»ááºááŸá¯ááᯠáá»áœááºá¯ááºá¡áá¯á¶ážáááŒá¯áá²á·áá² á¡áá¬á¡á¬ážáá¯á¶ážááẠááœááºáááºáá áºáá¯áááºážááá¯áᬠá¡áá¯á¶ážááŒá¯áá¬ážáááºá ááá¯á·áá±á¬áºá ááœááºáááºá¡áá®ážáá»ááºááŸá¯ááŸááá±ááŒááºáž ááá¯á·ááá¯áẠáááŸáááŒááºážááá¯á·ááẠááŒá±ááŸááºážáá»ááºáá¡ááŒá±áá¶áá¯ááºáá±á¬ááºááá¯ááºá áœááºážááá¯áááááá¯ááºá á±áá« - á¡áá¬á¡á¬ážáá¯á¶ážááẠáá®ážááŒá¬ážááœá²áá¯ááºááŒááºážááá¯á¡áá¯á¶ážááŒá¯ááá·áºá¡áá«áá²á·ááá¯á·áá°áá®á áœá¬á¡áá¯ááºáá¯ááºáááºááŒá áºááŒá®ážá á¡ááœá¬ážá¡áá¬áá»á¬ážáááºáá°áá®áá±á¬ááœááºáááºáá±á«áºááœááºá á®ážáááºážáááºááŒá áºáááºá á á®ážááœá¬ážááŒá áºááá·áºááœááºážááŸá¯áá áºáá¯á¡ááœááºá ááá°áá®áá±á¬ vlans ááŸáá·áº interfaces áá»á¬ážááá¯á¡áá¯á¶ážááŒá¯á áá®ážááŒá¬ážááœá²áá¯ááºááŒááºážááᯠááá¬ááá»áá»á¡áá¯á¶ážááŒá¯ááẠááá¯á¡ááºáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áºá ceph storage management traffic ááŸáá·áº data traffic ááá¯ááºááá¯áẠ(disks áá»á¬ážááá¯á· á ááºáááºáá±á¬ááºááœáá·áº á áááº) ááᯠáá®ážááŒá¬ážááœá²áá¬ážááá·áºá¡áá« ááá°áá®áá±á¬ subnets (Storage management and Storage) ááᯠá¡áá¯á¶ážááŒá¯ááŒá®áž á¥ááá¬á¡á¬ážááŒáá·áº ဠtraffic ááᯠááá¯ááºážááŒá¬ážááŒááºážááŒáá·áº ááŒá±ááŸááºážáá»ááºááᯠááá¯ááá¯á¡ááŸá¬ážá¡ááœááºážáá¶ááá¯ááºá á±ááẠááœáá·áºááŒá¯áá±ážáá«áááºá ááá°áá®áá±á¬ ááááºáááºážáá»á¬ážáá áºáá»áŸá±á¬ááºá ááá¯á·ááá¯áẠááá°áá®áá±á¬ á¡ááœá¬ážá¡áá¬á¡ááœáẠááá°áá®áá±á¬ QoS áááá¯ááá¯ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒááºážááŒáá·áº áá±áá¬á¡ááœá¬ážá¡áá¬ááẠá¡áá»ááºááŒáááºážááŒá±á¬ááºážááᯠááŸá áºáá¯ááºááŒááºážáááŒá¯á á±áááºá áá»áœááºá¯ááºááá¯á·áá¡ááŒá±á¡áá±ááœááºá áááºážááá¯á·ááẠáá°áá®áá±á¬ááœááºáááºáá áºáá¯áá±á«áºááœáẠáááºáááºáááºááŒá áºááŒá®áž á¡ááŸááºááááºááœáẠáááºážááẠáá»áœááºá¯ááºááá¯á·á¡á¬áž áááºááá·áºáááºážááŸáá·áºáá»áŸ ááá·áºáááºááá¬ážáá±á
ááŸááºáá»ááº- áá»áœááºá¯ááºááá¯á·ááẠvirtual machines áá»á¬ážááá¯á¡ááŒá±áá¶á virtual environment ááœáẠvirtual machines áá»á¬ážááᯠrun ááœá¬ážáááºááŒá áºáá±á¬ááŒá±á¬áá·áºá nested virtualization ááᯠáŠážá áœá¬ááœáá·áºáááºááá¯á¡ááºáá«áááºá
nested virtualization ááᯠááœáá·áºáá¬ážááŒááºáž ááŸáá áááŸá á€áá²á·ááá¯á· á á áºáá±ážááá¯ááºáááº-
[root@hp-gen9 bormoglotx]# cat /sys/module/kvm_intel/parameters/nested N [root@hp-gen9 bormoglotx]#
á¡áá¹ááᬠN ááá¯ááœá±á·áá«áá á¥ááá¬á á¥ááá¬á ááœááºáááºáá±á«áºááœáẠáááºááœá±á·ááŸáááá·áº áááºááá·áºáááºážááœáŸááºáá»ááºááŸáá·áºá¡áá® nested virtualization á¡ááœáẠá¡áá±á¬ááºá¡áá¶á·ááᯠáá»áœááºá¯ááºááá¯á· ááœáá·áºáá±ážáááº
ááá¯áá²á·ááá¯á·áá±á¬ .
áá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºáá±á¬áºááŒáá« áá¬ážáá áºááᯠvirtual machines áá»á¬ážá០á á¯á ááºážááẠááá¯á¡ááºáá«áááºá
áá«á·ááá
á¹á
ááœááºá á¡áá¬áááºáááºáááºááŸá¯ááá
áºá
áááºáá
áºááá¯ááºážááŒá
áºáá±á¬ virtual machines áá»á¬ážááá¯áá»áááºáááºááẠ(áááºážááá¯á·áá²á០7 áá¯ááá¯áá«ááá²á·áááºá ááá¯á·áá±á¬áºááá·áºááœááºá¡áááºážá¡ááŒá
áºáá»á¬ážá
áœá¬áááŸááá«á 4 ááŸáá·áºáááºáááá¯ááºáááº) OpenvSwitch ááá¯á¡áá¯á¶ážááŒá¯áá²á·áááºá áá»áœááºá¯ááºááẠovs áá¶áá¬ážáá
áºáá¯ááᯠáááºáá®ážááŒá®áž port-groups ááŸáá
áºááá·áº áááºážááŸáá·áº virtual machine áá»á¬ážááᯠáá»áááºáááºáá¬ážáááºá áá®ááá¯áá¯ááºááá¯á·á áá®ááá¯áá»áá¯áž xml ááá¯ááºáá
áºáá¯ááᯠáááºáá®ážáá²á·áááº-
[root@hp-gen9 ~]# virsh net-dumpxml ovs-network-1
<network>
<name>ovs-network-1</name>
<uuid>7a2e7de7-fc16-4e00-b1ed-4d190133af67</uuid>
<forward mode='bridge'/>
<bridge name='ovs-br1'/>
<virtualport type='openvswitch'/>
<portgroup name='trunk-1'>
<vlan trunk='yes'>
<tag id='100'/>
<tag id='101'/>
<tag id='102'/>
</vlan>
</portgroup>
<portgroup name='access-100'>
<vlan>
<tag id='100'/>
</vlan>
</portgroup>
<portgroup name='access-101'>
<vlan>
<tag id='101'/>
</vlan>
</portgroup>
</network>
á€áá±áá¬ááœáẠááááºáááºážá¡á¯ááºá á¯áá¯á¶ážá á¯ááᯠááŒá±áá¬áá¬ážááẠ- áááºááœáá·áºááŸá áºáá¯ááŸáá·áº áááºá ááºáá áºáᯠ(áá±á¬ááºááá¯ááºážááœáẠDNS áá¬áá¬á¡ááœáẠááá¯á¡ááºáá±á¬áºáááºáž áááºážááᯠáááºááá«áá² ááŒá¯áá¯ááºááá¯ááºáááºá ááá¯á·ááá¯áẠáááºážááᯠáááºáá¶áá±á¬ááºááœááºáá±ážááá·áºá ááºááœáẠááá·áºááœááºážááá¯ááºááẠ- ááá·áºá¡ááœáẠááá¯á¡áááºááŒá±áááº)á ááá¯á·áá±á¬ááºá á€áá¯á¶á á¶áááááºááᯠá¡áá¯á¶ážááŒá¯á áá»áœááºá¯ááºááá¯á·ááẠáá»áœááºá¯ááºááá¯á·áá¡áá¬ááᯠvirsh net-define ááŸáá áºááá·áº ááŒá±áá¬áááº-
virsh net-define ovs-network-1.xml
virsh net-start ovs-network-1
virsh net-autostart ovs-network-1
ááᯠáá»áœááºá¯ááºááá¯á·ááẠhypervisor port configurations ááᯠáááºážááŒááºáááº-
[root@hp-gen9 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ens1f0
TYPE=Ethernet
NAME=ens1f0
DEVICE=ens1f0
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=ovs-br1
ONBOOT=yes
OVS_OPTIONS="trunk=100,101,102"
[root@hp-gen9 ~]
[root@hp-gen9 ~]# cat /etc/sysconfig/network-scripts/ifcfg-ovs-br1
DEVICE=ovs-br1
DEVICETYPE=ovs
TYPE=OVSBridge
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.255.200
PREFIX=24
[root@hp-gen9 ~]#
ááŸááºáá»ááº- á€á¡ááŒá±á¡áá±ááœááºá ááá¯á·áẠovs-br1 ááŸáááááºá á¬ááẠvlan áááºáááŸááá±á¬ááŒá±á¬áá·áº áááºáá±á¬ááºáá¯á¶ážá áœá²ááá¯ááºáááºááá¯ááºáá«á áááºážááá¯ááŒá±ááŸááºážáááºá áááºááẠsudo ovs-vsctl set port ovs-br1 tag=100 á¡áááá·áºááá¯áá¯ááºáááºááá¯á¡ááºáááºá ááá¯á·áá±á¬áºá ááŒááºáááºá áááºááŒá®ážáá±á¬ááºá ဠtag áá»á±á¬ááºááœá¬ážááẠ(áááºáá°áááᯠáááºážááᯠáá±áá¬ááœááºááŸááá±á¡á±á¬ááºááŒá¯áá¯ááºáááºážáááá«á áá»áœááºá¯ááºá¡ááœááºáá»á±ážáá°ážáááºáá«áááº)á áá«áá±ááá·áº á¡á²áá«á ááááºá¡áá±ážáááŒá®ážáá«áá°ážá áá¬ááŒá±á¬áá·áºáá²ááá¯áá±á¬á· ááá·áºááœááºážá ááºá¡ááœááºáž áá®ááááºá á¬ááá¯áá² ááá¯á¡ááºááŸá¬ááŒá áºááŒá®áž Openstack ááᯠá¡ááŒáá·áºá¡áá¡áá¯á¶ážáá»áá²á·á¡áá« áááá¯á¡ááºáá«áá°ážá
ááá¯á·áá±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠundercloud á ááºáá áºáá¯ááᯠáááºáá®ážáááº-
virt-install -n undercloud --description "undercloud" --os-type=Linux --os-variant=centos7.0 --ram=8192 --vcpus=8 --disk path=/var/lib/libvirt/images/undercloud.qcow2,bus=virtio,size=40,format=qcow2 --network network:ovs-network-1,model=virtio,portgroup=access-100 --network network:ovs-network-1,model=virtio,portgroup=access-101 --graphics none --location /var/lib/libvirt/boot/CentOS-7-x86_64-Minimal-2003.iso --extra-args console=ttyS0
ááá·áºááœááºážá ááºá¡ááœááºážá áááºááẠá ááºá¡áááºá á áá¬ážááŸááºáá»á¬ážá á¡áá¯á¶ážááŒá¯áá°áá»á¬ážá ntp áá¬áá¬áá»á¬ážá áááºááŒáá·áº ááá¯á¡ááºáá±á¬ ááá·áºáááºáá±á¬ááºáá»á¬ážááᯠáááºáááºááŸááºáá¬ážáá¬á áááºááẠááááºáááºážáá»á¬ážááᯠáá»ááºááŒááºáž configure ááŒá¯áá¯ááºááá¯ááºáááºá ááá¯á·áá±á¬áº áá»áœááºá¯ááºá¡ááœááºáá°á áááºáááºááŒá®ážáá±á¬ááºá á ááºáá²ááá¯á· áááºáá±á¬ááºááẠááá¯ááá¯ááœááºáá°áá«áááºá console ááŸáá·áº ááá¯á¡ááºáá±á¬ááá¯ááºáá»á¬ážááᯠááŒá¯ááŒááºáá«á ááá·áºááœáẠá¡áááºááá·áºáá¯ááºáá¬ážáá±á¬ áá¯á¶áá áºáá¯á¶ááŸááá±ááŒá®ááá¯áá»áŸáẠáááºážááá¯áá¯á¶ážááá¯ááºáááºá ááá¯á·ááá¯áẠáá»áœááºá¯ááºáá¯ááºáá²á·ááá·áºá¡ááá¯ááºáž áá¯ááºáá±á¬ááºááá¯ááºááẠ- á¡áááºážáá¯á¶áž Centos 7 áá¯ááºáá¯á¶ááᯠáá±á«ááºážáá¯ááºáá¯ááºááŒá®áž VM ááᯠááá·áºááœááºážááẠáááºážááᯠá¡áá¯á¶ážááŒá¯áá«á
áááºáááºááŸá¯á¡á±á¬ááºááŒááºááŒá®ážáá±á¬ááºá áááºááẠundercloud ááá¯ááá·áºááœááºážááá¯ááºááá·áº virtual machine áá áºáá¯ááŸáááá·áºáááºá
[root@hp-gen9 bormoglotx]# virsh list
Id Name State
----------------------------------------------------
6 dns-server running
62 undercloud running
ááááŠážá áœá¬ áááºáááºááŒááºážáá¯ááºáááºážá ááºá¡ááœáẠááá¯á¡ááºáá±á¬áááááá¬áá»á¬ážááᯠáááºáááºáá«á
sudo yum update -y
sudo yum install -y net-tools
sudo yum install -y wget
sudo yum install -y ipmitool
Undercloud áááºáááºááŒááºážá
áá»áœááºá¯ááºááá¯á·ááẠstack á¡áá¯á¶ážááŒá¯áá°áá áºáŠážááá¯áááºáá®ážááŒá®áž á áá¬ážááŸááºáá áºáá¯áááºááŸááºáᬠsudoer ááá¯á·ááá·áºáᬠá áá¬ážááŸááºááá·áºá áá¬áááá¯áá² sudo ááŸáááá·áº root command áá»á¬ážááá¯áá¯ááºáá±á¬ááºááá¯ááºá á±áááº-
useradd stack
passwd stack
echo âstack ALL=(root) NOPASSWD:ALLâ > /etc/sudoers.d/stack
chmod 0440 /etc/sudoers.d/stack
ááá¯áá»áœááºá¯ááºááá¯á·ááẠhosts ááá¯ááºááœáẠundercloud á¡áááºá¡ááŒáá·áºá¡á á¯á¶ááá¯áááºááŸááºáá±ážáááº-
vi /etc/hosts
127.0.0.1 undercloud.openstack.rnd localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
ááá¯á·áá±á¬ááºá áá»áœááºá¯ááºááá¯á·ááẠrepositories áá»á¬ážááá¯ááá·áºáᬠáá»áœááºá¯ááºááá¯á·ááá¯á¡ááºáá±á¬ software ááᯠááá·áºááœááºážáá«-
sudo yum install -y https://trunk.rdoproject.org/centos7/current/python2-tripleo-repos-0.0.1-0.20200409224957.8bac392.el7.noarch.rpm
sudo -E tripleo-repos -b queens current
sudo -E tripleo-repos -b queens current ceph
sudo yum install -y python-tripleoclient
sudo yum install -y ceph-ansible
ááŸááºáá»ááº- á¡áááºá áááºááẠceph ááᯠááá·áºááœááºážááẠá¡á á®á¡á ááºáááŸááá«áá ááá¯á·áá±á¬áẠceph ááŸáá·áºáááºáááºááá·áº á¡áááá·áºáá»á¬ážááᯠáááºááá·áºááœááºážááẠáááá¯á¡ááºáá«á Queens release ááᯠáá¯á¶ážáá²á·áááºá áá«áá±ááá·áº áááºážááŒáá¯ááºáá²á· áááŒá¬ážáá¬ááᯠáá¯á¶ážááá¯á·ááááºá
ááá¯á·áá±á¬ááºá á¡áá¯á¶ážááŒá¯áá°á home directory stack ááá¯á· undercloud configuration ááá¯ááºááᯠáá°ážáá°áá«-
cp /usr/share/instack-undercloud/undercloud.conf.sample ~/undercloud.conf
ááᯠáá»áœááºá¯ááºááá¯á·ááẠá€ááá¯ááºááᯠááŒá¯ááŒááºááẠááá¯á¡ááºááŒá®áž áááºážááᯠáá»áœááºá¯ááºááá¯á·á ááá·áºááœááºážááŸá¯ááœáẠáá»áááºááŸáááẠááá¯á¡ááºáá«áááºá
áááºááẠááá¯ááºáá¡á ááœáẠá€á á¬ááŒá±á¬ááºážáá»á¬ážááᯠááá·áºááẠááá¯á¡ááºáááº-
vi undercloud.conf
[DEFAULT]
undercloud_hostname = undercloud.openstack.rnd
local_ip = 192.168.255.1/24
network_gateway = 192.168.255.1
undercloud_public_host = 192.168.255.2
undercloud_admin_host = 192.168.255.3
undercloud_nameservers = 192.168.255.253
generate_service_certificate = false
local_interface = eth0
local_mtu = 1450
network_cidr = 192.168.255.0/24
masquerade = true
masquerade_network = 192.168.255.0/24
dhcp_start = 192.168.255.11
dhcp_end = 192.168.255.50
inspection_iprange = 192.168.255.51,192.168.255.100
scheduler_max_attempts = 10
áá®áá±á¬á· áááºáááºááœá±ááᯠááœá¬ážááŒáá·áºáá¡á±á¬ááºá
undercloud_hostname â undercloud áá¬áá¬á á¡áááºá¡ááŒáá·áºá¡á á¯á¶á DNS áá¬áá¬ááœáẠááá·áºááœááºážááŸá¯ ááá¯ááºáá®ááááºá
local_ip - ááœááºáááºá á®áá¶áá±á¬ááºááœááºáá±ážááŒááºážáá®ááá¯á· áá±ááá¹áá áá¯ááºá¡á±á¬ááºááááºá á¬
network_gateway â overcloud nodes áá»á¬ážááá·áºááœááºážá ááºá¡ááœááºáž ááŒááºáááá¹áá¬ááá¯á·áááºáá±á¬ááºááẠáá¶áá«ážáá±á«ááºá¡ááŒá áºáá±á¬ááºááœááºááá·áº áá°áá®áá±á¬ááŒááºááœááºážááááºá á¬ááẠlocal ip ááŸáá·áºáááºáž ááá¯ááºááá¯ááºáá«áááºá
undercloud_public_host â ááŒááºá API ááááºá á¬á á á®áá¶áá±á¬ááºááœááºáá±ážááá·áºááœááºáááºá០áááºááá·áºá¡ááá²á·ááááºá á¬ááá¯áááᯠáá¬áááºáá±ážá¡ááºáááºá
undercloud_admin_host á¡ááœááºážááá¯ááºáž API ááááºá á¬á á á®áá¶áá±á¬ááºááœááºáá±ážááá·áºááœááºáááºá០áááºááá·áºá¡ááá²á·ááááºá á¬ááá¯áááᯠáá¬áááºáá±ážá¡ááºáááºá
undercloud_nameserversáá»á¬áž - DNS áá¬áá¬
generate_service_certificate - áááºááŸáá¥ááá¬ááœáẠá€á á¬ááŒá±á¬ááºážááẠá¡ááœááºá¡áá±ážááŒá®ážáááºá á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº áááºážá¡á¬áž false áá¯áááºááŸááºááá¬ážáá«áá ááá·áºááœááºážá ááºá¡ááœááºáž á¡ááŸá¬ážá¡ááœááºážáá áºáá¯áááŸááááºááŒá áºááŒá®ážá ááŒá¿áá¬ááᯠRed Hat bug tracker ááœáẠáá±á¬áºááŒáá¬ážáá«áááºá
local_interface ááœááºáááºá á®áá¶áá±á¬ááºááœááºáá±ážááŒááºážááœáẠáá»ááºááŸá¬ááŒááºá á€á¡ááºáá¬áá±á·á áºááᯠundercloud ááŒáá·áºáá»ááºá ááºá¡ááœááºáž ááŒááºáááºááŒááºáááºáá¬ážáááºááŒá áºááŒá®ážá ááá¯á·ááŒá±á¬áá·áº ááá·áºááœáẠundercloud ááœáẠá¡ááºáá¬áá±á·á áºááŸá áºáá¯ááŸáááẠááá¯á¡ááºááẠ- áá áºáá¯á áááºážááá¯áááºáá±á¬ááºáááºá¡ááœááºá áá¯ááááá áºáá¯á¡á¬áž á á®áá¶áá±á¬ááºááœááºáá±ážáááºá
local_mtu - MTU áá»áœááºá¯ááºááá¯á·ááœááºá ááºážáááºáá¬ááºááœá²áááºážáá áºáá¯ááŸáááŒá®ážáá»áœááºá¯ááºá OVS ááá¯ááºá¡áá±á«ááºáá»á¬ážááœáẠMTU 1500 ááŸááááºááŒá áºáá±á¬ááŒá±á¬áá·áº VxLAN ááœááºáá¯ááºááá¯ážáá¬ážáá±á¬áááºáá±á·ááºá»áá»á¬ážááŒááºáááºážááá¯ááºá á±áááºáááºážááᯠ1450 ááá¯á·áááºááŸááºáááºááá¯á¡ááºáá«áááºá
network_cidr - ááœááºáááºá á®áá¶áá±á¬ááºááœááºáá±ážááŒááºážá
masquerade â ááŒááºáááœááºáááºááá¯áááºáá±á¬ááºááẠNAT ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážá
masquerade_network - NATed ááŒá áºááá·áºááœááºáááº
dhcp_start â overcloud ááŒáá·áºáá»ááºá ááºá¡ááœááºáž ááááºá á¬áá»á¬ážááᯠnode áá»á¬ážááá¯á· áááºááŸááºáá±ážááá·áº ááááºá á¬áá±á«ááºážá á¯á á¡á ááááºá á¬
dhcp_end â overcloud ááŒáá·áºáá»ááºá ááºá¡ááœááºáž ááááºá á¬áá»á¬ážááᯠnode áá»á¬ážááá¯á· áááºááŸááºáá±ážááá·áº ááááºá á¬áá±á«ááºážá á¯á áá±á¬ááºáá¯á¶ážááááºá á¬
á á áºáá±ážáá±áž_iprange - á á°ážá ááºážáá±á·áá¬ááẠááá¯á¡ááºáá±á¬ ááááºá á¬áá±á«ááºážá ᯠ(á¡áááºáá« áá±áááºááŸáá·áº áááºááááºááá·áºáá«)
scheduler_max_attempts - overcloud ááᯠááá·áºááœááºážááẠááŒáá¯ážáááºážááŸá¯ á¡áá»á¬ážáá¯á¶áž á¡ááŒáááºá¡áá±á¡ááœáẠ(node ââá¡áá±á¡ááœááºááẠááá¯áá»á¬ážáááẠááá¯á·ááá¯áẠáá®áá»áŸááááº)
ááá¯ááºááá¯áá±á¬áºááŒááŒá®ážáá±á¬ááºá áááºááẠundercloud ááá¯á¡áá¯á¶ážááŒá¯ááẠcommand ááá¯áá±ážááá¯ááºáá«áááºá
openstack undercloud install
áá¯ááºáá¯á¶ážáá¯ááºáááºážáááºáááºááá¶áá±á«áºáá°áááºááŒá®áž 10 áááá áºá០30 áááá áºá¡ááááŒá¬áááºá áá±á¬ááºáá¯á¶ážááœáẠáááºááẠá€áá²á·ááá¯á·áá±á¬ output ááá¯ááŒááºááá«áááº-
vi undercloud.conf
2020-08-13 23:13:12,668 INFO:
#############################################################################
Undercloud install complete.
The file containing this installation's passwords is at
/home/stack/undercloud-passwords.conf.
There is also a stackrc file at /home/stack/stackrc.
These files are needed to interact with the OpenStack services, and should be
secured.
#############################################################################
ဠoutput ááẠááẠundercloud ááᯠá¡á±á¬ááºááŒááºá áœá¬ ááá·áºááœááºážááŒá®ážááŒá áºááŒá±á¬ááºáž ááŸáá·áº ááá¯ááẠundercloud á á¡ááŒá±á¡áá±ááᯠá á áºáá±ážááá¯ááºááŒá®áž overcloud ááᯠáááºáááºááá·áºááœááºážááá¯ááºááŒá®ááŒá áºáááºá
ifconfig output ááá¯ááŒáá·áºáá»áŸáẠBridge interface á¡áá áºáá áºáá¯áá±á«áºáá¬áááºááá¯ááœá±á·ááá«áááºá
[stack@undercloud ~]$ ifconfig
br-ctlplane: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1450
inet 192.168.255.1 netmask 255.255.255.0 broadcast 192.168.255.255
inet6 fe80::5054:ff:fe2c:89e prefixlen 64 scopeid 0x20<link>
ether 52:54:00:2c:08:9e txqueuelen 1000 (Ethernet)
RX packets 14 bytes 1095 (1.0 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 20 bytes 1292 (1.2 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Overcloud ááŒáá·áºáá»ááºááŸá¯á¡á¬áž á€á¡ááºáá¬áá±á·á áºááŸáááá·áº ááá¯áá±á¬ááºááœááºáá«áááºá
á¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáá±á¬ output ááŸáá»áœááºá¯ááºááá¯á·á node áá áºáá¯ááœááºáááºáá±á¬ááºááŸá¯á¡á¬ážáá¯á¶ážááŸááááºááá¯áááºááœá±á·ááá¯ááºáááº-
(undercloud) [stack@undercloud ~]$ openstack host list
+--------------------------+-----------+----------+
| Host Name | Service | Zone |
+--------------------------+-----------+----------+
| undercloud.openstack.rnd | conductor | internal |
| undercloud.openstack.rnd | scheduler | internal |
| undercloud.openstack.rnd | compute | nova |
+--------------------------+-----------+----------+
á¡á±á¬ááºááœááºáá±á¬áºááŒáá¬ážáá±á¬á¡áá»ááºááŸá¬ undercloud ááœááºáááºá¡ááá¯ááºážáááœá²á·á ááºážáá¯á¶ááŒá áºáááºá
(undercloud) [stack@undercloud ~]$ python -m json.tool /etc/os-net-config/config.json
{
"network_config": [
{
"addresses": [
{
"ip_netmask": "192.168.255.1/24"
}
],
"members": [
{
"dns_servers": [
"192.168.255.253"
],
"mtu": 1450,
"name": "eth0",
"primary": "true",
"type": "interface"
}
],
"mtu": 1450,
"name": "br-ctlplane",
"ovs_extra": [
"br-set-external-id br-ctlplane bridge-id br-ctlplane"
],
"routes": [],
"type": "ovs_bridge"
}
]
}
(undercloud) [stack@undercloud ~]$
Overcloud áááºáááºááŒááºážá
ááá¯á¡áá»áááºááœáẠáá»áœááºá¯ááºááá¯á·ááœáẠundercloud áá¬ááŸáááŒá®ážá overcloud áá»á¬ážá á¯á ááºážááá·áº áá¯á¶áá±á¬ááºáá±á¬ node áááŸááá«á ááá¯á·ááŒá±á¬áá·áº ááááŠážá áœá¬á áá»áœááºá¯ááºááá¯á·ááá¯á¡ááºáá±á¬ virtual machines áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯ááŒáá«á áá¯á·á ááŒáá·áºáá»ááºá ááºá¡ááœááºáž undercloud ááá¯ááºááá¯ááºá OS ááŸáá·áº overcloud á ááºááœáẠááá¯á¡ááºáá±á¬áá±á¬á·ááºáá²ááᯠááá·áºááœááºážáá±ážáááá·áºááẠ- ááá¯ááá¯áááºááŸá¬ áá»áœááºá¯ááºááá¯á·ááẠá ááºááᯠáá¯á¶ážáá¡áá¯á¶ážáá»ááẠáááá¯á¡ááºáá² áááºážá¡ááœáẠdisk (ááá¯á·ááá¯áẠdisks) áá áºáá¯ááá¯áᬠáááºáá®ážááŒá®áž áááºážá parameters áá»á¬ážááᯠáá¯á¶ážááŒááºááŒááºážááŒá áºááẠ- ááá¯ááá¯áááºááŸá¬á á¡ááŸááºáá±á¬á·á áá»áœááºá¯ááºááá¯á·ááẠáááºážááœáẠOS ááá·áºááœááºážááŒááºážáááŸááá² ááá¬áá¬áá¬ááᯠáááŸááá«áááºá
áá»áœááºá¯ááºááá¯á·á virtual machines áá»á¬ážá disks áá»á¬ážááŸáá·áºá¡áá° folder ááá¯á·ááœá¬ážá ááá¯á¡ááºáá±á¬á¡ááœááºá¡á á¬ážááŸá disk áá»á¬ážááá¯áááºáá®ážááŒáá«á áá¯á·á
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 -o preallocation=metadata control-1.qcow2 60G
qemu-img create -f qcow2 -o preallocation=metadata compute-1.qcow2 60G
qemu-img create -f qcow2 -o preallocation=metadata compute-2.qcow2 60G
qemu-img create -f qcow2 -o preallocation=metadata storage-1.qcow2 160G
qemu-img create -f qcow2 -o preallocation=metadata storage-2.qcow2 160G
áá»áœááºá¯ááºááá¯á·ááẠroot á¡ááŒá Ạáá¯ááºáá±á¬ááºáá±áá±á¬ááŒá±á¬áá·áºá áááá¯ááºááœáá·áºáá»á¬ážááŸáá·áº ááŒá¿áá¬áááŒá áºá á±áááºá¡ááœáẠá€áá áºáá»á¬ážá ááá¯ááºááŸááºááᯠááŒá±á¬ááºážáá²ááẠááá¯á¡ááºáááº-
[root@hp-gen9 images]# ls -lh
total 5.8G
drwxr-xr-x. 2 qemu qemu 4.0K Aug 13 16:15 backups
-rw-r--r--. 1 root root 61G Aug 14 03:07 compute-1.qcow2
-rw-r--r--. 1 root root 61G Aug 14 03:07 compute-2.qcow2
-rw-r--r--. 1 root root 61G Aug 14 03:07 control-1.qcow2
-rw-------. 1 qemu qemu 41G Aug 14 03:03 dns-server.qcow2
-rw-r--r--. 1 root root 161G Aug 14 03:07 storage-1.qcow2
-rw-r--r--. 1 root root 161G Aug 14 03:07 storage-2.qcow2
-rw-------. 1 qemu qemu 41G Aug 14 03:07 undercloud.qcow2
[root@hp-gen9 images]#
[root@hp-gen9 images]#
[root@hp-gen9 images]# chown qemu:qemu /var/lib/libvirt/images/*qcow2
[root@hp-gen9 images]# ls -lh
total 5.8G
drwxr-xr-x. 2 qemu qemu 4.0K Aug 13 16:15 backups
-rw-r--r--. 1 qemu qemu 61G Aug 14 03:07 compute-1.qcow2
-rw-r--r--. 1 qemu qemu 61G Aug 14 03:07 compute-2.qcow2
-rw-r--r--. 1 qemu qemu 61G Aug 14 03:07 control-1.qcow2
-rw-------. 1 qemu qemu 41G Aug 14 03:03 dns-server.qcow2
-rw-r--r--. 1 qemu qemu 161G Aug 14 03:07 storage-1.qcow2
-rw-r--r--. 1 qemu qemu 161G Aug 14 03:07 storage-2.qcow2
-rw-------. 1 qemu qemu 41G Aug 14 03:08 undercloud.qcow2
[root@hp-gen9 images]#
ááŸááºáá»ááº- áááºážááá¯áá±á·áá¬áááºá¡ááœáẠceph ááᯠááá·áºááœááºážááẠáá á®á ááºáá¬ážáá«áá command áá»á¬ážááẠá¡áááºážáá¯á¶áž disk ááŸá áºáá¯ááŒáá·áº á¡áááºážáá¯á¶áž node 3 áá¯ááᯠáááºáá®ážáááºááá¯ááºáá±á¬áºáááºáž template ááœáẠvirtual disks vda, vdb á áááºááá¯á·ááᯠá¡áá¯á¶ážááŒá¯áááºááŒá áºááŒá±á¬ááºáž ááœáŸááºááŒáá«áááºá
áá±á¬ááºážááŒá®á ááᯠáá»áœááºá¯ááºááá¯á·ááẠá€á ááºá¡á¬ážáá¯á¶ážááᯠáááºááŸááºááẠááá¯á¡ááºáááº-
virt-install --name control-1 --ram 32768 --vcpus 8 --os-variant centos7.0 --disk path=/var/lib/libvirt/images/control-1.qcow2,device=disk,bus=virtio,format=qcow2 --noautoconsole --vnc --network network:ovs-network-1,model=virtio,portgroup=access-100 --network network:ovs-network-1,model=virtio,portgroup=trunk-1 --dry-run --print-xml > /tmp/control-1.xml
virt-install --name storage-1 --ram 16384 --vcpus 4 --os-variant centos7.0 --disk path=/var/lib/libvirt/images/storage-1.qcow2,device=disk,bus=virtio,format=qcow2 --noautoconsole --vnc --network network:ovs-network-1,model=virtio,portgroup=access-100 --dry-run --print-xml > /tmp/storage-1.xml
virt-install --name storage-2 --ram 16384 --vcpus 4 --os-variant centos7.0 --disk path=/var/lib/libvirt/images/storage-2.qcow2,device=disk,bus=virtio,format=qcow2 --noautoconsole --vnc --network network:ovs-network-1,model=virtio,portgroup=access-100 --dry-run --print-xml > /tmp/storage-2.xml
virt-install --name compute-1 --ram 32768 --vcpus 12 --os-variant centos7.0 --disk path=/var/lib/libvirt/images/compute-1.qcow2,device=disk,bus=virtio,format=qcow2 --noautoconsole --vnc --network network:ovs-network-1,model=virtio,portgroup=access-100 --dry-run --print-xml > /tmp/compute-1.xml
virt-install --name compute-2 --ram 32768 --vcpus 12 --os-variant centos7.0 --disk path=/var/lib/libvirt/images/compute-2.qcow2,device=disk,bus=virtio,format=qcow2 --noautoconsole --vnc --network network:ovs-network-1,model=virtio,portgroup=access-100 --dry-run --print-xml > /tmp/compute-2.xml
á¡áá¯á¶ážááœáẠ/tmp/ folder á¡ááœááºážááŸáá ááºáá áºáá¯á á®ááá±á¬áºááŒáá»ááºááŸáá·áºá¡áá° xml ááá¯ááºááá¯áááºáá®ážáá±ážááá·áº command -print-xml > /tmp/storage-1.xml ááŸááááºá áááºážááá¯áááá·áºáá«áá áááºáááŒá áºááá¯ááºáá«á virtual machines áá»á¬ážááᯠáá±á¬áºáá¯ááºááá¯ááºááẠá
ááᯠáá»áœááºá¯ááºááá¯á·ááẠá€á ááºá¡á¬ážáá¯á¶ážááᯠvirsh ááŒáá·áº áááºááŸááºááẠááá¯á¡ááºáá«áááºá
virsh define --file /tmp/control-1.xml
virsh define --file /tmp/compute-1.xml
virsh define --file /tmp/compute-2.xml
virsh define --file /tmp/storage-1.xml
virsh define --file /tmp/storage-2.xml
[root@hp-gen9 ~]# virsh list --all
Id Name State
----------------------------------------------------
6 dns-server running
64 undercloud running
- compute-1 shut off
- compute-2 shut off
- control-1 shut off
- storage-1 shut off
- storage-2 shut off
[root@hp-gen9 ~]#
ááᯠá¡áá±ážá¡ááœáŸá¬ážá¡áá»áẠ- tripleO áááºáááºááŒááºážááŸáá·áº á á°ážá ááºážá á áºáá±ážááŒááºážá¡ááœááºáž áá¬áá¬áá»á¬ážááᯠá á®áá¶ááá·áºááœá²ááẠIPMI ááᯠá¡áá¯á¶ážááŒá¯áááºá
Introspection ááẠnode áá»á¬ážáááºáá¶ááá·áºááœááºážááŒááºážá¡ááœáẠááá¯á¡ááºáá±á¬ parameters áá»á¬ážááá¯áááŸááááºá¡ááœáẠhardware ááá¯á á áºáá±ážááŒááºážáá¯ááºáááºážá ááºááŒá áºáááºá Introspection ááᯠááá¹áá¯ááá«áá±á¬ áá¬áá¬áá»á¬ážááŒáá·áº áá¯ááºáá±á¬ááºááẠáá®ááá¯ááºážáá¯ááºáá¬ážááá·áº ááá±á¬ááºáá áááºáá±á¬ááºááŸá¯ááᯠá¡áá¯á¶ážááŒá¯á áá¯ááºáá±á¬ááºáááºá
ááá¯á·áá±á¬áº á€áá±áá¬ááœáẠááŒá¿áá¬ááŒá áºááẠ- áá¬á·ááºáá² IPMI áá¬áá¬áá»á¬ážááœáẠáá®ážááŒá¬áž port áá áºáᯠ(ááá¯á·ááá¯áẠáá»áŸáá±áá¬ážáá±á¬ port áá áºáá¯ááŸááá±á¬áºáááºáž áááºážááẠá¡áá±ážáááŒá®ážáá«)á ááá¯á·áá±á¬áẠvirtual machines áá»á¬ážááœáẠááá¯ááá¯á·áá±á¬ port áá»á¬ážáááŸááá«á á€ááœáẠvbmc áá¯áá±á«áºáá±á¬ áá»áá¯ááºážáá±á¬ááºáá áºáá¯ááẠáá»áœááºá¯ááºááá¯á·áá¡áá°á¡áá®ááá¯á· áá±á¬ááºáá¬ááẠ- IPMI ááááºáááºážááᯠá¡áá¯áá°ááá¯ááºá á±ááá·áº á¡áá¯á¶ážáááºááŸá¯áá áºáá¯á á€áá°ážááŒá¬ážáá»ááºááẠESXI hypervisor ááœáẠáá«ááºááœá²áááºážáá áºáá¯áááºáá±á¬ááºááá¯áá°áá»á¬ážá¡ááœáẠá¡áá°ážááááá¬ážááá»áá¯ážáááºááẠ- ááá¯ážááá¯ážáá¬ážáá¬ážááŒá±á¬ááá»áŸááºá áááºážááœáẠvbmc á analogue ááŸááááŸáááᯠáá»áœááºá¯ááºááááá«á ááá¯á·ááŒá±á¬áá·áº á¡áá¬á¡á¬ážáá¯á¶ážááᯠá¡áá¯á¶ážáááŒá¯áá® á€ááŒá¿áá¬ááᯠá á°ážá ááºážáá±á·áá¬ááá·áºáá«áááºá .
vbmc ááᯠááá·áºááœááºážáá«
yum install yum install python2-virtualbmc
ááá·áº OS ááẠáááºáá±á·áá»áºááᯠááŸá¬áááœá±á·áá«áá ááá¯á·áá±á¬áẠrepository ááᯠááá·áºáá«-
yum install -y https://www.rdoproject.org/repos/rdo-release.rpm
ááá¯áá»áœááºá¯ááºááá¯á·ááẠutility ááá¯áááºááŸááºáá¬ážáááºá á€áá±áá¬á á¡áá¬á¡á¬ážáá¯á¶ážááẠá¡ááŸááºááœá²áááºá¡áá ááá¯ááºáá²áá±áá«áááºá ááᯠvbmc á á¬áááºážááœáẠáá¬áá¬áá»á¬áž áááŸáááŒááºážááŸá¬ áá¯áá¹áááááºáá«áááºá
[root@hp-gen9 ~]# vbmc list
[root@hp-gen9 ~]#
áááºážááá¯á· áá±á«áºáá¬á á±áááºá áááºážááá¯á·ááᯠá€áá²á·ááá¯á· áá°ááá¯ááºááá¯áẠááŒá±áá¬ááááº-
[root@hp-gen9 ~]# vbmc add control-1 --port 7001 --username admin --password admin
[root@hp-gen9 ~]# vbmc add storage-1 --port 7002 --username admin --password admin
[root@hp-gen9 ~]# vbmc add storage-2 --port 7003 --username admin --password admin
[root@hp-gen9 ~]# vbmc add compute-1 --port 7004 --username admin --password admin
[root@hp-gen9 ~]# vbmc add compute-2 --port 7005 --username admin --password admin
[root@hp-gen9 ~]#
[root@hp-gen9 ~]# vbmc list
+-------------+--------+---------+------+
| Domain name | Status | Address | Port |
+-------------+--------+---------+------+
| compute-1 | down | :: | 7004 |
| compute-2 | down | :: | 7005 |
| control-1 | down | :: | 7001 |
| storage-1 | down | :: | 7002 |
| storage-2 | down | :: | 7003 |
+-------------+--------+---------+------+
[root@hp-gen9 ~]#
ááŸááºážáááºážáá»ááºáááŸááá² command syntax ááẠááŸááºážáááºážáááºáᯠáá»áœááºáá±á¬áºáááºáá«áááºá ááá¯á·áá±á¬áºáááºážá ááá¯á¡áá»áááºááœáẠáá»áœááºá¯ááºááá¯á·á session áá»á¬ážá¡á¬ážáá¯á¶ážááẠDOWN á¡áá±á¡áá¬ážááœáẠááŸááá±áá«áááºá áááºážááá¯á·ááᯠUP á¡ááŒá±á¡áá±ááá¯á· ááœáŸá±á·ááẠáááºážááá¯á·ááᯠááœáá·áºááẠááá¯á¡ááºáááº-
[root@hp-gen9 ~]# vbmc start control-1
2020-08-14 03:15:57,826.826 13149 INFO VirtualBMC [-] Started vBMC instance for domain control-1
[root@hp-gen9 ~]# vbmc start storage-1
2020-08-14 03:15:58,316.316 13149 INFO VirtualBMC [-] Started vBMC instance for domain storage-1
[root@hp-gen9 ~]# vbmc start storage-2
2020-08-14 03:15:58,851.851 13149 INFO VirtualBMC [-] Started vBMC instance for domain storage-2
[root@hp-gen9 ~]# vbmc start compute-1
2020-08-14 03:15:59,307.307 13149 INFO VirtualBMC [-] Started vBMC instance for domain compute-1
[root@hp-gen9 ~]# vbmc start compute-2
2020-08-14 03:15:59,712.712 13149 INFO VirtualBMC [-] Started vBMC instance for domain compute-2
[root@hp-gen9 ~]#
[root@hp-gen9 ~]#
[root@hp-gen9 ~]# vbmc list
+-------------+---------+---------+------+
| Domain name | Status | Address | Port |
+-------------+---------+---------+------+
| compute-1 | running | :: | 7004 |
| compute-2 | running | :: | 7005 |
| control-1 | running | :: | 7001 |
| storage-1 | running | :: | 7002 |
| storage-2 | running | :: | 7003 |
+-------------+---------+---------+------+
[root@hp-gen9 ~]#
áá±á¬ááºáá¯á¶ážááááœá±á·ááŸá¯ - Firewall á ááºážáá»ááºážáá»á¬ážááᯠááŒá¯ááŒááºááẠááá¯á¡ááºááẠ(ááá¯á·ááá¯áẠáá¯á¶ážáááááºáááº)á
firewall-cmd --zone=public --add-port=7001/udp --permanent
firewall-cmd --zone=public --add-port=7002/udp --permanent
firewall-cmd --zone=public --add-port=7003/udp --permanent
firewall-cmd --zone=public --add-port=7004/udp --permanent
firewall-cmd --zone=public --add-port=7005/udp --permanent
firewall-cmd --reload
ááᯠundercloud ááá¯á·ááœá¬ážá á¡áá¬á¡á¬ážáá¯á¶ážá¡áá¯ááºáá¯ááºááŒá±á¬ááºážá á áºáá±ážááŒáá«á áá¯á·á áááºáá¶áá°á ááºáááááºá á¬ááŸá¬ 192.168.255.200 ááŒá áºááŒá®áž undercloud ááœáẠááŒáá·áºáá»ááºááŒááºáááºáá±á ááºá¡ááœááºáž ááá¯á¡ááºáá±á¬ ipmitool áááºáá±á·áá»áºááᯠááá·áºááœááºážáá²á·áááº-
[stack@undercloud ~]$ ipmitool -I lanplus -U admin -P admin -H 192.168.255.200 -p 7001 power status
Chassis Power is off
[stack@undercloud ~]$ ipmitool -I lanplus -U admin -P admin -H 192.168.255.200 -p 7001 power on
Chassis Power Control: Up/On
[stack@undercloud ~]$
[root@hp-gen9 ~]# virsh list
Id Name State
----------------------------------------------------
6 dns-server running
64 undercloud running
65 control-1 running
áááºááœá±á·ááŒááºáááá·áºá¡ááá¯ááºážá áá»áœááºá¯ááºááá¯á·ááẠvbmc ááŸáá áºááá·áº ááááºážáá»á¯ááºááŸá¯ node ááᯠá¡á±á¬ááºááŒááºá áœá¬ á áááºááá¯ááºáá«ááŒá®á á¡áᯠá¡á²áá«ááᯠááááºááŒá®áž áááºááœá¬ážáá¡á±á¬ááºá
[stack@undercloud ~]$ ipmitool -I lanplus -U admin -P admin -H 192.168.255.200 -p 7001 power off
Chassis Power Control: Down/Off
[stack@undercloud ~]$ ipmitool -I lanplus -U admin -P admin -H 192.168.255.200 -p 7001 power status
Chassis Power is off
[stack@undercloud ~]$
[root@hp-gen9 ~]# virsh list --all
Id Name State
----------------------------------------------------
6 dns-server running
64 undercloud running
- compute-1 shut off
- compute-2 shut off
- control-1 shut off
- storage-1 shut off
- storage-2 shut off
[root@hp-gen9 ~]#
áá±á¬ááºáá áºááá·áºááŸá¬ overcloud ááá·áºááœááºážááá·áº node áá»á¬ážááᯠá á°ážá ááºážá á áºáá±ážááŒááºáž ááŒá áºáááºá áá«ááá¯áá¯ááºááá¯á·á áá»áœááºá¯ááºááá¯á·áá²á· node ááœá±áá²á· áá±á¬áºááŒáá»ááºáá²á·á¡áá° json ááá¯ááºááᯠááŒááºáááºááá«áááºá ááá¬áá¬áá¬áá»á¬ážááœáẠááá·áºááœááºážááŒááºážááá°áá²á ááá¯ááºááẠá ááºáá áºáá¯á á®á¡ááœáẠvbmc áá¯ááºáá±á¬ááºáá±ááá·áº port ááᯠááœáŸááºááŒááŒá±á¬ááºáž áá»á±ážáá°ážááŒá¯á áááááŒá¯áá«á
[root@hp-gen9 ~]# virsh domiflist --domain control-1
Interface Type Source Model MAC
-------------------------------------------------------
- network ovs-network-1 virtio 52:54:00:20:a2:2f
- network ovs-network-1 virtio 52:54:00:3f:87:9f
[root@hp-gen9 ~]# virsh domiflist --domain compute-1
Interface Type Source Model MAC
-------------------------------------------------------
- network ovs-network-1 virtio 52:54:00:98:e9:d6
[root@hp-gen9 ~]# virsh domiflist --domain compute-2
Interface Type Source Model MAC
-------------------------------------------------------
- network ovs-network-1 virtio 52:54:00:6a:ea:be
[root@hp-gen9 ~]# virsh domiflist --domain storage-1
Interface Type Source Model MAC
-------------------------------------------------------
- network ovs-network-1 virtio 52:54:00:79:0b:cb
[root@hp-gen9 ~]# virsh domiflist --domain storage-2
Interface Type Source Model MAC
-------------------------------------------------------
- network ovs-network-1 virtio 52:54:00:a7:fe:27
ááŸááºáá»ááº- ááááºážáá»á¯ááºááŸá¯ Node ááœáẠá¡ááºáá¬áá±á·á áºááŸá áºáá¯áá«ááŸááá±á¬áºáááºáž á€ááá á¹á ááœáẠáááºážááẠá¡áá±ážáááŒá®ážáá«á á€ááá·áºááœááºážááŸá¯ááœáẠáá»áœááºá¯ááºááá¯á·á¡ááœáẠáá¯á¶áá±á¬ááºáááºááŒá áºáááºá
ááá¯áá»áœááºá¯ááºááá¯á· json ááá¯ááºááá¯ááŒááºáááºáá«á á á®áá¶áá±á¬ááºááœááºáá±ážááá·áº ááááºáááºážá ááááºážááááºá á¬á node áá»á¬ážá ááá·áºáááºáá»ááºáá»á¬ážá áááºážááá¯á·ááᯠá¡áááºáá±ážáᬠipmi ááá¯á· áááºááá¯á·ááœá¬ážááááºááᯠááœáŸááºááŒááẠááá¯á¡ááºáááº-
{
"nodes":[
{
"mac":[
"52:54:00:20:a2:2f"
],
"cpu":"8",
"memory":"32768",
"disk":"60",
"arch":"x86_64",
"name":"control-1",
"pm_type":"pxe_ipmitool",
"pm_user":"admin",
"pm_password":"admin",
"pm_addr":"192.168.255.200",
"pm_port":"7001"
},
{
"mac":[
"52:54:00:79:0b:cb"
],
"cpu":"4",
"memory":"16384",
"disk":"160",
"arch":"x86_64",
"name":"storage-1",
"pm_type":"pxe_ipmitool",
"pm_user":"admin",
"pm_password":"admin",
"pm_addr":"192.168.255.200",
"pm_port":"7002"
},
{
"mac":[
"52:54:00:a7:fe:27"
],
"cpu":"4",
"memory":"16384",
"disk":"160",
"arch":"x86_64",
"name":"storage-2",
"pm_type":"pxe_ipmitool",
"pm_user":"admin",
"pm_password":"admin",
"pm_addr":"192.168.255.200",
"pm_port":"7003"
},
{
"mac":[
"52:54:00:98:e9:d6"
],
"cpu":"12",
"memory":"32768",
"disk":"60",
"arch":"x86_64",
"name":"compute-1",
"pm_type":"pxe_ipmitool",
"pm_user":"admin",
"pm_password":"admin",
"pm_addr":"192.168.255.200",
"pm_port":"7004"
},
{
"mac":[
"52:54:00:6a:ea:be"
],
"cpu":"12",
"memory":"32768",
"disk":"60",
"arch":"x86_64",
"name":"compute-2",
"pm_type":"pxe_ipmitool",
"pm_user":"admin",
"pm_password":"admin",
"pm_addr":"192.168.255.200",
"pm_port":"7005"
}
]
}
ááᯠáá»áœááºá¯ááºááá¯á·ááẠááá±á¬ááºáááá»á¬ážá¡ááœáẠáá¯ááºáá¯á¶áá»á¬ážááᯠááŒááºáááºááẠááá¯á¡ááºáá«áááºá áá«ááá¯áá¯ááºááá¯á· wget ááŸáá áºááá·áº áá±á«ááºážáá¯ááºáá¯ááºááŒá®áž install áá¯ááºáá«á
(undercloud) [stack@undercloud ~]$ sudo wget https://images.rdoproject.org/queens/delorean/current-tripleo-rdo/overcloud-full.tar --no-check-certificate
(undercloud) [stack@undercloud ~]$ sudo wget https://images.rdoproject.org/queens/delorean/current-tripleo-rdo/ironic-python-agent.tar --no-check-certificate
(undercloud) [stack@undercloud ~]$ ls -lh
total 1.9G
-rw-r--r--. 1 stack stack 447M Aug 14 10:26 ironic-python-agent.tar
-rw-r--r--. 1 stack stack 1.5G Aug 14 10:26 overcloud-full.tar
-rw-------. 1 stack stack 916 Aug 13 23:10 stackrc
-rw-r--r--. 1 stack stack 15K Aug 13 22:50 undercloud.conf
-rw-------. 1 stack stack 2.0K Aug 13 22:50 undercloud-passwords.conf
(undercloud) [stack@undercloud ~]$ mkdir images/
(undercloud) [stack@undercloud ~]$ tar -xpvf ironic-python-agent.tar -C ~/images/
ironic-python-agent.initramfs
ironic-python-agent.kernel
(undercloud) [stack@undercloud ~]$ tar -xpvf overcloud-full.tar -C ~/images/
overcloud-full.qcow2
overcloud-full.initrd
overcloud-full.vmlinuz
(undercloud) [stack@undercloud ~]$
(undercloud) [stack@undercloud ~]$ ls -lh images/
total 1.9G
-rw-rw-r--. 1 stack stack 441M Aug 12 17:24 ironic-python-agent.initramfs
-rwxr-xr-x. 1 stack stack 6.5M Aug 12 17:24 ironic-python-agent.kernel
-rw-r--r--. 1 stack stack 53M Aug 12 17:14 overcloud-full.initrd
-rw-r--r--. 1 stack stack 1.4G Aug 12 17:18 overcloud-full.qcow2
-rwxr-xr-x. 1 stack stack 6.5M Aug 12 17:14 overcloud-full.vmlinuz
(undercloud) [stack@undercloud ~]$
áá¯á¶áá»á¬ážááᯠundercloud ááá¯á· á¡ááºáá¯ááºáá¯ááºáá±áááº-
(undercloud) [stack@undercloud ~]$ openstack overcloud image upload --image-path ~/images/
Image "overcloud-full-vmlinuz" was uploaded.
+--------------------------------------+------------------------+-------------+---------+--------+
| ID | Name | Disk Format | Size | Status |
+--------------------------------------+------------------------+-------------+---------+--------+
| c2553770-3e0f-4750-b46b-138855b5c385 | overcloud-full-vmlinuz | aki | 6761064 | active |
+--------------------------------------+------------------------+-------------+---------+--------+
Image "overcloud-full-initrd" was uploaded.
+--------------------------------------+-----------------------+-------------+----------+--------+
| ID | Name | Disk Format | Size | Status |
+--------------------------------------+-----------------------+-------------+----------+--------+
| 949984e0-4932-4e71-af43-d67a38c3dc89 | overcloud-full-initrd | ari | 55183045 | active |
+--------------------------------------+-----------------------+-------------+----------+--------+
Image "overcloud-full" was uploaded.
+--------------------------------------+----------------+-------------+------------+--------+
| ID | Name | Disk Format | Size | Status |
+--------------------------------------+----------------+-------------+------------+--------+
| a2f2096d-c9d7-429a-b866-c7543c02a380 | overcloud-full | qcow2 | 1487475712 | active |
+--------------------------------------+----------------+-------------+------------+--------+
Image "bm-deploy-kernel" was uploaded.
+--------------------------------------+------------------+-------------+---------+--------+
| ID | Name | Disk Format | Size | Status |
+--------------------------------------+------------------+-------------+---------+--------+
| e413aa78-e38f-404c-bbaf-93e582a8e67f | bm-deploy-kernel | aki | 6761064 | active |
+--------------------------------------+------------------+-------------+---------+--------+
Image "bm-deploy-ramdisk" was uploaded.
+--------------------------------------+-------------------+-------------+-----------+--------+
| ID | Name | Disk Format | Size | Status |
+--------------------------------------+-------------------+-------------+-----------+--------+
| 5cf3aba4-0e50-45d3-929f-27f025dd6ce3 | bm-deploy-ramdisk | ari | 461759376 | active |
+--------------------------------------+-------------------+-------------+-----------+--------+
(undercloud) [stack@undercloud ~]$
áá¯á¶áá»á¬ážá¡á¬ážáá¯á¶áž áááºááŒá®ážááŒá±á¬ááºáž á á áºáá±ážááŒááºážá
(undercloud) [stack@undercloud ~]$ openstack image list
+--------------------------------------+------------------------+--------+
| ID | Name | Status |
+--------------------------------------+------------------------+--------+
| e413aa78-e38f-404c-bbaf-93e582a8e67f | bm-deploy-kernel | active |
| 5cf3aba4-0e50-45d3-929f-27f025dd6ce3 | bm-deploy-ramdisk | active |
| a2f2096d-c9d7-429a-b866-c7543c02a380 | overcloud-full | active |
| 949984e0-4932-4e71-af43-d67a38c3dc89 | overcloud-full-initrd | active |
| c2553770-3e0f-4750-b46b-138855b5c385 | overcloud-full-vmlinuz | active |
+--------------------------------------+------------------------+--------+
(undercloud) [stack@undercloud ~]$
áá±á¬ááºáááºáá áºáᯠ- ááẠDNS áá¬áá¬áá áºáá¯ááá·áºááẠááá¯á¡ááºáááº-
(undercloud) [stack@undercloud ~]$ openstack subnet list
+--------------------------------------+-----------------+--------------------------------------+------------------+
| ID | Name | Network | Subnet |
+--------------------------------------+-----------------+--------------------------------------+------------------+
| f45dea46-4066-42aa-a3c4-6f84b8120cab | ctlplane-subnet | 6ca013dc-41c2-42d8-9d69-542afad53392 | 192.168.255.0/24 |
+--------------------------------------+-----------------+--------------------------------------+------------------+
(undercloud) [stack@undercloud ~]$ openstack subnet show f45dea46-4066-42aa-a3c4-6f84b8120cab
+-------------------+-----------------------------------------------------------+
| Field | Value |
+-------------------+-----------------------------------------------------------+
| allocation_pools | 192.168.255.11-192.168.255.50 |
| cidr | 192.168.255.0/24 |
| created_at | 2020-08-13T20:10:37Z |
| description | |
| dns_nameservers | |
| enable_dhcp | True |
| gateway_ip | 192.168.255.1 |
| host_routes | destination='169.254.169.254/32', gateway='192.168.255.1' |
| id | f45dea46-4066-42aa-a3c4-6f84b8120cab |
| ip_version | 4 |
| ipv6_address_mode | None |
| ipv6_ra_mode | None |
| name | ctlplane-subnet |
| network_id | 6ca013dc-41c2-42d8-9d69-542afad53392 |
| prefix_length | None |
| project_id | a844ccfcdb2745b198dde3e1b28c40a3 |
| revision_number | 0 |
| segment_id | None |
| service_types | |
| subnetpool_id | None |
| tags | |
| updated_at | 2020-08-13T20:10:37Z |
+-------------------+-----------------------------------------------------------+
(undercloud) [stack@undercloud ~]$
(undercloud) [stack@undercloud ~]$ neutron subnet-update f45dea46-4066-42aa-a3c4-6f84b8120cab --dns-nameserver 192.168.255.253
neutron CLI is deprecated and will be removed in the future. Use openstack CLI instead.
Updated subnet: f45dea46-4066-42aa-a3c4-6f84b8120cab
(undercloud) [stack@undercloud ~]$
ááᯠáá»áœááºá¯ááºááá¯á·ááẠá á°ážá ááºážáá±á·áá¬ááẠá¡áááá·áºáá±ážááá¯ááºáá«áááºá
(undercloud) [stack@undercloud ~]$ openstack overcloud node import --introspect --provide inspection.json
Started Mistral Workflow tripleo.baremetal.v1.register_or_update. Execution ID: d57456a3-d8ed-479c-9a90-dff7c752d0ec
Waiting for messages on queue 'tripleo' with no timeout.
5 node(s) successfully moved to the "manageable" state.
Successfully registered node UUID b4b2cf4a-b7ca-4095-af13-cc83be21c4f5
Successfully registered node UUID b89a72a3-6bb7-429a-93bc-48393d225838
Successfully registered node UUID 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e
Successfully registered node UUID bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8
Successfully registered node UUID 766ab623-464c-423d-a529-d9afb69d1167
Waiting for introspection to finish...
Started Mistral Workflow tripleo.baremetal.v1.introspect. Execution ID: 6b4d08ae-94c3-4a10-ab63-7634ec198a79
Waiting for messages on queue 'tripleo' with no timeout.
Introspection of node b89a72a3-6bb7-429a-93bc-48393d225838 completed. Status:SUCCESS. Errors:None
Introspection of node 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e completed. Status:SUCCESS. Errors:None
Introspection of node bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8 completed. Status:SUCCESS. Errors:None
Introspection of node 766ab623-464c-423d-a529-d9afb69d1167 completed. Status:SUCCESS. Errors:None
Introspection of node b4b2cf4a-b7ca-4095-af13-cc83be21c4f5 completed. Status:SUCCESS. Errors:None
Successfully introspected 5 node(s).
Started Mistral Workflow tripleo.baremetal.v1.provide. Execution ID: f5594736-edcf-4927-a8a0-2a7bf806a59a
Waiting for messages on queue 'tripleo' with no timeout.
5 node(s) successfully moved to the "available" state.
(undercloud) [stack@undercloud ~]$
output ááŸáááºááœá±á·ááŒááºááá¯ááºáááºá¡ááá¯ááºáž, á¡áá¬á¡á¬ážáá¯á¶ážá¡ááŸá¬ážá¡ááœááºážáááŸááá²ááŒá®ážá á®ážáá²á·áááºá node áá»á¬ážá¡á¬ážáá¯á¶ážáááŸáááá¯ááºááá·áºá¡ááŒá±á¡áá±ááœááºááŸááááŸáá á áºáá±ážááŒáá«á áá¯á·á
(undercloud) [stack@undercloud ~]$ openstack baremetal node list
+--------------------------------------+-----------+---------------+-------------+--------------------+-------------+
| UUID | Name | Instance UUID | Power State | Provisioning State | Maintenance |
+--------------------------------------+-----------+---------------+-------------+--------------------+-------------+
| b4b2cf4a-b7ca-4095-af13-cc83be21c4f5 | control-1 | None | power off | available | False |
| b89a72a3-6bb7-429a-93bc-48393d225838 | storage-1 | None | power off | available | False |
| 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e | storage-2 | None | power off | available | False |
| bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8 | compute-1 | None | power off | available | False |
| 766ab623-464c-423d-a529-d9afb69d1167 | compute-2 | None | power off | available | False |
+--------------------------------------+-----------+---------------+-------------+--------------------+-------------+
(undercloud) [stack@undercloud ~]$
node áá»á¬ážááẠááá°áá®áá±á¬á¡ááŒá±á¡áá±ááœááºááŸááá±áá«áá áá¯á¶ááŸááºá¡á¬ážááŒáá·áº á á®áá¶ááá·áºááœá²ááá¯ááºáá±á¬á áá áºáá¯áá¯ááŸá¬ážááœááºážááœá¬ážááŒá®áž ááŸááºáááºážááá¯ááŒáá·áºáᬠá¡áááºááŒá±á¬áá·áºá€ááá¯á·ááŒá áºááœá¬ážáááºááᯠá¡ááŒá±ááŸá¬ááẠááá¯á¡ááºáá«áááºá á€á¡ááŒá±á¡áá±ááœáẠáá»áœááºá¯ááºááá¯á·ááẠvirtualization ááá¯á¡áá¯á¶ážááŒá¯áá±ááŒá®áž virtual machines ááá¯á·ááá¯áẠvbmc á¡áá¯á¶ážááŒá¯ááŒááºážááŸáá·áºáááºá ááºááá·áº áá»áœááºááœááºážáá»ááºáá»á¬ážááŸáááá¯ááºáááºááᯠáááááá«á
ááá¯á·áá±á¬ááºá áááºááá·áº node ááẠáááºááá·áº function ááᯠáá¯ááºáá±á¬ááºáááºááᯠááœáŸááºááŒááẠááá¯á¡ááºááẠ- ááá¯ááá¯áááºááŸá¬ node á¡áá¯á¶ážááŒá¯ááá·áº áááá¯ááá¯ááºááᯠáá±á¬áºááŒáá« -
(undercloud) [stack@undercloud ~]$ openstack overcloud profiles list
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
| Node UUID | Node Name | Provision State | Current Profile | Possible Profiles |
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
| b4b2cf4a-b7ca-4095-af13-cc83be21c4f5 | control-1 | available | None | |
| b89a72a3-6bb7-429a-93bc-48393d225838 | storage-1 | available | None | |
| 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e | storage-2 | available | None | |
| bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8 | compute-1 | available | None | |
| 766ab623-464c-423d-a529-d9afb69d1167 | compute-2 | available | None | |
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
(undercloud) [stack@undercloud ~]$ openstack flavor list
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
| 168af640-7f40-42c7-91b2-989abc5c5d8f | swift-storage | 4096 | 40 | 0 | 1 | True |
| 52148d1b-492e-48b4-b5fc-772849dd1b78 | baremetal | 4096 | 40 | 0 | 1 | True |
| 56e66542-ae60-416d-863e-0cb192d01b09 | control | 4096 | 40 | 0 | 1 | True |
| af6796e1-d0c4-4bfe-898c-532be194f7ac | block-storage | 4096 | 40 | 0 | 1 | True |
| e4d50fdd-0034-446b-b72c-9da19b16c2df | compute | 4096 | 40 | 0 | 1 | True |
| fc2e3acf-7fca-4901-9eee-4a4d6ef0265d | ceph-storage | 4096 | 40 | 0 | 1 | True |
+--------------------------------------+---------------+------+------+-----------+-------+-----------+
(undercloud) [stack@undercloud ~]$
node áá áºáá¯á á®á¡ááœáẠáááá¯ááá¯ááºááᯠáááºááŸááºáá«-
openstack baremetal node set --property capabilities='profile:control,boot_option:local' b4b2cf4a-b7ca-4095-af13-cc83be21c4f5
openstack baremetal node set --property capabilities='profile:ceph-storage,boot_option:local' b89a72a3-6bb7-429a-93bc-48393d225838
openstack baremetal node set --property capabilities='profile:ceph-storage,boot_option:local' 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e
openstack baremetal node set --property capabilities='profile:compute,boot_option:local' bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8
openstack baremetal node set --property capabilities='profile:compute,boot_option:local' 766ab623-464c-423d-a529-d9afb69d1167
áá»áœááºá¯ááºááá¯á·á¡á¬ážáá¯á¶áž ááŸááºáááºááŒá±á¬ááºáž á á áºáá±ážááŒáá·áºááŒáá«á áá¯á·á
(undercloud) [stack@undercloud ~]$ openstack overcloud profiles list
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
| Node UUID | Node Name | Provision State | Current Profile | Possible Profiles |
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
| b4b2cf4a-b7ca-4095-af13-cc83be21c4f5 | control-1 | available | control | |
| b89a72a3-6bb7-429a-93bc-48393d225838 | storage-1 | available | ceph-storage | |
| 20a16cc0-e0ce-4d88-8f17-eb0ce7b4d69e | storage-2 | available | ceph-storage | |
| bfc1eb98-a17a-4a70-b0b6-6c0db0eac8e8 | compute-1 | available | compute | |
| 766ab623-464c-423d-a529-d9afb69d1167 | compute-2 | available | compute | |
+--------------------------------------+-----------+-----------------+-----------------+-------------------+
(undercloud) [stack@undercloud ~]$
á¡á¬ážáá¯á¶ážááŸááºáá«áá overcloud ááᯠdeploy áá¯ááºááẠá¡áááá·áºáá±ážáá«áááºá
openstack overcloud deploy --templates --control-scale 1 --compute-scale 2 --ceph-storage-scale 2 --control-flavor control --compute-flavor compute --ceph-storage-flavor ceph-storage --libvirt-type qemu
áááá·áºááá·áºááœááºážááŸá¯áá áºáá¯ááœááºá á áááºááŒáá¯ááºáá¯á¶á á¶áááááºáá»á¬ážááᯠááá¬ááá»áá»á¡áá¯á¶ážááŒá¯áááºááŒá áºááŒá®ážá áá»áœááºá¯ááºááá¯á·áá¡ááŒá±á¡áá±ááœáẠáááºážááẠáá¯ááºáááºážá ááºááᯠáá»á¬ážá áœá¬ááŸá¯ááºááœá±ážá á±áááºááŒá áºááŒá®ážá áá¯á¶á á¶áááááºááŸá áááºážááŒááºááŸá¯áá áºáá¯á á®ááᯠááŸááºážááŒááááºááŒá áºáá«áááºá á á±á¬á á±á¬á áá±ážáá¬ážáááá¯áá²á ááá¯ážááŸááºážáá²á· áááºáááºááŸá¯áá áºáá¯áá±á¬ááºá០áááºááá¯á¡áá¯ááºáá¯ááºáááºááá¯áá¬ááᯠááááá¯ááºáá«áááá·áºáááºá
ááŸááºáá»ááº- --libvirt-type qemu variable ááẠá€ááá á¹á ááœáẠááá¯á¡ááºáááºá á¡áááºááŒá±á¬áá·áºááá¯áá±á¬áº áá»áœááºá¯ááºááá¯á·ááẠnested virtualization ááá¯á¡áá¯á¶ážááŒá¯áááºááŒá áºáá±á¬ááŒá±á¬áá·áºá ááá¯ááºáá«áá áááºááẠvirtual machines áá»á¬ážááᯠrun ááá¯ááºáááºááá¯ááºáá«á
ááᯠááá·áºááœáẠáá áºáá¬áá®ááá·áº á¡áá»áááºááŸááááºá ááá¯á·ááá¯áẠááá¯á·áááºááá¯á ááŒá áºááá¯ááºááẠ(áá¬á·ááºáá²á á áœááºážáá±á¬ááºááá¯ááºááŸá¯á¡áá±á«áºáá°áááºá) ááŸáááŒá®áž á€á¡áá»áááºááŒá®ážáá±á¬ááºááœáẠá¡á±á¬ááºáá«áááºáá±á·áá»áºááᯠáááºááŒááºááááºáá¯áᬠáá»áŸá±á¬áºááá·áºááá¯ááºáááº-
2020-08-14 08:39:21Z [overcloud]: CREATE_COMPLETE Stack CREATE completed successfully
Stack overcloud CREATE_COMPLETE
Host 192.168.255.21 not found in /home/stack/.ssh/known_hosts
Started Mistral Workflow tripleo.deployment.v1.get_horizon_url. Execution ID: fcb996cd-6a19-482b-b755-2ca0c08069a9
Overcloud Endpoint: http://192.168.255.21:5000/
Overcloud Horizon Dashboard URL: http://192.168.255.21:80/dashboard
Overcloud rc file: /home/stack/overcloudrc
Overcloud Deployed
(undercloud) [stack@undercloud ~]$
ááᯠááá·áºááœáẠáááºáá±á·áá¬á á ááºážáááºááá¯ááºááẠá áááºááŒáá·áº ááŒáá·áºá á¯á¶áá¯áá®ážáá«ážááŸááá±á¬ openstack áá¬ážááŸááºážáá áºáá¯ááŸááááºá
á¡á¬ážáá¯á¶áž áá±á¬ááºážááœááºá áœá¬ á¡áá¯ááºáá¯ááºáá±ááŒá±á¬ááºáž á á áºáá±ážááŒáá·áºáá¡á±á¬ááºá á¡áá¯á¶ážááŒá¯áá°á áááºááááºážááœáŸááºá¡á á¯ááœáẠááá¯ááºááŸá áºáá¯ááŸáááẠ- áá áºáá¯áá±á¬ stackrc (undercloud ááá¯á á®áá¶áááº) ááŸáá·áº áá¯ááá overcloudrc (overcloud ááá¯á á®áá¶ááá·áºááœá²áááºá¡ááœááº) á á¡áá±á¬ááºá¡áá¬ážá áá á áºááŒááºážá¡ááœáẠááá¯á¡ááºáá±á¬ á¡áá»ááºá¡áááºáá»á¬ážáá«áááºáá±á¬ááŒá±á¬áá·áº á€ááá¯ááºáá»á¬ážááᯠá¡áááºážá¡ááŒá áºá¡ááŒá ẠáááºááŸááºááá«áááºá
(undercloud) [stack@undercloud ~]$ openstack server list
+--------------------------------------+-------------------------+--------+-------------------------+----------------+--------------+
| ID | Name | Status | Networks | Image | Flavor |
+--------------------------------------+-------------------------+--------+-------------------------+----------------+--------------+
| fd7d36f4-ce87-4b9a-93b0-add2957792de | overcloud-controller-0 | ACTIVE | ctlplane=192.168.255.15 | overcloud-full | control |
| edc77778-8972-475e-a541-ff40eb944197 | overcloud-novacompute-1 | ACTIVE | ctlplane=192.168.255.26 | overcloud-full | compute |
| 5448ce01-f05f-47ca-950a-ced14892c0d4 | overcloud-cephstorage-1 | ACTIVE | ctlplane=192.168.255.34 | overcloud-full | ceph-storage |
| ce6d862f-4bdf-4ba3-b711-7217915364d7 | overcloud-novacompute-0 | ACTIVE | ctlplane=192.168.255.19 | overcloud-full | compute |
| e4507bd5-6f96-4b12-9cc0-6924709da59e | overcloud-cephstorage-0 | ACTIVE | ctlplane=192.168.255.44 | overcloud-full | ceph-storage |
+--------------------------------------+-------------------------+--------+-------------------------+----------------+--------------+
(undercloud) [stack@undercloud ~]$
(undercloud) [stack@undercloud ~]$ source overcloudrc
(overcloud) [stack@undercloud ~]$
(overcloud) [stack@undercloud ~]$ openstack project list
+----------------------------------+---------+
| ID | Name |
+----------------------------------+---------+
| 4eed7d0f06544625857d51cd77c5bd4c | admin |
| ee1c68758bde41eaa9912c81dc67dad8 | service |
+----------------------------------+---------+
(overcloud) [stack@undercloud ~]$
(overcloud) [stack@undercloud ~]$
(overcloud) [stack@undercloud ~]$ openstack network agent list
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
| ID | Agent Type | Host | Availability Zone | Alive | State | Binary |
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
| 10495de9-ba4b-41fe-b30a-b90ec3f8728b | Open vSwitch agent | overcloud-novacompute-1.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| 1515ad4a-5972-46c3-af5f-e5446dff7ac7 | L3 agent | overcloud-controller-0.localdomain | nova | :-) | UP | neutron-l3-agent |
| 322e62ca-1e5a-479e-9a96-4f26d09abdd7 | DHCP agent | overcloud-controller-0.localdomain | nova | :-) | UP | neutron-dhcp-agent |
| 9c1de2f9-bac5-400e-998d-4360f04fc533 | Open vSwitch agent | overcloud-novacompute-0.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| d99c5657-851e-4d3c-bef6-f1e3bb1acfb0 | Open vSwitch agent | overcloud-controller-0.localdomain | None | :-) | UP | neutron-openvswitch-agent |
| ff85fae6-5543-45fb-a301-19c57b62d836 | Metadata agent | overcloud-controller-0.localdomain | None | :-) | UP | neutron-metadata-agent |
+--------------------------------------+--------------------+-------------------------------------+-------------------+-------+-------+---------------------------+
(overcloud) [stack@undercloud ~]$
áá»áœááºá¯ááºáá¯ááºáá±á¬ááºáá±áá±á¬ á ááºááẠááá°áá®áá±á¬ ááœááºáááºáá áºáá¯áá±á«áºááœáẠááŸááá±áá±á¬ááŒá±á¬áá·áº áá»áœááºá¯ááºááááºáááºááŸá¯ááœáẠáá±ážáááºáá±á¬ááááœá±á·ááŸá¯áá áºáᯠááá¯á¡ááºáá«áá±ážáááºá áá«ááá¯áá¯ááºááá¯á·á á¡áá°-á á®áá¶ááá·áºááœá²áá°á¡áá±á¬áá·áºá¡á±á¬ááºááŸá control-1 ááá¯ááœá¬ážááŒá®áž áááºážááŒá±á¬ááºážááᯠá á¬áááºážááœááºážáá«á
(undercloud) [stack@undercloud ~]$ ssh [email protected]
Last login: Fri Aug 14 09:47:40 2020 from 192.168.255.1
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo ip route add 10.169.0.0/16 via 192.168.255.254
áá²á á¡áᯠááá¯ážáá¯ááºá ááºááá¯ááºážáá²ááᯠáá±á¬ááºááœá¬ážááá¯ááºáááºá á¡áá»ááºá¡áááºá¡á¬ážáá¯á¶áž - ááááºá á¬áá»á¬ážá á¡áá±á¬áá·áºáááºááŒááºážááŸáá·áº á áá¬ážááŸááºáá»á¬áž - ááá¯áẠ/home/stack/overcloudrc ááœááºááŸááááºá áá±á¬ááºáá¯á¶ážáá¯á¶ááá¹áááºááẠá€áá²á·ááá¯á·ááŒá áºáááº-
á
áá¬ážáá
ááºá áá»áœááºá¯ááºááá¯á·á áááºáááºááŸá¯ááœááºá á
ááºááááºá
á¬áá»á¬ážááᯠDHCP ááŸáá
áºááá·áº áá¯ááºáá±ážáá²á·ááŒá®áž áááºááŒááºááá·áºá¡ááá¯ááºáž áááºážááá¯á·ááᯠ"áá»áááºáž" áá¯ááºáá±ážáá«áááºá ááá¯á¡ááºáá«á ááŒáá·áºáá»ááºá
ááºá¡ááœááºáž áááºááá·áºá
ááºááœáẠááááºá
á¬ááá·áºááœááºážááá·áºáááºááᯠáá¯á¶á
á¶áááááºááœáẠááẠáááááá»áá» áááºááŸááºááá¯ááºáá«áááºá
virtual machines áá»á¬ážá¡ááŒá¬áž áááºážááŒá±á¬ááºáž áááºááá¯á·á á®ážáááºážááááºážá
á€áá±á¬ááºážáá«ážááœáẠááŒááºáááºážááœá¬ážáá¬ááŸá¯á¡ááœáẠááœá±ážáá»ááºá áá¬áá¯á¶ážáá¯ááᯠáá±á·áá¬áá«áááºá
- L2 ááœááºáááºáá áºáá¯ááŸá hypervisor áá áºáá¯ááœáẠá ááºááŸá áºáá¯á¶áž
- áá°áá®áá±á¬ L2 ááœááºáááºááŸá ááá°áá®áá±á¬ hypervisor áá»á¬ážááœáẠá ááºááŸá áºáá¯á¶áž
- ááá°áá®áá±á¬ ááœááºáááºáá»á¬ážááœáẠá ááºááŸá áºáᯠ(ááœááºáááºááŒááºáá»á±á¬áºááŒááºáž)
ááŒááºáááœááºáááºááŸáá áºááá·áº ááŒááºáááá¹áá¬ááá¯á· áááºáá±á¬ááºááá¯ááºááá·áºááá á¹á áá»á¬ážá áá±áá±á«áºááááºá á¬áá»á¬ážá¡ááŒáẠááŒáá·áºáá±áááºážááŒá±á¬ááºážáááºážááŒá±á¬ááºážááᯠá¡áá¯á¶ážááŒá¯áá¬á áá»áœááºá¯ááºááá¯á·ááẠáá±á¬ááºáá áºááŒáááºááœáẠááá·áºááœááºážá ááºážá á¬ážááœá¬ážáááºááŒá áºááŒá®ážá ááá¯á¡áá«ááœáẠáá»áœááºá¯ááºááá¯á·ááẠááŒááºááœááºážá¡ááœá¬ážá¡áá¬ááᯠá¡á¬áá¯á¶á áá¯ááºáá«áááºá
á á áºáá±ážáááºá á¡á±á¬ááºáá«áá¯á¶ááŒááºážááᯠáá±á«ááºážááá·áºááŒáá«á áá¯á·á
áá»áœááºá¯ááºááá¯á·ááẠvirtual machine 4 áᯠáááºáá®ážáá¬ážááẠ- L3 network áá
áºáá¯ááœáẠ2 áᯠ- net-1 ááŸáá·áº net-1 network ááœáẠáá±á¬ááºááẠ2 áá¯
(overcloud) [stack@undercloud ~]$ nova list --tenant 5e18ce8ec9594e00b155485f19895e6c
+--------------------------------------+------+----------------------------------+--------+------------+-------------+-----------------+
| ID | Name | Tenant ID | Status | Task State | Power State | Networks |
+--------------------------------------+------+----------------------------------+--------+------------+-------------+-----------------+
| f53b37b5-2204-46cc-aef0-dba84bf970c0 | vm-1 | 5e18ce8ec9594e00b155485f19895e6c | ACTIVE | - | Running | net-1=10.0.1.85 |
| fc8b6722-0231-49b0-b2fa-041115bef34a | vm-2 | 5e18ce8ec9594e00b155485f19895e6c | ACTIVE | - | Running | net-1=10.0.1.88 |
| 3cd74455-b9b7-467a-abe3-bd6ff765c83c | vm-3 | 5e18ce8ec9594e00b155485f19895e6c | ACTIVE | - | Running | net-1=10.0.1.90 |
| 7e836338-6772-46b0-9950-f7f06dbe91a8 | vm-4 | 5e18ce8ec9594e00b155485f19895e6c | ACTIVE | - | Running | net-2=10.0.2.8 |
+--------------------------------------+------+----------------------------------+--------+------------+-------------+-----------------+
(overcloud) [stack@undercloud ~]$
áááºáá®ážáá¬ážáá±á¬ á ááºáá»á¬ážááẠáááºááá·áº hypervisors áá»á¬ážáá±á«áºááœáẠááŸááá±áááºááᯠááŒáá·áºááŒáá«á áá¯á·á
(overcloud) [stack@undercloud ~]$ nova show f53b37b5-2204-46cc-aef0-dba84bf970c0 | egrep "hypervisor_hostname|instance_name|hostname"
| OS-EXT-SRV-ATTR:hostname | vm-1 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | overcloud-novacompute-0.localdomain |
| OS-EXT-SRV-ATTR:instance_name | instance-00000001 |
(overcloud) [stack@undercloud ~]$ nova show fc8b6722-0231-49b0-b2fa-041115bef34a | egrep "hypervisor_hostname|instance_name|hostname"
| OS-EXT-SRV-ATTR:hostname | vm-2 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | overcloud-novacompute-1.localdomain |
| OS-EXT-SRV-ATTR:instance_name | instance-00000002 |
(overcloud) [stack@undercloud ~]$ nova show 3cd74455-b9b7-467a-abe3-bd6ff765c83c | egrep "hypervisor_hostname|instance_name|hostname"
| OS-EXT-SRV-ATTR:hostname | vm-3 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | overcloud-novacompute-0.localdomain |
| OS-EXT-SRV-ATTR:instance_name | instance-00000003 |
(overcloud) [stack@undercloud ~]$ nova show 7e836338-6772-46b0-9950-f7f06dbe91a8 | egrep "hypervisor_hostname|instance_name|hostname"
| OS-EXT-SRV-ATTR:hostname | vm-4 |
| OS-EXT-SRV-ATTR:hypervisor_hostname | overcloud-novacompute-1.localdomain |
| OS-EXT-SRV-ATTR:instance_name | instance-00000004 |
(overcloud) [stack@undercloud ~]$
á
áẠvm-1 ááŸáá·áº vm-3 ááẠcompute-0 ááœááºáááºááŸáááŒá®áž machine vm-2 ááŸáá·áº vm-4 áá»á¬ážááẠnode compute-1 ááœááºáááºááŸááááºá
ááá¯á·á¡ááŒááºá áááºááŸááºáá¬ážáá±á¬ ááœááºáááºáá»á¬ážááŒá¬ážááœáẠáááºážááŒá±á¬ááºážááŒá±á¬ááºážááŒááºážááᯠááœáá·áºááẠvirtual router áá áºáá¯ááᯠáááºáá®ážáá¬ážáááº-
(overcloud) [stack@undercloud ~]$ openstack router list --project 5e18ce8ec9594e00b155485f19895e6c
+--------------------------------------+----------+--------+-------+-------------+-------+----------------------------------+
| ID | Name | Status | State | Distributed | HA | Project |
+--------------------------------------+----------+--------+-------+-------------+-------+----------------------------------+
| 0a4d2420-4b9c-46bd-aec1-86a1ef299abe | router-1 | ACTIVE | UP | False | False | 5e18ce8ec9594e00b155485f19895e6c |
+--------------------------------------+----------+--------+-------+-------------+-------+----------------------------------+
(overcloud) [stack@undercloud ~]$
Router ááœáẠááœááºáááºáá»á¬ážá¡ááœáẠáá¶áá«ážáá±á«ááºáá»á¬ážá¡ááŒá Ạáá¯ááºáá±á¬ááºááá·áº virtual port ááŸá áºáá¯ááŸááááºá
(overcloud) [stack@undercloud ~]$ openstack router show 0a4d2420-4b9c-46bd-aec1-86a1ef299abe | grep interface
| interfaces_info | [{"subnet_id": "2529ad1a-6b97-49cd-8515-cbdcbe5e3daa", "ip_address": "10.0.1.254", "port_id": "0c52b15f-8fcc-4801-bf52-7dacc72a5201"}, {"subnet_id": "335552dd-b35b-456b-9df0-5aac36a3ca13", "ip_address": "10.0.2.254", "port_id": "92fa49b5-5406-499f-ab8d-ddf28cc1a76c"}] |
(overcloud) [stack@undercloud ~]$
áá«áá±ááá·áº traffic á á®ážáááºážáá¯á¶ááᯠáááŒáá·áºáááºááŸá¬ control node (ááœááºááẠnode áá áºáá¯áááºážááŒá áºáá²á·) áá²á· compute node áá±á«áºááŸá¬ áááºááŸáááŸá¬ ááŸááá±áá²á· á¡áá¬ááœá±ááᯠááŒáá·áºááŒáá¡á±á¬ááºá compute node áá²á·á ááŒáá¡á±á¬ááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-vsctl show
[heat-admin@overcloud-novacompute-0 ~]$ sudo sudo ovs-appctl dpif/show
system@ovs-system: hit:3 missed:3
br-ex:
br-ex 65534/1: (internal)
phy-br-ex 1/none: (patch: peer=int-br-ex)
br-int:
br-int 65534/2: (internal)
int-br-ex 1/none: (patch: peer=phy-br-ex)
patch-tun 2/none: (patch: peer=patch-int)
br-tun:
br-tun 65534/3: (internal)
patch-int 1/none: (patch: peer=patch-tun)
vxlan-c0a8ff0f 3/4: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.19, remote_ip=192.168.255.15)
vxlan-c0a8ff1a 2/4: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.19, remote_ip=192.168.255.26)
[heat-admin@overcloud-novacompute-0 ~]$
áá±á¬áá±á¬áááºááœááºá node ááœáẠbr-intá br-tuná br-ex áá¯á¶ážáá¯ááŸááááºá áááºážááá¯á·ááŒá¬ážááœááºá áá»áœááºá¯ááºááá¯á·ááŒááºáááá·áºá¡ááá¯ááºáž á¡ááºáá¬áá±á·á áºá¡á á¯áá áºáá¯ááŸááááºá áá¬ážáááºáááœááºáá°á á±áááºá á€á¡ááºáá¬áá±á·á áºá¡á¬ážáá¯á¶ážááᯠáá¯á¶ááŒááºážáá±á«áºááœáẠáá¯á¶áá±á¬áºááŒá®áž áá¬ááŒá áºáááºááᯠááŒáá·áºááŒáá«á áá¯á·á
VxLAN á¥áááºáá»á¬ážááᯠááŒáŸáá·áºáááºáá±ážááá·áº ááááºá
á¬áá»á¬ážááᯠááŒáá·áºááŒááºážááŒáá·áº á¥áááºáá
áºáá¯á¡á¬áž compute-1 (192.168.255.26) ááá¯á· ááŒáŸáá·áºáááºáá¬ážááŒá±á¬ááºážá áá¯áááá¥áááºááá¯ááºáá±á«ááºážááẠcontrol-1 (192.168.255.15) ááá¯á· ááŒá±á¬ááºážáá²áá¬ážáááºááᯠááœá±á·ááŒááºááá¯ááºáááºá áá«áá±ááá·áº á
áááºáááºá
á¬ážá
áá¬á¡áá±á¬ááºážáá¯á¶ážááá±á¬á· br-ex ááŸá¬ áá¯ááºááá¯ááºážááá¯ááºáᬠinterface ááœá± ááá«ááŸááá¬ááŒá±á¬áá·áº ááẠflows ááœá±ááᯠconfigure áá¯ááºáá¬ážáá²ááá¯áá¬ááᯠááŒáá·áºáááºááá¯ááẠáá®áá¶áá¬ážáᬠáááºááŸáá¡áá»áááºááŸá¬áá² traffic ááᯠáá»áááºážááœá¬ážá
á±ááá¯ááºáá¬ááᯠááœá±á·ááá¯ááºáá«áááºá
[heat-admin@overcloud-novacompute-0 ~]$ ifconfig eth0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1450
inet 192.168.255.19 netmask 255.255.255.0 broadcast 192.168.255.255
inet6 fe80::5054:ff:fe6a:eabe prefixlen 64 scopeid 0x20<link>
ether 52:54:00:6a:ea:be txqueuelen 1000 (Ethernet)
RX packets 2909669 bytes 4608201000 (4.2 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1821057 bytes 349198520 (333.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[heat-admin@overcloud-novacompute-0 ~]$
output ááŸáááºááœá±á·ááŒááºááá¯ááºáááºá¡ááá¯ááºážá ááááºá á¬áááºáá¯ááºááá¯ááºážááá¯ááºáᬠport ááá¯á·ááá¯ááºááá¯ááºááœá²ááœá¬ážáááºáá virtual bridge interface ááá¯á·ááá¯ááºáá±á
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-appctl fdb/show br-ex
port VLAN MAC Age
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl dump-flows br-ex
cookie=0x9169eae8f7fe5bb2, duration=216686.864s, table=0, n_packets=303, n_bytes=26035, priority=2,in_port="phy-br-ex" actions=drop
cookie=0x9169eae8f7fe5bb2, duration=216686.887s, table=0, n_packets=0, n_bytes=0, priority=0 actions=NORMAL
[heat-admin@overcloud-novacompute-0 ~]$
áááá
ááºážáá»ááºážá¡á phy-br-ex port ááŸáá¬áá±á¬á¡áá¬á¡á¬ážáá¯á¶ážááᯠá
áœáá·áºáá
áºááá«áááºá
á¡ááŸááºáá±á¬á·á á€áá¶áá¬ážááá¯á· á¡ááœá¬ážá¡áá¬áá»á¬ážáá¬ááẠáá±á¬áá±á¬áááºááœáẠဠinterface (br-int ááŸáá·áº interface) ááŸááœá²á á¡ááŒá¬ážáááºááá·áºáá±áá¬á០áááŸááá±á¬á·áá² á¡á
ááºá¡ááŒá±á¬ááºá¡á¬ážááŒáá·áº BUM á¡ááœá¬ážá¡áá¬ááẠáá¶áá¬ážáá²ááá¯á· áá»á¶ááœá¬ážáá±ááŒá®ááŒá
áºáááºá
ááá¯ááá¯áááºááŸá¬ á¡ááœá¬ážá¡áá¬áá»á¬ážááẠဠnode ááᯠVxLAN tunnel ááŸáááá·áºáᬠááœááºááœá¬ážááá¯ááºááŒá®áž á¡ááŒá¬ážáááºááá·áºá¡áá¬á០áááŸááá«á ááá¯á·áá±á¬áºá áááºááẠDVR ááá¯ááœáá·áºáá«á á¡ááŒá±á¡áá±ááŒá±á¬ááºážáááºááŒá áºáá±á¬áºáááºáž áááºážááᯠáá±á¬ááºáá áºááŒááẠááá¯ááºááœááºááŒá±ááŸááºážáá«áááºá á¥ááá¬á¡á¬ážááŒáá·áº ááœááºáááºá¡áá®ážáá»ááºááŒááºážááᯠá¡áá¯á¶ážááŒá¯ááá·áºá¡áá«á á¥ááᬠvlans ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á áááºááẠvlan 3 ááœáẠL0 interface áá áºáá¯ááá¯ááºáá±á¬áºáááºáž á¡ááºáá¬áá±á·á áºáá»á¬ážá áœá¬ááŸááááºá ááá¯á·áá±á¬áºá VxLAN á¡ááœá¬ážá¡áá¬ááẠáá°áá®áá±á¬áááºážáááºážááŒáá·áº node ááá¯áá»ááºáá¬ážáááºááŒá áºááŒá®áž áá®ážááŒá¬áž vlan áá áºáá»áá¯ážáá»áá¯ážááœááºáááºáž ááá·áºááœááºážáá¬ážáááºá
áá»áœááºá¯ááºááá¯á·ááẠcompute node ááá¯ááœá²áá¯ááºááŒá®áž control node ááá¯á·áááºááœá¬ážááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-appctl dpif/show
system@ovs-system: hit:930491 missed:825
br-ex:
br-ex 65534/1: (internal)
eth0 1/2: (system)
phy-br-ex 2/none: (patch: peer=int-br-ex)
br-int:
br-int 65534/3: (internal)
int-br-ex 1/none: (patch: peer=phy-br-ex)
patch-tun 2/none: (patch: peer=patch-int)
br-tun:
br-tun 65534/4: (internal)
patch-int 1/none: (patch: peer=patch-tun)
vxlan-c0a8ff13 3/5: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.15, remote_ip=192.168.255.19)
vxlan-c0a8ff1a 2/5: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.15, remote_ip=192.168.255.26)
[heat-admin@overcloud-controller-0 ~]$
á¡ááŸááºáá±á¬á·á á¡áá¬á¡á¬ážáá¯á¶ážá á¡áá°áá°áá«áá²ááá¯á· ááŒá±á¬ááá¯ááºáá±ááá·áº IP ááááºá á¬áᬠáá¯ááºááá¯ááºážááá¯ááºáᬠá¡ááºáá¬áá±á·á áºááŸá¬ ááá¯ááºáá±á¬á·áá² virtual Bridge áá±á«áºááŸá¬ ááŸááá±áá«áááºá á€ááááºáááºážááẠááŒááºáááá¹áá¬ááá¯á· á¡ááœá¬ážá¡áá¬ááœááºááá·áº ááááºáááºážááŒá áºáá±á¬ááŒá±á¬áá·áº á€á¡áá¬ááẠááŒá®ážáá«áááºá
[heat-admin@overcloud-controller-0 ~]$ ifconfig br-ex
br-ex: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1450
inet 192.168.255.15 netmask 255.255.255.0 broadcast 192.168.255.255
inet6 fe80::5054:ff:fe20:a22f prefixlen 64 scopeid 0x20<link>
ether 52:54:00:20:a2:2f txqueuelen 1000 (Ethernet)
RX packets 803859 bytes 1732616116 (1.6 GiB)
RX errors 0 dropped 63 overruns 0 frame 0
TX packets 808475 bytes 121652156 (116.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-appctl fdb/show br-ex
port VLAN MAC Age
3 100 28:c0:da:00:4d:d3 35
1 0 28:c0:da:00:4d:d3 35
1 0 52:54:00:98:e9:d6 0
LOCAL 0 52:54:00:20:a2:2f 0
1 0 52:54:00:2c:08:9e 0
3 100 52:54:00:20:a2:2f 0
1 0 52:54:00:6a:ea:be 0
[heat-admin@overcloud-controller-0 ~]$
á€ááááºáááºážááẠbr-ex áá¶áá¬ážááŸáá·áº áá»áááºáááºáá¬ážááŒá®áž áááºážááœáẠvlan áááºáá»á¬ážáááŸááá±á¬ááŒá±á¬áá·áºá ဠport ááẠvlans á¡á¬ážáá¯á¶ážááá¯ááœáá·áºááŒá¯áá¬ážááá·áº trunk port áá áºáá¯ááŒá áºááŒá®ážá ááá¯á¡áá«ááœáẠvlan-id 0 ááœááºáá±á¬áºááŒáá¬ážááá·áºá¡ááá¯ááºáž traffic ááẠtag ááá«áá² á¡ááŒááºááá¯á·ááœááºááœá¬ážáááºá á¡áá±á«áºá output ááá¯á
ááá¯á¡áá»áááºááœáẠá¡ááŒá¬ážá¡áá¬á¡á¬ážáá¯á¶ážááẠáá°áá®áá±á¬áá¶áá¬ážáá»á¬ážá áá°áá®áá±á¬ tunnels áá»á¬ážááẠcompute node ááŸá
áºáá¯ááŸáá·áº áááºáá°áááºá
á€áá±á¬ááºážáá«ážááœáẠstorage node áá»á¬ážááá¯áá»áœááºá¯ááºááá¯á·ááá·áºááœááºážá ááºážá á¬ážáááºááá¯ááºáá±á¬áºáááºáž áá¬ážáááºáááºá¡ááœáẠဠnode áá»á¬ážáááœááºáááºá¡á áááºá¡ááá¯ááºážááẠá¡ááŸááºáá áá¬á¡áá banal ááŒá áºáááºáá¯ááá¯ááẠááá¯á¡ááºáá«áááºá áá»áœááºá¯ááºááá¯á·áááá á¹á ááœááºá áááºážááœááºáááºááŸááºáá±ážáá¬ážáá±á¬ IP ááááºá á¬áá áºáá¯áá«ááŸááá±á¬áá¯ááºááá¯ááºážááá¯ááºáᬠport (eth0) áá áºáá¯áá¬ááŸááááºá áá«áááºááŒá áºáá«áááºá VxLAN á¥áááºááá¯ááºáá±á«ááºážáá»á¬ážá á¥áááºáá¶áá¬ážáá»á¬áž á áááºááá¯á·áááŸááá« - áááºážááœááºá¡áá»ááºáááŸááá±á¬ááŒá±á¬áá·áº ovs áá¯á¶ážááááŸááá«á network isolation ááá¯á¡áá¯á¶ážááŒá¯áá±á¬á¡áá«á ဠnode ááœáẠá¡ááºáá¬áá±á·á áºááŸá áºáᯠ(áá¯ááºááá¯ááºážááá¯ááºáᬠááá¯á·ááºáá»á¬ážá bodny ááá¯á·ááá¯áẠvlan ááŸá áºáá¯áá¬ááŸáááẠ- á¡áá±ážáááŒá®ážáá« - áááºááá¯áá»ááºááá·áºá¡áá±á«áºáá°áááºá) - á á®áá¶ááá·áºááœá²ááŸá¯á¡ááœááºá áá¯ááááá áºáá¯ááẠtraffic (VM disk ááá¯á·á á¬áá±ážááŒááºáž áá áºááŸáááºááŒááºáž á áááºááŒáá·áº)
áááºáá±á¬ááºááŸá¯áá áºá á¯á¶áá áºáá¬áááŸááááŒáá·áº áá»áœááºá¯ááºááá¯á·ááẠnode áá»á¬ážáá±á«áºááœáẠá¡áááºá¡áá¬ááŸááááºááᯠáá»áœááºá¯ááºááá¯á· ááŸá¬ááœá±ááœá±á·ááŸááá²á·áááºá ááᯠvirtual machine 4 áá¯ááá¯ááœáá·áºááŒá®áž á¡áá±á«áºááŸá¬áá±á¬áºááŒáá¬ážáá²á· scheme á áááºááá¯ááŒá±á¬ááºážáá²ááœá¬ážáá²ááá¯áá¬ááŒáá·áºáá¡á±á¬áẠ- áá»áœááºá¯ááºááá¯á·ááŸá¬ ports ááœá±á virtual router ááœá± á áááºááá¯á·ááŸáááá·áºáááºá
ááá¯á¡áá»áááºá¡áá áá»áœááºá¯ááºááá¯á·áááœááºáááºááẠá€áá²á·ááá¯á·ááŒá áºáá±áááº-
ááœááºáá»á°áᬠnode áá
áºáá¯á
á®ááœáẠvirtual machine ááŸá
áºáá¯ááŸááááºá á¥ááá¬áá
áºáá¯á¡áá±ááŒáá·áº compute-0 ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŒáá·áº á¡áá¬á¡á¬ážáá¯á¶ážáá«áááºáá¯á¶ááᯠááŒáá·áºááŒáá«á
áá¯á·á
[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh list
Id Name State
----------------------------------------------------
1 instance-00000001 running
3 instance-00000003 running
[heat-admin@overcloud-novacompute-0 ~]$
á ááºááœáẠvirtual interface áá áºáá¯áá¬ááŸáááẠ- tap95d96a75-a0
[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh domiflist instance-00000001
Interface Type Source Model MAC
-------------------------------------------------------
tap95d96a75-a0 bridge qbr95d96a75-a0 virtio fa:16:3e:44:98:20
[heat-admin@overcloud-novacompute-0 ~]$
á€á¡ááºáá¬áá±á·á áºááẠlinux áá¶áá¬ážááœááºááœá±á·ááááº-
[heat-admin@overcloud-novacompute-0 ~]$ sudo brctl show
bridge name bridge id STP enabled interfaces
docker0 8000.0242904c92a8 no
qbr5bd37136-47 8000.5e4e05841423 no qvb5bd37136-47
tap5bd37136-47
qbr95d96a75-a0 8000.de076cb850f6 no qvb95d96a75-a0
tap95d96a75-a0
[heat-admin@overcloud-novacompute-0 ~]$
output ááŸáááºááœá±á·ááŒááºááá¯ááºáááºá¡ááá¯ááºáž Bridge ááœáẠinterface ááŸá áºáá¯áá¬ááŸáááẠ- tap95d96a75-a0 ááŸáá·áº qvb95d96a75-a0 á
á€ááœáẠOpenStack ááŸá virtual ááœááºáááºá ááºáá á¹á ááºážá¡áá»áá¯ážá¡á á¬ážáá»á¬ážáá±á«áºááœáẠá¡áááºážáááºáá±ááá¯ááºááá»áá¯ážáááºáá«áááºá
vtap - instance (VM) ááŸáá·áº áá°ážááœá²áá¬ážáá±á¬ virtual interface
qbr - Linux áá¶áá¬áž
qvb ááŸáá·áº qvo - vEth á¡ááœá²ááẠLinux áá¶áá¬ážááŸáá·áº áá»áááºáááºáá¬ážááŒá®áž vSwitch áá¶áá¬ážááá¯ááœáá·áºáá«á
br-intá br-tuná br-vlan â vSwitch áá¶áá¬ážáá»á¬ážááá¯ááœáá·áºáá«á
patch-á int-br-á phy-br- - áá¶áá¬ážáá»á¬ážááá¯áá»áááºáááºááá·áº vSwitch patch interfaces ááá¯ááœáá·áºáá«
qg, qr, ha, fg, sg - OVS ááŸáá·áºáá»áááºáááºááẠvirtual á ááºáá á¹á ááºážáá»á¬ážááŸá¡áá¯á¶ážááŒá¯áá±á¬ vSwitch á¡áá±á«ááºáá»á¬ážááá¯ááœáá·áºáá«
áááºáá¬ážáááºááá·áºá¡ááá¯ááºážá áá»áœááºá¯ááºááá¯á·ááœáẠvEth á¡ááœá²ááŒá áºááá·áº áá¶áá¬ážááœáẠqvb95d96a75-a0 ááááºáááºážáá áºáá¯ááŸááááºááá¯áá»áŸááºá áá áºáá±áá¬áá¬ááœáẠáá¯áá¹áááááºážá¡á¬ážááŒáá·áº qvo95d96a75-a0 áá¯áá±á«áºááá·áºááá·áº áááºážáááœá²áááºááŸááááºá OVS ááŸá¬ ááẠport ááœá±ááŸááá² ááŒáá·áºáá¡á±á¬ááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo sudo ovs-appctl dpif/show
system@ovs-system: hit:526 missed:91
br-ex:
br-ex 65534/1: (internal)
phy-br-ex 1/none: (patch: peer=int-br-ex)
br-int:
br-int 65534/2: (internal)
int-br-ex 1/none: (patch: peer=phy-br-ex)
patch-tun 2/none: (patch: peer=patch-int)
qvo5bd37136-47 6/6: (system)
qvo95d96a75-a0 3/5: (system)
br-tun:
br-tun 65534/3: (internal)
patch-int 1/none: (patch: peer=patch-tun)
vxlan-c0a8ff0f 3/4: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.19, remote_ip=192.168.255.15)
vxlan-c0a8ff1a 2/4: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.19, remote_ip=192.168.255.26)
[heat-admin@overcloud-novacompute-0 ~]$
áá»áœááºá¯ááºááá¯á·ááŒááºááá¯ááºáááºá¡ááá¯ááºážá ááááºáááºážááẠbr-int ááœááºááŸááááºá Br-int ááẠvirtual machine ports áá»á¬ážááá¯á¡áá¯á¶ážáááºááá·áº switch áá áºáá¯á¡áá±ááŒáá·áºáá¯ááºáá±á¬ááºáááºá qvo95d96a75-a0 á¡ááŒááºá port qvo5bd37136-47 ááᯠá¡ááœááºááœáẠááŒááºááá¯ááºáááºá áááºážááẠáá¯ááá virtual machine ááá¯á· port ááŒá áºáááºá ááááºá¡áá±ááŒáá·áºá áá»áœááºá¯ááºááá¯á·á áá¯á¶ááŒááºážááẠááᯠá€áá²á·ááá¯á· ááŒá áºáááº-
á¡á¬áá¯á¶á
á°ážá
áá¯ááºáááºááŸá¯áá°ááᯠáá»ááºáá»ááºážá
áááºáááºá
á¬ážá
á±ááá·áº áá±ážááœááºážáá
áºáᯠ- virtual machine port ááŸáá·áº OVS port á¡ááŒá¬áž linux áá¶áá¬ážá áá¬áá²? á¡ááŸááºááŸá¬ á
ááºááá¯áá¬ááœááºáááºá¡ááœáẠiptables áá»á¬ážáááºáá¬ááŸáááá¯áá±á¬ áá¯á¶ááŒá¯á¶áá±ážá¡ááœá²á·áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áá¬ážáááºá OVS ááẠiptables áá»á¬ážááŸáá·áº á¡áá¯ááºááá¯ááºáá±á¬ááŒá±á¬áá·áº ဠ"crutch" ááᯠáá®ááœááºáá²á·áááºá ááá¯á·áá±á¬áºá áááºážááẠá¡áá¯á¶ážáááŒá¯áá±á¬á·áá² ááŒá
áºáá¬ááẠ- áááºážááᯠá¡áá
áºááœááºááŸááá¬ážáá±á¬ conntrack ááŒáá·áº á¡á
á¬ážááá¯ážáá±áááºá
ááá¯ááá¯áááºááŸá¬á á¡áá¯á¶ážá áœááºáá±á¬á¡á á®á¡á á¥áºáááºá€áá²á·ááá¯á·ááŒá áºáááº-
L2 ááœááºáááºáá áºáá¯ááŸá hypervisor áá áºáá¯ááœáẠá ááºááŸá áºáá¯á¶áž
ဠVM ááŸá áºáá¯ááẠáá°áá®áá±á¬ L2 ááœááºáááºáá±á«áºááœáẠáááºááŸáááŒá®áž áá°áá®áá±á¬ hypervisor ááœáẠáááºááŸááá±á¬ááŒá±á¬áá·áºá á ááºááŸá áºáá¯áá¯á¶ážááẠáá°áá®áá±á¬ VLAN ááœááºááŸááááºááŒá áºáá±á¬ááŒá±á¬áá·áº áááºážááá¯á·ááŒá¬ážááŸá á¡ááœá¬ážá¡áá¬áá»á¬ážááẠbr-int ááŸáááá·áº ááŒááºááœááºážá áá¯áá¹áááááºážáá»áá» á á®ážáááºážááœá¬ážáááºááŒá áºáá«áááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh domiflist instance-00000001
Interface Type Source Model MAC
-------------------------------------------------------
tap95d96a75-a0 bridge qbr95d96a75-a0 virtio fa:16:3e:44:98:20
[heat-admin@overcloud-novacompute-0 ~]$
[heat-admin@overcloud-novacompute-0 ~]$
[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh domiflist instance-00000003
Interface Type Source Model MAC
-------------------------------------------------------
tap5bd37136-47 bridge qbr5bd37136-47 virtio fa:16:3e:83:ad:a4
[heat-admin@overcloud-novacompute-0 ~]$
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-appctl fdb/show br-int
port VLAN MAC Age
6 1 fa:16:3e:83:ad:a4 0
3 1 fa:16:3e:44:98:20 0
[heat-admin@overcloud-novacompute-0 ~]$
áá°áá®áá±á¬ L2 ááœááºáááºááŸá ááá°áá®áá±á¬ hypervisor áá»á¬ážááœáẠá ááºááŸá áºáá¯á¶áž
áá°áá®áá±á¬ L2 ááœááºáááºááŸá á ááºááŸá áºáá¯á¶ážááŒá¬ážááŸá áááºážááŒá±á¬ááºážááẠáááºááá¯á·áááºáá¯á¶ááœá¬ážáááºááᯠááŒáá·áºááá¯ááºááŒá áá¯á·á ááá¯á·áá±á¬áº ááá°áá®áá±á¬ hypervisors áá»á¬ážáá±á«áºááœáẠáááºááŸááááºá ááá¯ážááá¯ážáá¬ážáá¬ážááŒá±á¬áááẠáá¬ááŸá¡áá»á¬ážááŒá®ážááŒá±á¬ááºážáá²ááœá¬ážááŸá¬ááá¯ááºáá°ážá hypervisors ááœá±ááŒá¬ážá á¡ááœá¬ážá¡áá¬á vxlan á¥áááºááá¯ááºáá±á«ááºážááá¯ááŒááºááœá¬ážáááá·áºáááºá á¥ááá¬áá áºáá¯ááá¯ááŒáá·áºáá¡á±á¬ááºá
áá»áœááºá¯ááºááá¯á·ááẠá¡ááœá¬ážá¡áá¬ááᯠááŒáá·áºááŸá¯ááá·áº ááŒá¬ážááŸá virtual machines ááááºá á¬áá»á¬áž-
[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh domiflist instance-00000001
Interface Type Source Model MAC
-------------------------------------------------------
tap95d96a75-a0 bridge qbr95d96a75-a0 virtio fa:16:3e:44:98:20
[heat-admin@overcloud-novacompute-0 ~]$
[heat-admin@overcloud-novacompute-1 ~]$ sudo virsh domiflist instance-00000002
Interface Type Source Model MAC
-------------------------------------------------------
tape7e23f1b-07 bridge qbre7e23f1b-07 virtio fa:16:3e:72:ad:53
[heat-admin@overcloud-novacompute-1 ~]$
áá»áœááºá¯ááºááá¯á·ááẠcompute-0 ááœáẠbr-int ááŸá forwarding table ááá¯ááŒáá·áºáááº-
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-appctl fdb/show br-int | grep fa:16:3e:72:ad:53
2 1 fa:16:3e:72:ad:53 1
[heat-admin@overcloud-novacompute-0 ~]
áááºážááŒá±á¬ááºáž 2 ááá¯á·ááœá¬ážááá·áºááẠ- áááºážáááºáááºááá·áºááááºáááºážá¡áá»áá¯ážá¡á á¬ážááŒá áºáááºááá¯ááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:7e:7f:28:1f:bd:54
2(patch-tun): addr:0a:bd:07:69:58:d9
3(qvo95d96a75-a0): addr:ea:50:9a:3d:69:58
6(qvo5bd37136-47): addr:9a:d1:03:50:3d:96
LOCAL(br-int): addr:1a:0f:53:97:b1:49
[heat-admin@overcloud-novacompute-0 ~]$
áááºážááẠpatch-tun ááŒá áºááŒá®ážá ááá¯ááá¯áááºááŸá¬ br-tun ááŸá interface ááŒá áºáááºá br-tun áá±á«áºááŸá áááºáá±á·áá»áº áá¬ááŒá áºááœá¬ážáá² ááŒáá·áºáá¡á±á¬ááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl dump-flows br-tun | grep fa:16:3e:72:ad:53
cookie=0x8759a56536b67a8e, duration=1387.959s, table=20, n_packets=1460, n_bytes=138880, hard_timeout=300, idle_age=0, hard_age=0, priority=1,vlan_tci=0x0001/0x0fff,dl_dst=fa:16:3e:72:ad:53 actions=load:0->NXM_OF_VLAN_TCI[],load:0x16->NXM_NX_TUN_ID[],output:2
[heat-admin@overcloud-novacompute-0 ~]$
áááºáá±á·áá»áºááᯠVxLAN ááœááºáá¯ááºááá¯ážááŒá®áž port 2 ááá¯á· ááá¯á·ááá¯ááºáá«áááºá port 2 ááẠáááºááá·áºáá±áá¬ááá¯á· áŠážáááºáá±áááºááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl show br-tun | grep addr
1(patch-int): addr:b2:d1:f8:21:96:66
2(vxlan-c0a8ff1a): addr:be:64:1f:75:78:a7
3(vxlan-c0a8ff0f): addr:76:6f:b9:3c:3f:1c
LOCAL(br-tun): addr:a2:5b:6d:4f:94:47
[heat-admin@overcloud-novacompute-0 ~]$
áááºážááẠcompute-1 ááŸá vxlan ááá¯ááºáá±á«ááºážáá áºáá¯ááŒá áºáááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-appctl dpif/show | egrep vxlan-c0a8ff1a
vxlan-c0a8ff1a 2/4: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.19, remote_ip=192.168.255.26)
[heat-admin@overcloud-novacompute-0 ~]$
compute-1 ááá¯ááœá¬ážááŒá®áž package áá²á· áá±á¬ááºáá¬ááœá±áááºááŒá áºááá²ááá¯áᬠááŒáá·áºáá¡á±á¬ááºá
[heat-admin@overcloud-novacompute-1 ~]$ sudo ovs-appctl fdb/show br-int | egrep fa:16:3e:44:98:20
2 1 fa:16:3e:44:98:20 1
[heat-admin@overcloud-novacompute-1 ~]$
Mac ááẠcompute-1 ááŸá br-int forwarding table ááœááºááŸáááŒá®áž á¡áááºáá±á¬áºááŒáá« output á០ááŒááºááœá±á·ááá¯ááºááá²á·ááá¯á· áááºážááẠbr-tun ááá¯á·ááœá¬ážááá·áº port ááŒá áºááá·áº port 2 ááŸáááá·áºááŒááºááá¯ááºáááº-
[heat-admin@overcloud-novacompute-1 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:8a:d7:f9:ad:8c:1d
2(patch-tun): addr:46:cc:40:bd:20:da
3(qvoe7e23f1b-07): addr:12:78:2e:34:6a:c7
4(qvo3210e8ec-c0): addr:7a:5f:59:75:40:85
LOCAL(br-int): addr:e2:27:b2:ed:14:46
áá«ááá¯ááẠcompute-1 ááŸá¬ br-int ááŸá¬ destination poppy ááŸááá±áá¬ááᯠááœá±á·ááááºá
[heat-admin@overcloud-novacompute-1 ~]$ sudo ovs-appctl fdb/show br-int | egrep fa:16:3e:72:ad:53
3 1 fa:16:3e:72:ad:53 0
[heat-admin@overcloud-novacompute-1 ~]$
ááá¯ááá¯áááºááŸá¬á áááºáá¶áááŸááá¬ážáá±á¬ áááºáááºááẠvirtual machine instance-3 ááŸáááŒá®áž áá±á¬ááºááœáẠport 00000003 ááá¯á· áá»á¶áááºážáááºááŒá áºáááºá
virtual infrastructure ááœááºáá±á·áá¬áááºá¡ááœáẠOpenstack ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážáááŸáááŸá¯ááẠhypervisors áá»á¬ážááŒá¬ážááœááºá¡ááœá¬ážá¡áá¬áá»á¬ážááá¯ááœááºáá°á áœá¬áááºážáá°ááá¯ááºááŒá®ážáááºážááŸáá·áºááŒá áºáá»ááºáá±áááºáá»á¬ážááá¯ááŒáá·áºááŸá¯áááºááŒá áºáááºá ááá¯áá»áœááºá¯ááºááá¯á·áá¯ááºááá·áºá¡áá¬ááŸá¬á tcpdump ááẠvnet port ááœáẠcompute-0 ááá¯á· áŠážáááºááẠá
[root@hp-gen9 bormoglotx]# tcpdump -vvv -i vnet3
tcpdump: listening on vnet3, link-type EN10MB (Ethernet), capture size 262144 bytes
*****************omitted*******************
04:39:04.583459 IP (tos 0x0, ttl 64, id 16868, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.19.39096 > 192.168.255.26.4789: [no cksum] VXLAN, flags [I] (0x08), vni 22
IP (tos 0x0, ttl 64, id 8012, offset 0, flags [DF], proto ICMP (1), length 84)
10.0.1.85 > 10.0.1.88: ICMP echo request, id 5634, seq 16, length 64
04:39:04.584449 IP (tos 0x0, ttl 64, id 35181, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.26.speedtrace-disc > 192.168.255.19.4789: [no cksum] VXLAN, flags [I] (0x08), vni 22
IP (tos 0x0, ttl 64, id 59124, offset 0, flags [none], proto ICMP (1), length 84)
10.0.1.88 > 10.0.1.85: ICMP echo reply, id 5634, seq 16, length 64
*****************omitted*******************
áááá á¬ááŒá±á¬ááºážááœáẠááááºá ᬠ10.0.1.85 á០Patek ááẠááááºá ᬠ10.0.1.88 (ICMP á¡ááœá¬ážá¡áá¬) ááá¯á·ááœá¬ážááŒá®áž áááºážááᯠvni 22 áá«áá±á¬ VxLAN áááºáá±á·áá»áºááŒáá·áº áá¯ááºááá¯ážáá¬ážááŒá®áž áááºáááºááẠáááºáá¶áá° 192.168.255.19 (compute-0) á០host 192.168.255.26 ááá¯á·ááœá¬ážááẠ.1 (ááœááºáá»á°áá¬-á)á VNI ááẠovs ááœáẠáááºááŸááºáá¬ážááá·áºá¡áá¬ááŸáá·áº ááá¯ááºáá®ááŸá¯ááŸááááŸá á á áºáá±ážááá¯ááºáááºá
áá®á á¬ááŒá±á¬ááºáž actions=load:0->NXM_OF_VLAN_TCI[]áload:0x16->NXM_NX_TUN_ID[]áoutput:2 ááá¯á· ááŒááºááœá¬ážááŒáá«á áá¯á·á 0x16 ááẠááá¹ááááááºážááááºážá áá áºááœáẠvni ááŒá áºáááºá á€áá¶áá«ááºááᯠ16th á áá áºááá¯á· ááŒá±á¬ááºážááŒáá«á áá¯á·á
16 = 6*16^0+1*16^1 = 6+16 = 22
ááá¯ááá¯áááºááŸá¬ vni ááẠáááºááœá±á·ááááŸáá·áº ááá¯ááºáá®áááºá
áá¯áááá á¬ááŒá±á¬ááºážá á¡ááŒááºá¡ááœá¬ážá¡áá¬ááᯠááŒáá«áááºá áá±á¬ááºážááŒá®á á¡á²áá«ááᯠááŸááºážááŒááá¯á· á¡áááá¹áá«ááºáááŸááá°ážá á¡áá¬á¡á¬ážáá¯á¶ážá á¡á²áá®ááŸá¬ ááŸááºážáá«áááºá
ááá°áá®áá±á¬ ááœááºáááºáá»á¬ážááœáẠá ááºááŸá áºáá¯á¶áž (ááœááºáááºá¡áá»ááºážáá»ááºáž áááºážááŒá±á¬ááºážáááºááŸááºááŒááºáž)
ááá±á·á¡ááœáẠáá±á¬ááºáá¯á¶ážááá á¹á ááŸá¬ ááá±á¬áá»ááºáá áºáá¯á¡ááœááºážááŸá ááœááºáááºáá»á¬ážááŒá¬ážááœáẠvirtual router ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááŒá áºáááºá áá»áœááºá¯ááºááá¯á·ááẠDVR ááá«áá±á¬ááá á¹á áááºááᯠá ááºážá á¬ážáá±áá«ááẠ(á¡ááŒá¬ážáá±á¬ááºážáá«ážááœáẠáááºážááá¯ááŒáá·áºááŸá¯áá«áááº) ááá¯á·ááŒá±á¬áá·áº áááºážááŒá±á¬ááºážáááºááŒááºážááẠááœááºááẠnode áá±á«áºááœáẠááŒá áºáá±á«áºáá«áááºá áá»áœááºá¯ááºááá¯á·áááá á¹á ááœááºá ááœááºááẠnode ááᯠáá®ážááŒá¬áž entity ááœááºááá¬ážááŸááá² control node áá±á«áºááœááºáááºááŸááááºá
ááááŠážá áœá¬á Routing á¡áá¯ááºáá¯ááºáááºááá¯ááŒáá·áºááŒáá«á áá¯á·á
$ ping 10.0.2.8
PING 10.0.2.8 (10.0.2.8): 56 data bytes
64 bytes from 10.0.2.8: seq=0 ttl=63 time=7.727 ms
64 bytes from 10.0.2.8: seq=1 ttl=63 time=3.832 ms
^C
--- 10.0.2.8 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 3.832/5.779/7.727 ms
á€ááá á¹á ááœáẠpacket ááẠgateway ááá¯á·ááœá¬ážá ááá¯áá±áá¬ááá¯á· áááºážááŒá±á¬ááºážááœá²ááœá¬ážááááºááŒá áºáá±á¬ááŒá±á¬áá·áºá á¥ááá¬ááœáẠáá»áœááºá¯ááºááá¯á·ááẠARP table ááá¯ááŒáá·áºáá±á¬ gateway á ááááºážááááºá á¬ááᯠááŸá¬ááœá±áááºááá¯á¡ááºáá«áááºá
$ arp
host-10-0-1-254.openstacklocal (10.0.1.254) at fa:16:3e:c4:64:70 [ether] on eth0
host-10-0-1-1.openstacklocal (10.0.1.1) at fa:16:3e:e6:2c:5c [ether] on eth0
host-10-0-1-90.openstacklocal (10.0.1.90) at fa:16:3e:83:ad:a4 [ether] on eth0
host-10-0-1-88.openstacklocal (10.0.1.88) at fa:16:3e:72:ad:53 [ether] on eth0
ááᯠ(10.0.1.254) ááŒáá·áº áŠážáááºáá¬áááºážááŒá±á¬ááºážááᯠfa:16:3e:c4:64:70 ááá¯á·ááá·áºááẠááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-appctl fdb/show br-int | egrep fa:16:3e:c4:64:70
2 1 fa:16:3e:c4:64:70 0
[heat-admin@overcloud-novacompute-0 ~]$
Port 2 á áááºááᯠáŠážáááºáá²ááá¯áᬠááŒáá·áºáá¡á±á¬ááºá
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:7e:7f:28:1f:bd:54
2(patch-tun): addr:0a:bd:07:69:58:d9
3(qvo95d96a75-a0): addr:ea:50:9a:3d:69:58
6(qvo5bd37136-47): addr:9a:d1:03:50:3d:96
LOCAL(br-int): addr:1a:0f:53:97:b1:49
[heat-admin@overcloud-novacompute-0 ~]$
á¡áá¬á¡á¬ážáá¯á¶ážááẠáá¯áá¹ááááŸáááŒá®áž áááºážááŒá±á¬ááºážááẠbr-tun ááá¯á·ááœá¬ážááẠá áááºááá·áº vxlan tunnel ááœáẠáá«áááºáááºááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-novacompute-0 ~]$ sudo ovs-ofctl dump-flows br-tun | grep fa:16:3e:c4:64:70
cookie=0x8759a56536b67a8e, duration=3514.566s, table=20, n_packets=3368, n_bytes=317072, hard_timeout=300, idle_age=0, hard_age=0, priority=1,vlan_tci=0x0001/0x0fff,dl_dst=fa:16:3e:c4:64:70 actions=load:0->NXM_OF_VLAN_TCI[],load:0x16->NXM_NX_TUN_ID[],output:3
[heat-admin@overcloud-novacompute-0 ~]$
ááááá¡áá±á«ááºááẠvxlan á¥áááºáá áºáá¯ááŒá áºáááºá
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-ofctl show br-tun | grep addr
1(patch-int): addr:a2:69:00:c5:fa:ba
2(vxlan-c0a8ff1a): addr:86:f0:ce:d0:e8:ea
3(vxlan-c0a8ff13): addr:72:aa:73:2c:2e:5b
LOCAL(br-tun): addr:a6:cb:cd:72:1c:45
[heat-admin@overcloud-controller-0 ~]$
control node ááá¯ááŒáá·áºáá²á·á
[heat-admin@overcloud-controller-0 ~]$ sudo sudo ovs-appctl dpif/show | grep vxlan-c0a8ff1a
vxlan-c0a8ff1a 2/5: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.15, remote_ip=192.168.255.26)
[heat-admin@overcloud-controller-0 ~]$
á¡ááœá¬ážá¡áá¬ááẠááááºážáá»á¯ááºááŸá¯ ááá¯ááááºááá¯á· áá±á¬ááºááŸáááœá¬ážáá±á¬ááŒá±á¬áá·áº áááºážááá¯á· ááœá¬ážáᬠáááºážááŒá±á¬ááºáž áááºááá¯á· ááŒá áºáá¬áááºááᯠááŒáá·áºááŸá¯ááẠááá¯á¡ááºáá«áááºá
áááºááŸááºááááá·áºá¡ááá¯ááºážá á¡ááœááºážááŸá control node ááẠcompute node ááŸáá·áº á¡ááá¡áá»áá°áá«ááẠ- áá°áá®áá±á¬ Bridge áá¯á¶ážáá¯á br-ex ááœááºáᬠnode ááẠá¡ááŒááºáááºááá¯á· traffic ááá¯áá±ážááá¯á·ááá¯ááºáá±á¬ physical port áá áºáá¯ááŸááááºá instances áááºáá®ážááŸá¯ááẠcompute node áá»á¬ážáá±á«áºááŸá configuration ááá¯ááŒá±á¬ááºážáá²á á±ááẠ- linux áá¶áá¬ážá iptables ááŸáá·áº interfaces áá»á¬ážááᯠnodes áá»á¬ážááá¯á·áá±á«ááºážááá·áºáá²á·áááºá ááœááºáááºáá»á¬ážáááºáá®ážááŒááºážááŸáá·áº virtual router ááẠcontrol node á configuration ááœááºáááºážáá¡ááŸááºá¡áá¬ážááá¯áá»ááºáá¬ážáá²á·áááºá
ááá¯á·ááŒá±á¬áá·áºá gateway MAC ááááºá á¬ááẠcontrol node áá±á«áºááŸá br-int forwarding table ááœáẠááŸááá±ááááºááŸá¬ áááºááŸá¬ážáá«áááºá á¡á²áá®ááŸá¬ ááŸáááŒá®áž áááºáá±áá¬ááᯠááŸá¬áá±áá² ááá¯áᬠá á áºáá±ážááŒáá·áºáá¡á±á¬ááºá
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-appctl fdb/show br-int | grep fa:16:3e:c4:64:70
5 1 fa:16:3e:c4:64:70 1
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:2e:58:b6:db:d5:de
2(patch-tun): addr:06:41:90:f0:9e:56
3(tapca25a97e-64): addr:fa:16:3e:e6:2c:5c
4(tap22015e46-0b): addr:fa:16:3e:76:c2:11
5(qr-0c52b15f-8f): addr:fa:16:3e:c4:64:70
6(qr-92fa49b5-54): addr:fa:16:3e:80:13:72
LOCAL(br-int): addr:06:de:5d:ed:44:44
[heat-admin@overcloud-controller-0 ~]$
Mac ááᯠport qr-0c52b15f-8f ááŸááŒááºááá¯ááºáááºá Openstack ááŸá virtual ports áá»á¬ážá á¬áááºážááá¯á· áá»áœááºá¯ááºááá¯á·ááŒááºááœá¬ážáá«áá á¡áá»áá¯ážáá»áá¯ážáá±á¬ virtual devices áá»á¬ážááᯠOVS ááá¯á·áá»áááºáááºáááºá¡ááœáẠဠport á¡áá»áá¯ážá¡á á¬ážááᯠá¡áá¯á¶ážááŒá¯áá«áááºá ááá¯ááá¯áááá»á á±áááºá¡ááœáẠqr ááẠnamespace á¡ááŒá áºááá¯ááºá á¬ážááŒá¯áá¬ážááá·áº virtual router ááá¯á· port áá áºáá¯ááŒá áºáááºá
áá¬áá¬áá±á«áºááœáẠáááºááá·áº namespaces ááŸááááºááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns
qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe (id: 2)
qdhcp-7d541e74-1c36-4e1d-a7c4-0968c8dbc638 (id: 1)
qdhcp-67a3798c-32c0-4c18-8502-2531247e3cc2 (id: 0)
[heat-admin@overcloud-controller-0 ~]$
áá¯á¶ážá¡á¯ááºáá±á¬ááºááŸááááºá áá«áá±ááá·áº áá¬áááºááœá±ááᯠááŒáá·áºááŒá®áž áá°ááá¯á·áá áºáá¯áá»ááºážá á®áá²á· áááºááœááºáá»ááºááᯠááá·áºááŸááºážááá¯á·ááááºá ID 0 ááŸáá·áº 1 áá±á¬ááºááá¯ááºážááœáẠáá»áœááºá¯ááºááá¯á·ááẠá á¶ááá°áá¬áá»á¬ážáᶠááŒááºááœá¬ážáá«áááºá ááᯠáá»áœááºá¯ááºááá¯á·ááẠnamespace qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe ááᯠá áááºáááºá á¬ážáá±áá«áááº-
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe ip route
10.0.1.0/24 dev qr-0c52b15f-8f proto kernel scope link src 10.0.1.254
10.0.2.0/24 dev qr-92fa49b5-54 proto kernel scope link src 10.0.2.254
[heat-admin@overcloud-controller-0 ~]$
ဠnamespace ááœáẠáá»áœááºá¯ááºááá¯á·á¡á á±á¬ááá¯ááºážá áááºáá®ážáá¬ážááá·áº á¡ááœááºážááá¯ááºážááŸá áºáá¯áá«ááŸááááºá virtual port ááŸá áºáá¯áá¯á¶ážááᯠbr-int ááœáẠááá·áºáá¬ážáááºá á¡ááœá¬ážá¡áá¬ááẠáŠážáááºáᬠmac address á០á€á¡ááºáá¬áá±á·á áºááá¯á· áá±á¬ááºááœá¬ážáá±á¬ááŒá±á¬áá·áº ááá¯á·áẠqr-0c52b15f-8f á mac ááááºá á¬ááᯠá á áºáá±ážááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe ifconfig qr-0c52b15f-8f
qr-0c52b15f-8f: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1450
inet 10.0.1.254 netmask 255.255.255.0 broadcast 10.0.1.255
inet6 fe80::f816:3eff:fec4:6470 prefixlen 64 scopeid 0x20<link>
ether fa:16:3e:c4:64:70 txqueuelen 1000 (Ethernet)
RX packets 5356 bytes 427305 (417.2 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 5195 bytes 490603 (479.1 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
[heat-admin@overcloud-controller-0 ~]$
ááá¯ááá¯áááºááŸá¬á á€ááá á¹á ááœááºá á¡áá¬á¡á¬ážáá¯á¶ážááẠstandard routing áá¥ááá±áá»á¬ážááŸáá·áºá¡áá®á¡áá¯ááºáá¯ááºáááºá á¡ááœá¬ážá¡áá¬ááᯠhost 10.0.2.8 á¡ááœáẠáááºááœááºáá¬ážáá±á¬ááŒá±á¬áá·áºá áááºážááẠáá¯áááá¡ááºáá¬áá±á·á Ạqr-92fa49b5-54 ááŸáááá·áº ááœááºááŒá®áž vxlan tunnel ááá¯ááŒááºá compute node ááá¯á·ááœá¬ážááá«áááºá
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe arp
Address HWtype HWaddress Flags Mask Iface
10.0.1.88 ether fa:16:3e:72:ad:53 C qr-0c52b15f-8f
10.0.1.90 ether fa:16:3e:83:ad:a4 C qr-0c52b15f-8f
10.0.2.8 ether fa:16:3e:6c:ad:9c C qr-92fa49b5-54
10.0.2.42 ether fa:16:3e:f5:0b:29 C qr-92fa49b5-54
10.0.1.85 ether fa:16:3e:44:98:20 C qr-0c52b15f-8f
[heat-admin@overcloud-controller-0 ~]$
á¡áá¬á¡á¬ážáá¯á¶ážááẠáá¯áá¹ááááŸáááŒá®áž á¡á¶á·ááŒá áá¬áááŸááá«á host 10.0.2.8 á ááááºážááááºá á¬ááᯠbr-int ááœáẠááŒááºááá¯ááºáááºááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-appctl fdb/show br-int | grep fa:16:3e:6c:ad:9c
2 2 fa:16:3e:6c:ad:9c 1
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:2e:58:b6:db:d5:de
2(patch-tun): addr:06:41:90:f0:9e:56
3(tapca25a97e-64): addr:fa:16:3e:e6:2c:5c
4(tap22015e46-0b): addr:fa:16:3e:76:c2:11
5(qr-0c52b15f-8f): addr:fa:16:3e:c4:64:70
6(qr-92fa49b5-54): addr:fa:16:3e:80:13:72
LOCAL(br-int): addr:06:de:5d:ed:44:44
[heat-admin@overcloud-controller-0 ~]$
áá»áŸá±á¬áºááá·áºáá¬ážááá·áºá¡ááá¯ááºáž áá¬ááºá¡ááœá¬ážá¡áá¬ááẠbr-tun ááá¯á·ááœá¬ážáááºá áááºááá·áºá¥áááºáááºážááŒá±á¬ááºážá០áá±á¬ááºááá¯á·ááœá¬ážáááºááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-ofctl dump-flows br-tun | grep fa:16:3e:6c:ad:9c
cookie=0x2ab04bf27114410e, duration=5346.829s, table=20, n_packets=5248, n_bytes=498512, hard_timeout=300, idle_age=0, hard_age=0, priority=1,vlan_tci=0x0002/0x0fff,dl_dst=fa:16:3e:6c:ad:9c actions=load:0->NXM_OF_VLAN_TCI[],load:0x63->NXM_NX_TUN_ID[],output:2
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo ovs-ofctl show br-tun | grep addr
1(patch-int): addr:a2:69:00:c5:fa:ba
2(vxlan-c0a8ff1a): addr:86:f0:ce:d0:e8:ea
3(vxlan-c0a8ff13): addr:72:aa:73:2c:2e:5b
LOCAL(br-tun): addr:a6:cb:cd:72:1c:45
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-controller-0 ~]$ sudo sudo ovs-appctl dpif/show | grep vxlan-c0a8ff1a
vxlan-c0a8ff1a 2/5: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.15, remote_ip=192.168.255.26)
[heat-admin@overcloud-controller-0 ~]$
áá¬ááºá¡ááœá¬ážá¡áá¬ááᯠááœááºáá»ááºáááº-1 ááá¯ááºáá±á«ááºážáá²ááá¯á· áááºáááºá áá±á¬ááºážááŒá®á compute-1 ááœáẠá¡áá¬á¡á¬ážáá¯á¶ážááẠááá¯ážááŸááºážááẠ- br-tun á០package ááẠbr-int ááá¯á·ááœá¬ážááŒá®áž ááá¯á០virtual machine interface ááá¯á·ááœá¬ážáááº-
[heat-admin@overcloud-controller-0 ~]$ sudo sudo ovs-appctl dpif/show | grep vxlan-c0a8ff1a
vxlan-c0a8ff1a 2/5: (vxlan: egress_pkt_mark=0, key=flow, local_ip=192.168.255.15, remote_ip=192.168.255.26)
[heat-admin@overcloud-controller-0 ~]$
[heat-admin@overcloud-novacompute-1 ~]$ sudo ovs-appctl fdb/show br-int | grep fa:16:3e:6c:ad:9c
4 2 fa:16:3e:6c:ad:9c 1
[heat-admin@overcloud-novacompute-1 ~]$ sudo ovs-ofctl show br-int | grep addr
1(int-br-ex): addr:8a:d7:f9:ad:8c:1d
2(patch-tun): addr:46:cc:40:bd:20:da
3(qvoe7e23f1b-07): addr:12:78:2e:34:6a:c7
4(qvo3210e8ec-c0): addr:7a:5f:59:75:40:85
LOCAL(br-int): addr:e2:27:b2:ed:14:46
[heat-admin@overcloud-novacompute-1 ~]$
áááºážááẠá¡ááŸááºáááºááŸááºáááºáá±á¬ á¡ááºáá¬áá±á·á áºááŒá áºááŒá±á¬ááºáž á á áºáá±ážááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-novacompute-1 ~]$ brctl show
bridge name bridge id STP enabled interfaces
docker0 8000.02429c001e1c no
qbr3210e8ec-c0 8000.ea27f45358be no qvb3210e8ec-c0
tap3210e8ec-c0
qbre7e23f1b-07 8000.b26ac0eded8a no qvbe7e23f1b-07
tape7e23f1b-07
[heat-admin@overcloud-novacompute-1 ~]$
[heat-admin@overcloud-novacompute-1 ~]$ sudo virsh domiflist instance-00000004
Interface Type Source Model MAC
-------------------------------------------------------
tap3210e8ec-c0 bridge qbr3210e8ec-c0 virtio fa:16:3e:6c:ad:9c
[heat-admin@overcloud-novacompute-1 ~]$
ááááºáá±á¬á·á áá«ááá¯á·á package áá
áºáá»áŸá±á¬ááºáá¯á¶ážááœá¬ážáá²á·áááºá áá¬ááºá¡ááœá¬ážá¡áá¬ááẠááá°áá®áá±á¬ vxlan á¥áááºáá»á¬ážááá¯ááŒááºá ááá°áá®áá±á¬ VNIs áá»á¬ážááŒáá·áº ááœááºáááºááᯠáááºáááááŒá¯áááááºáᯠáááºáá«áááºá áááºážááá¯á·ááẠáááºááá¯á·áá±á¬ VNI á¡áá»áá¯ážá¡á
á¬ážááŒá
áºáááºááᯠááŒáá·áºááŒá
áá¯á·á ááá¯á·áá±á¬ááºááœáẠáá»áœááºá¯ááºááá¯á·ááẠnode á control port ááœáẠá¡ááŸáá¯ááºáá¯á¶ážáá
áºáá¯ááᯠá
á¯áá±á¬ááºážáᬠá¡áááºááœááºáá±á¬áºááŒáá¬ážááá·áºá¡ááá¯ááºáž á¡ááá¡áá»á
á®ážáááºážááœá¬ážááŒá±á¬ááºáž áá±áá»á¬áá«á
á±á
ááá¯á·ááŒá±á¬áá·áºá compute-0 á¡ááœáẠá¥áááºááœáẠá¡á±á¬ááºáá« áá¯ááºáá±á¬ááºáá»ááºáá»á¬áž ááŸááááº=load:0->NXM_OF_VLAN_TCI[],load:0x16->NXM_NX_TUN_ID[],output:3á 0x16 ááᯠáá¿áááááºážá
áá
áºááá¯á· ááŒá±á¬ááºážááŒáá·áºáá¡á±á¬ááºá
0x16 = 6*16^0+1*16^1 = 6+16 = 22
compute-1 ááœáẠá¡á±á¬ááºáá« VNI:actions=load:0->NXM_OF_VLAN_TCI[],load:0x63->NXM_NX_TUN_ID[],output:2á 0x63 ááᯠáá¿áááááºážá áá áºááá¯á· ááŒá±á¬ááºážááŒáá«á áá¯á·á
0x63 = 3*16^0+6*16^1 = 3+96 = 99
áá²á á¡áᯠá¡ááŸáá¯ááºáá¯á¶ááŒá®ážááᯠááŒáá·áºáá¡á±á¬ááºá
[root@hp-gen9 bormoglotx]# tcpdump -vvv -i vnet4
tcpdump: listening on vnet4, link-type EN10MB (Ethernet), capture size 262144 bytes
*****************omitted*******************
04:35:18.709949 IP (tos 0x0, ttl 64, id 48650, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.19.41591 > 192.168.255.15.4789: [no cksum] VXLAN, flags [I] (0x08), vni 22
IP (tos 0x0, ttl 64, id 49042, offset 0, flags [DF], proto ICMP (1), length 84)
10.0.1.85 > 10.0.2.8: ICMP echo request, id 5378, seq 9, length 64
04:35:18.710159 IP (tos 0x0, ttl 64, id 23360, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.15.38983 > 192.168.255.26.4789: [no cksum] VXLAN, flags [I] (0x08), vni 99
IP (tos 0x0, ttl 63, id 49042, offset 0, flags [DF], proto ICMP (1), length 84)
10.0.1.85 > 10.0.2.8: ICMP echo request, id 5378, seq 9, length 64
04:35:18.711292 IP (tos 0x0, ttl 64, id 43596, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.26.42588 > 192.168.255.15.4789: [no cksum] VXLAN, flags [I] (0x08), vni 99
IP (tos 0x0, ttl 64, id 55103, offset 0, flags [none], proto ICMP (1), length 84)
10.0.2.8 > 10.0.1.85: ICMP echo reply, id 5378, seq 9, length 64
04:35:18.711531 IP (tos 0x0, ttl 64, id 8555, offset 0, flags [DF], proto UDP (17), length 134)
192.168.255.15.38983 > 192.168.255.19.4789: [no cksum] VXLAN, flags [I] (0x08), vni 22
IP (tos 0x0, ttl 63, id 55103, offset 0, flags [none], proto ICMP (1), length 84)
10.0.2.8 > 10.0.1.85: ICMP echo reply, id 5378, seq 9, length 64
*****************omitted*******************
ááááááºáá±á·áá»áºááẠhost 192.168.255.19 (compute-0) á០host 192.168.255.15 (control-1) vni 22 ááŸáá·áº ICMP áááºáá±á·ááºá»áá áºáá¯ááŒá áºááŒá®áž á¡ááœááºážááœáẠICMP áááºáá±á·ááºá»ááᯠhost 10.0.1.85 á០host 10.0.2.8 á០host XNUMX á¡áá áá¯ááºááá¯ážáá¬ážáááºá á¡áááºááœáẠááœááºáá»ááºáá¬ážááá·áºá¡ááá¯ááºáž vni ááẠoutput ááœááºááŒááºáááá·áºá¡áá¬ááŸáá·áº ááá¯ááºáá®áá«áááºá
áá¯ááááááºáááºááẠhost 192.168.255.15 (control-1) á០host 192.168.255.26 (compute-1) vni 99 ááŸáá·áº ICMP áááºáá±á·ááºá»áá áºáá¯ááŒá áºááŒá®áž á¡ááœááºážáááºááœáẠICMP áááºáá±á·ááºá»ááᯠhost 10.0.1.85 á០host 10.0.2.8 á០host XNUMX á¡áá áá¯ááºááá¯ážáá¬ážáááºá á¡áááºááœáẠááœááºáá»ááºáá¬ážááá·áºá¡ááá¯ááºáž vni ááẠoutput ááœááºááŒááºáááá·áºá¡áá¬ááŸáá·áº ááá¯ááºáá®áá«áááºá
áá±á¬ááºáá¯ááºááá¯ážááŸá áºáá¯ááẠ10.0.2.8 á០10.0.1.85 ááá¯ááºáá±á¬ return traffic ááŒá áºáááºá
ááá¯ááá¯áááºááŸá¬á á¡áá¯á¶ážááœááºá áá»áœááºá¯ááºááá¯á·ááẠá¡á±á¬ááºáá« control node scheme ááá¯áááŸááá²á·áá«áááºá
ááŒáá·áºááᬠáá«áá²áá¬ážá áá»áœááºá¯ááºááá¯á·ááẠá¡áááºááœááºááŸá
áºáá¯ááᯠáá±á·ááœá¬ážáááº-
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns
qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe (id: 2)
qdhcp-7d541e74-1c36-4e1d-a7c4-0968c8dbc638 (id: 1)
qdhcp-67a3798c-32c0-4c18-8502-2531247e3cc2 (id: 0)
[heat-admin@overcloud-controller-0 ~]$
áá»áœááºá¯ááºááá¯á·ááẠcloud ááááºáá±á¬ááºážá áááºáá±á¬ááºáá¯á¶ááŸáá·áº áááºáá±á¬ááºáá¯á¶á¡ááŒá±á¬ááºáž ááŒá±á¬áá±á ááºá á ááºáá»á¬ážááẠDHCP áá¬áá¬á០ááááºá á¬áá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬áẠáááºáá¶áááŸááá«á áá±á¬ááºážáá«áááºá áááºážááá¯á·ááẠáá»áœááºá¯ááºááá¯á·áááœááºáááºááŸá áºáá¯á¡ááœáẠ10.0.1.0/24 ááŸáá·áº 10.0.2.0/24 á¡ááœáẠDHCP áá¬áá¬ááŸá áºáá¯ááŒá áºáááºá
áá«á¡ááŸááºáá¬ážááá¯áᬠá á áºáá±ážááŒáá·áºáá¡á±á¬ááºá ဠnamespace ááœááºááááºá á¬áá áºáá¯áá¬ááŸáááẠ- 10.0.1.1 - DHCP áá¬áá¬ááá¯ááºááá¯ááºáááááºá á¬ááŒá áºááŒá®áž áááºážááᯠbr-int ááœááºáááºážááá·áºááœááºážáá¬ážáááºá
[heat-admin@overcloud-controller-0 ~]$ sudo ip netns exec qdhcp-67a3798c-32c0-4c18-8502-2531247e3cc2 ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 1 bytes 28 (28.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1 bytes 28 (28.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
tapca25a97e-64: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1450
inet 10.0.1.1 netmask 255.255.255.0 broadcast 10.0.1.255
inet6 fe80::f816:3eff:fee6:2c5c prefixlen 64 scopeid 0x20<link>
ether fa:16:3e:e6:2c:5c txqueuelen 1000 (Ethernet)
RX packets 129 bytes 9372 (9.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 49 bytes 6154 (6.0 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
control node áá±á«áºááŸá áááºážááá¯á·áá¡áááºááœáẠqdhcp-67a3798c-32c0-4c18-8502-2531247e3cc2 áá«áááºááá·áº áá¯ááºáááºážá ááºáá»á¬ážááᯠááŒáá·áºááŒáá«á áá¯á·á
[heat-admin@overcloud-controller-0 ~]$ ps -aux | egrep qdhcp-7d541e74-1c36-4e1d-a7c4-0968c8dbc638
root 640420 0.0 0.0 4220 348 ? Ss 11:31 0:00 dumb-init --single-child -- ip netns exec qdhcp-7d541e74-1c36-4e1d-a7c4-0968c8dbc638 /usr/sbin/dnsmasq -k --no-hosts --no-resolv --pid-file=/var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/pid --dhcp-hostsfile=/var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/host --addn-hosts=/var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/addn_hosts --dhcp-optsfile=/var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/opts --dhcp-leasefile=/var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/leases --dhcp-match=set:ipxe,175 --local-service --bind-dynamic --dhcp-range=set:subnet-335552dd-b35b-456b-9df0-5aac36a3ca13,10.0.2.0,static,255.255.255.0,86400s --dhcp-option-force=option:mtu,1450 --dhcp-lease-max=256 --conf-file= --domain=openstacklocal
heat-ad+ 951620 0.0 0.0 112944 980 pts/0 S+ 18:50 0:00 grep -E --color=auto qdhcp-7d541e74-1c36-4e1d-a7c4-0968c8dbc638
[heat-admin@overcloud-controller-0 ~]$
ááá¯ááá¯á·áá±á¬ áá¯ááºáááºážá ááºáá áºáᯠááŸáááŒá®áž á¡áááºáá±á¬áºááŒáá« áá¯ááºáá±ážááŸá¯ááœáẠáá±á¬áºááŒáá¬ážááá·áº á¡áá»ááºá¡áááºáá»á¬ážá¡áá±á«áº á¡ááŒá±áá¶á áá»áœááºá¯ááºááá¯á·ááẠá¥ááá¬á¡á¬ážááŒáá·áºá áá»áœááºá¯ááºááá¯á·ááœáẠáááºááŸá ááŸá¬ážáááºážáá¬ážáááºáá»á¬ážááᯠááŒáá·áºááŸá¯ááá¯ááºáááº-
[heat-admin@overcloud-controller-0 ~]$ cat /var/lib/neutron/dhcp/7d541e74-1c36-4e1d-a7c4-0968c8dbc638/leases
1597492111 fa:16:3e:6c:ad:9c 10.0.2.8 host-10-0-2-8 01:fa:16:3e:6c:ad:9c
1597491115 fa:16:3e:76:c2:11 10.0.2.1 host-10-0-2-1 *
[heat-admin@overcloud-controller-0 ~]$
ááááºá¡áá±ááŒáá·áºá ááááºážáá»á¯ááºááŸá¯ node ááœáẠá¡á±á¬ááºáá«áááºáá±á¬ááºááŸá¯á¡á á¯á¶ááᯠáá»áœááºá¯ááºááá¯á·áááŸááá«áááº-
ááŸááºáá¬ážáá¬ážáá« - á€áááºááŸá¬ á
áẠ4 áá¯á¶ážá á¡ááœááºážááá¯ááºážááœááºááẠ2 áá¯ááŸáá·áº virtual router áá
áºáá¯áá¬ááŒá
áºáááº... áá»áœááºá¯ááºááá¯á·ááœáẠááŒááºáááœááºáááºáá»á¬áž áááŸááá±á¬á·ááŒá®á ááá°áá®áá±á¬ááá±á¬áá»ááºáá»á¬ážá
áœá¬ááŸáááŒá®áž áá
áºáá¯á
á®ááœáẠáááºážááá¯á·áááá¯ááºááá¯ááºááœááºáááºáá»á¬áž (áááºáá±áá±á¬) ááŸááááºá áá»áœááºá¯ááºááá¯á·ááœááºá ááŒáá·áºáá±áá¬ážáá±á¬ router ááá¯ááááºááá¯ááºááŒá®áž á¡áá¯á¶ážááœááºá á
ááºážáááºáá¯á¶áááºážáá»á¬ážááœáẠááááºážáá»á¯ááºááŸá¯á¡ááŸááºáá
áºáá¯áá¬ááŸáááẠ(á¡ááŸá¬ážáá¶ááá¯ááºáááºá¡ááœáẠnode áá¯á¶ážáá¯á quorum áá
áºáá¯ááŸáááááº)á áá°ážáááºážáá±á¬ááºážáááºáá±ážááœáẠá¡áá¬á¡á¬ážáá¯á¶ážááẠ"á¡áááºážáááº" ááá¯ááŸá¯ááºááœá±ážáá±áááºááŸá¬ áá¯áá¹áááááºáá«áááºá ááá¯á·áá±á¬áº á€ááá¯ážááŸááºážáá±á¬á¥ááá¬ááœáẠáá»áœááºá¯ááºááá¯á·áá¬ážáááºááá±á¬áá±á«ááºááẠ- ááá·áºááœáẠnamespaces 3 áᯠááá¯á·ááá¯áẠ300 ááŸááááºááŸááááŸááááºá¡áá±ážááŒá®ážáááºá ááá¯á·áá±á¬áºáá
áºáá¯áá¯á¶ážááááºáááºááŸá¯á¡ááŒááºá០áááºáá±á¬ááºáá¯á¶á áááºááá·áºá¡áá¬áá»áŸ ááŒá±á¬ááºážáá²áááºááá¯ááºáá«... áááºáá±á¬ááºážáá»áá° SDN ááᯠááááºááá»ááºážá áá«áá±ááá·áº á¡á²áá«á áá¯á¶ážáááŒá¬ážáá¬ážáá²á· áá¬ááºáááºážáá«á
á áááºáááºá á¬ážááá¯á·áá±á¬ááºážáááºááá¯á· áá»áŸá±á¬áºááá·áºáá«áááºá á¡áááºá ááá·áºááœáẠááŸááºáá»ááºáá»á¬áž/áááºáá±á«ááºážááá·áºá áá¬áá»á¬ážááŸááá«á ááá¯á·ááá¯áẠáá»áœááºá¯ááºááẠáá¯á¶ážáá¯á¶ážáá»á¬ážáá»á¬ážááááºáá¬áá²á·ááẠ(áá»áœááºá¯ááºááẠáá°áá¬ážááŒá áºááŒá®áž áá»áœááºá¯ááºááááºááŒááºáá°ááá»ááºááẠá¡ááŒá²áááºáž á¡áá¹áááá±á¬ááŒá áºáá±áááá·áºáááº) - ááŒááºáááº/áááºááá·áºááẠááá¯á¡ááºáááºáá»á¬ážááᯠáá±ážáá«- á¡áá¬á¡á¬ážáá¯á¶ážááᯠááŒááºáá±ážáááº/ááá·áºáá«áááºá
áááá¯á¶ážáá»á¯ááºá¡áá±áá²á·á Openstack (VMWare á០cloud solution) áá²á· Openstack (VMWare á០cloud solution) áá²á· Openstack (VMWare ááŸá áºáá»áá¯ážáá¯á¶ážááŸáá·áº áá±á¬ááºážáá»áá°) ááᯠááŸáá¯ááºážááŸááºááŒá®áž á áá¬ážá¡áááºážáááºááŒá±á¬ááá¯áá«ááẠ- ááœááºáá²á·áá²á· ááŸá áºá¡áááºážáááºá áá»áœááºáá±á¬áº áá®áá±ážááœááºážááᯠáááŒá¬áá á¡áá±ážáá¶ááá°ážááŒá®áž ááœáá·áºááœáá·áºáááºážáááºážááŒá±á¬ááááºá áááºáááºážáá±ááŒá®á áá«áá±ááá·áº ááŒáááºáá±áááºá áá»áœááºáá±á¬á·áºá¡ááŒááºá¡áá á€ááŒá±ááŸááºážáá»ááºááŸá áºáá¯ááᯠááŸáá¯ááºážááŸááºááẠá¡ááœááºáááºáá²áá±á¬áºáááºáž ááŒá±ááŸááºážáá»ááºááŸá áºáá¯áá¯á¶ážááœáẠá¡á¬ážáááºážáá»ááºáá»á¬ážááŸáááŒá±á¬ááºážááŸáá·áº á¡ááŒá±áá áºáá¯ááᯠááœá±ážáá»ááºááá·áºá¡áá«ááœáẠáá±á¬ááºážáá»áá¯ážááŸáá·áºááá¯ážáá»áá¯ážáá»á¬ážááᯠáá»áááºáááẠááá¯á¡ááºáááºáᯠáá»áœááºá¯ááºááá¯á· áá»áááºážáá±ááŒá±á¬ááá¯ááºáá«áááºá
OpenStack ááẠá¡ááá¯ááºážá¡ááá¯ááºážá០áá±á¬ááºážááŸááºáá±á¬ ááŒá±ááŸááºážáá»ááºáá áºáá¯ááŒá áºáá«á VMWare ááẠáááºážá¡ááá¯ááŸááá±á¬á¡áá¬ááá¯áᬠáá¯ááºáá±á¬ááºááá¯ááºááœáá·áºááŸáááẠ(áááºááŸá¯áá« - áááºážá¡ááœáẠá¡ááŒááºá¡á áœááºážááá±á¬á¡áá¬) ááŒá áºáá±á¬ááŒá±á¬áá·áº áááºážááẠáá¯áá¹áááááºážáá«ááẠ- áááºážááá±á¬ááºáááºáá»á¬ážáá¶á០ááœá±ááŸá¬áá±á·ááŸááá±á¬ á á®ážááœá¬ážááŒá áºáá¯áá¹ááá®áá áºáá¯ááŒá áºáá±á¬ááŒá±á¬áá·áº ááŒá áºáááºá áá«áá±ááá·áº ááŒá®ážááŒá®ážáá¬ážáá¬ážáá²á· á¡áá®áá»áᬠáá áºáá¯áá±á¬á· ááŸááá«ááẠ- á¥ááá¬á¡á¬ážááŒáá·áº Nokia á០OpenStack ááᯠááááºáá¬ážááá¯ááºááŒá®ážá á¥ááᬠJuniper (Contrail Cloud) á០ááŒá±ááŸááºážáá»ááºáá áºáá¯ááá¯á· á á»á±ážáááºážáááºážááŒáá·áº ááŒá±á¬ááºážááá¯ááºáá±á¬áºáááºáž VMWare á០áááºáááá¯ááºáááºááá¯ááºáá±á . áá»áœááºá¯ááºá¡ááœááºá á€ááŒá±ááŸááºážáá»ááºááŸá áºáá¯ááẠá€áá²á·ááá¯á·ááŒá áºááẠ- Openstack (áá±á¬ááºážáá»áá°) ááẠáááºááá·áºáá¬ážáá±á¬ ááá¯ážááŸááºážáá±á¬ááŸá±á¬ááºá¡áááºáá áºáá¯ááŒá áºáá±á¬áºáááºáž ááá·áºááœááºáá±á¬á·áá áºáá¯ááŸáááŒá®áž á¡áá»áááºáááœá±ážááœááºááœá¬ážááá¯ááºáááºá VMWare ááẠááœáŸá±ááŸá±á¬ááºá¡áááºááŒá áºááŒá®áž ááá¯ááºááŸááºááœáẠááŸá±á¬ááºá¡áááºááá±á¬á·ááŸáááŒá®áž ááá·áºá¡ááœáẠáá»á¬ážá áœá¬áá¯ááºáá»áááºááŒá áºáááºá
ááááá¯ááºáá¯áẠáá«ááŸááá¯áẠáá¯ááááá¯ááºáá¯ááºááᯠááŒá±á¬áºááŒá¬áá¬ááá¯ááºáá«áá°áž - áááºááá¯á¡ááºáá¬ááᯠááœá±ážáá»ááºáá«á ááá¯á·áá±á¬áº áá»áœááºá¯ááºááœáẠááá¯ááá¯á·áá±á¬ááœá±ážáá»ááºááŸá¯ááŸááá«áá IT cloud á¡ááœáẠVMWare (áááºáááºážááŒááºážá ááœááºáá°áá±á¬á á®áá¶ááá·áºááœá²ááŸá¯)á á¡áá»áá¯á·áá±á¬áá±á¬ááºážáá»áá°áá¶á០OpenStack (Nokia ááŸáá·áº Juniper ááẠTelecom cloud á¡ááœáẠá¡ááœááºáá±á¬ááºážááœááºáá±á¬ turnkey ááŒá±ááŸááºážáá»ááºáá»á¬ážááᯠáá±ážáá±á¬ááºáááº) - ááŸá áºáá¯áá¯á¶ážááᯠááœá±ážáá»ááºáá«áááºá á¡áá¯ááºáá®á á áºá á áºá¡ááœáẠOpenstack ááᯠáá»áœááºá¯ááºááá¯á¶ážáá« - áááºážááẠá á¬ááŸááºáá»á¬ážááᯠá¡ááŒá±á¬ááºáá»á¬ážááŒáá·áº áá áºáááá¯áá»áá¯ážá ááá¯á·áá±á¬áº áááºáá±á¬ááºážááŒááºážááŸááœá²á á¡ááŒá¬ážá¡áá¯á¶ážááŒá¯ááẠáá¬ážááŒá áºáá»ááºáá»á¬ážááᯠáá»áœááºá¯ááºáááœá±á·áá«á ááá¯á·áá±á¬áºá áááºáá®ááœááºážááœáẠVMWare ááá¯á¡áá¯á¶ážááŒá¯ááŒááºážááẠFord Raptor ááœáẠááŒá±ááœáá±áá±á¬áá»á±á¬ááºáá¯á¶ážáá»á¬ážááᯠáááºáá°ááŒááºážááŸáá·áºáá°ááẠ- áááºážááẠá¡ááŒááºáááºááŸááŸááá±á¬áºáááºáž áá¬ááºáá±á¬ááºážááẠáá áºááŒáááºá¡á á¬áž 10 áá±á«ááºááœá¬ážááááºááŒá áºáááºá
áá«á·á¡ááŒááºá¡áá VMWare áá¡ááŒá®ážáá¬ážáá¯á¶ážá¡á¬ážáááºážáá»ááºááŸá¬áááºážáááŒá®ážááŒáá·áºá á¯á¶áá±á¬ááááºááŒááºážááŒá áºááẠ- áá¯áá¹ááá®áááºáááºááá¯á·á¡áá¯ááºáá¯ááºáá¯á¶ááŸáá·áºáááºáááºáá±á¬á¡áá»ááºá¡áááºáá»á¬ážááá¯áá±ážáááºááá¯ááºáá«á á¥ááá¬á vSAN ááá¯á·ááá¯áẠhypervisor kernel ááœááºááŸáááẠ- áááºážá¡ááœááºááá¯ážááŸááºážá áœá¬á¡ááŒááºá¡á áœááºážááá¯ááºáá« - ááá¯ááá¯áááºááŸá¬áááºáá¯ááºáááºá VMWare ááœáẠáá»áœááºážáá»ááºáá°áá áºáŠážáááŒá áºáá« - áá±á¬ááºážáá»áá°ááá¶á·ááá¯ážáá°áá®ááŸá¯áááŸááá²á áááºááẠá¡áá»á¯á¶ážáááºááẠ(á¡áá±ážá¡ááœá²áá±ážááœááºážáá»á¬ážááŒá±á¬áá·áº á áááºááŸá¯ááºáá±áá±á¬ VMWare áá»áœááºážáá»ááºáá°áá»á¬ážááŸáá·áº áááŒá¬ááááœá±á·áá¯á¶ááááº)á áá»áœááºáá±á¬á·áºá¡ááœááºá VMWare ááẠáá¬ážá¡áá¯á¶ážááá¯áá±á¬á·áááºáá¬ážáá±á¬ áá¬ážáá áºá á®ážááᯠáááºáá°áá±ááẠ- áá¯ááºáá«áááºá ááá·áºááœáẠáá»áááºááá¯ááºáá«ážáááºááᯠááŒá±á¬ááºážáá²ááá¯ááºááá·áº áá»áœááºážáá»ááºáá°áá»á¬áž ááŸááá±á¬ááºážááŸáááá¯ááºáááºá ááá¯á·áá±á¬áº ááá·áºá¡á¬áž áá±á¬ááºážáá»áá±ážáá°ááŸáá¬áá»áŸáẠá€ááŒá±ááŸááºážáá»ááºááẠáá¬ážáá±á«ááºážááá¯ááœáá·áºááá¯ááºáááºá áá¯áá¹ááá¯ááºáá±ážá¡áá áá»áœááºá¯ááºááẠá¡á¶áááºááœááºáá»áááŒá áºááá¯ááºáá±á¬ ááŒá±ááŸááºážáááºážáá»á¬ážááᯠáááŒáá¯ááºáá«á áááºážá¡áá¯á¶ážá¡á±á¬ááºááŸá¬ ááá±ááá·áºáá°ážááá¯á· áááºážááŒá±á¬áááá·áºáááºá áá¯ááºáááºá áá«áááŒá áºááá¯ááºáááºá áá«áá±ááá·áº cloud áá²ááŸá¬ ááŒá®ážáá¬ážáá²á·áá¯ááºáá±á¬ááºáá»ááºáá áºáá¯ááᯠ20-30 virtual machinesá 40-50 networksá áá áºáááºáá±á¬ááºá á¡ááŒááºááœá¬ážáá»ááºáááºá áá¯ááááá áºáááºá áá±á¬ááºážááá¯áá²á·á¡áá« áááºážááá¯ááŒáá·áºááẠSR-IOV á¡ááŸáááºááŒáŸáá·áºááŒááºážá ááá¯ááºáá«á áááºááẠá€áá¬ážáá»á¬ážáá²á០áá«áááºááŸá áºáááºáá»á±á¬áº ááá¯á¡ááºáááá·áºááẠ- ááá¯ááºáá«á á áœááºážáá±á¬ááºááẠááá¯á¶áá±á¬ááºáá«á
á¡ááŒá¬ážááŸá¯áá±á¬áá·áºáá»á¬ážáá«ááŸááá±á¬ááŒá±á¬áá·áº áááºááá·áºá¡áá¬ááᯠááœá±ážáá»ááºááááºááᯠáááºáá¬áá»áŸáẠáá¯á¶ážááŒááºááá¯ááºááŒá®áž á¡áá±ážá¡ááŒá®ážáá¯á¶ážááŸá¬ ááá·áºááœá±ážáá»ááºááŸá¯á¡ááœáẠáááºáá¬áááºáá°áááºááŒá
áºáááºá Nokiaá Juniperá Red Hat ááŸáá·áº VMWare á¡áááºážáá¯á¶áž áá¯ááºáá¯áẠ4 áá¯ááᯠááŒááºááŒá®áž áááááá°ááẠáá»áœááºá¯ááºááááºááŒááºáá»ááºáá¬ááŒá
áºáá«áááºá á¡á²áá«áá²á· ááŸáá¯ááºážá
áá¬áá
áºáá¯ááŸááááºá
source: www.habr.com