Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Ny informatika rahona dia miditra lalindalina kokoa hatrany amin'ny fiainantsika ary mety tsy misy olona iray izay tsy nampiasa serivisy rahona na dia indray mandeha aza. Na izany aza, inona marina ny rahona sy ny fomba fiasany, vitsy ny olona mahafantatra, na dia eo amin'ny haavon'ny hevitra iray aza. Ny 5G dia efa lasa zava-misy ary ny fotodrafitrasa momba ny fifandraisan-davitra dia manomboka miala amin'ny vahaolana amin'ny tsato-kazo mankany amin'ny vahaolana rahona, toy ny tamin'ny nifindrany tamin'ny vahaolana amin'ny hardware feno mankany amin'ny "andry" virtoaly.

Androany dia hiresaka momba ny tontolo anatiny amin'ny fotodrafitrasa rahona isika, indrindra fa hijery ny fototry ny ampahany amin'ny tambajotra.

Inona no atao hoe rahona? Ny virtoaly mitovy amin'izany - fijerena ny mombamomba azy?

Mihoatra noho ny fanontaniana lojika. Tsia - tsy virtoaly izany, na dia tsy vita aza izany raha tsy misy azy. Andeha hojerentsika ny famaritana roa:

Cloud computing (antsoina hoe Cloud) dia modely amin'ny fanomezana fahafaham-po amin'ny mpampiasa ny loharanon-karena informatika zaraina izay tsy maintsy apetraka sy atomboka amin'ny fangatahana miaraka amin'ny fahatarana faran'izay kely indrindra sy ny vidiny faran'izay kely indrindra ho an'ny mpanome tolotra.

Virtualization - izany no fahafahana mizara vatana ara-batana iray (ohatra, mpizara) ho virtoaly maromaro, ka mampitombo ny fampiasana ny loharanon-karena (ohatra, manana mpizara 3 misy 25-30 isan-jato ianao, aorian'ny virtoaly dia mahazo mpizara 1 ianao. amin'ny 80-90%). Mazava ho azy, ny virtoaly dia mihinana ny sasany amin'ireo loharanon-karena - mila mamahana ny hypervisor ianao, na izany aza, araka ny nasehon'ny fampiharana, ny lalao dia mendrika ny labozia. Ny ohatra tsara indrindra amin'ny virtoaly dia ny VMWare, izay manomana tsara ny milina virtoaly, na ohatra KVM, izay tiako kokoa, fa resaka tsiro izany.

Mampiasa virtoaly izahay nefa tsy mahatsapa izany, ary na ny router vy aza dia efa mampiasa virtoaly - ohatra, amin'ny dikan-teny farany amin'ny JunOS, ny rafitra fandidiana dia napetraka ho milina virtoaly eo an-tampon'ny fizarana Linux tena izy (Wind River 9). Fa ny virtoaly dia tsy ny rahona, fa ny rahona dia tsy misy raha tsy misy virtoaly.

Ny virtoaly dia iray amin'ireo sakana fanorenana iorenan'ny rahona.

Ny fanaovana rahona amin'ny alalan'ny fanangonana hypervisors maromaro fotsiny ao amin'ny sehatra L2 iray, manampy bokikely yaml roa ho an'ny fisoratana anarana ho azy ny vlans amin'ny alΓ lan'ny karazana Ansible ary ny fametrahana zavatra toy ny rafitra orkestra eo amboniny mba hamoronana milina virtoaly ho azy dia tsy mandeha. Ho marina kokoa izany, fa ny Frankenstein aterak'izany dia tsy ilay rahona ilaintsika, na dia mety ho nofinofy farany ho an'ny hafa aza izany. Ankoatra izany, raha maka Openstack mitovy ianao, dia mbola Frankenstein ihany, fa oh, aoka tsy hiresaka momba izany isika amin'izao fotoana izao.

Fa azoko fa avy amin'ny famaritana aseho etsy ambony dia tsy mazava tsara ny tena azo antsoina hoe rahona.

Noho izany, ny antontan-taratasy avy amin'ny NIST (National Institute of Standards and Technology) dia manome toetra 5 lehibe tokony hananana fotodrafitrasa rahona:

Manome serivisy raha ilaina. Ny mpampiasa dia tsy maintsy omena fahafahana miditra malalaka amin'ny loharanon'ny solosaina nomena azy (toy ny tambajotra, kapila virtoaly, fahatsiarovana, cores processeur, sns.), ary ireo loharano ireo dia tsy maintsy omena ho azy - izany hoe tsy misy fitsabahana avy amin'ny mpanome tolotra.

Betsaka ny serivisy. Ny fidirana amin'ny loharanon-karena dia tsy maintsy omen'ny rafitra manara-penitra mba ahafahana mampiasa PC mahazatra sy mpanjifa manify ary fitaovana finday.

Manambatra ny loharano ho dobo. Ny dobo loharanon-karena dia tsy maintsy afaka manome loharano ho an'ny mpanjifa maro miaraka amin'ny fotoana iray, miantoka fa mitoka-monina ny mpanjifa ary tsy misy fiantraikany sy fifaninanana ho an'ny loharanon-karena. Tafiditra ao anatin'ireo dobo ihany koa ny tambajotra, izay manondro ny mety hampiasana adiresy mifanindry. Ny dobo dia tokony ho afaka mirefy araka ny fangatahana. Ny fampiasana dobo dia ahafahana manome ny haavon'ny fandeferana amin'ny fahadisoan'ny loharanon-karena sy ny fitrandrahana ny loharanon-karena ara-batana sy virtoaly - ny mpandray ny serivisy dia omena fotsiny ny loharano nangatahany (izay misy ireo loharano ireo, amin'ny firy mpizara sy switch - tsy mampaninona ny mpanjifa izany). Na izany aza, tokony hojerentsika ny zava-misy fa ny mpamatsy dia tsy maintsy miantoka famandrihana mangarahara ireo loharano ireo.

Mampifanaraka haingana amin'ny toe-javatra samihafa. Ny serivisy dia tsy maintsy miovaova - ny fanomezana haingana ny loharanon-karena, ny fizarana azy ireo, ny fanampiana na ny fampihenana ny loharanon-karena araka ny fangatahan'ny mpanjifa, ary eo amin'ny lafiny mpanjifa dia tokony hisy fahatsapana fa tsy misy farany ny loharanon-drahona. Ho fanamorana ny fahatakarana, ohatra, dia tsy mahita fampitandremana ianao fa nanjavona ny ampahany amin'ny habaka kapila ao amin'ny Apple iCloud satria rava ny kapila mafy ao amin'ny server, ary rava ny fiara. Ankoatr'izay, amin'ny lafiny anao, ny fahafahan'ity serivisy ity dia saika tsy misy fetra - mila 2 TB ianao - tsy misy olana, nandoa ianao ary nahazo izany. Ohatra mitovy amin'izany dia azo omena amin'ny Google.Drive na Yandex.Disk.

Ny mety handrefesana ny serivisy omena. Ny rafitra rahona dia tsy maintsy mifehy ho azy sy manatsara ny loharanon-karena lany, ary ireo rafitra ireo dia tsy maintsy mangarahara amin'ny mpampiasa sy ny mpanome tolotra. Izany hoe, azonao atao ny manamarina foana hoe firy ny loharanon-karena laninao sy ny mpanjifanao.

Ilaina ny mandinika ny zava-misy fa ireo fepetra ireo dia takiana amin'ny ankamaroan'ny rahona ho an'ny daholobe, ka ho an'ny rahona manokana (izany hoe rahona natomboka ho an'ny filan'ny orinasa), dia azo amboarina kely ireo fepetra ireo. Na izany aza, mbola tsy maintsy atao izy ireo, raha tsy izany dia tsy hahazo ny tombontsoa rehetra amin'ny informatika rahona isika.

Nahoana isika no mila rahona?

Na izany aza, ny teknolojia vaovao na efa misy, ny protocol vaovao dia noforonina ho an'ny zavatra (tsara, afa-tsy ny RIP-ng, mazava ho azy). Tsy misy mila protocole ho an'ny protocol (tsara, afa-tsy ny RIP-ng, mazava ho azy). Lojika fa ny Cloud dia noforonina mba hanomezana karazana serivisy ho an'ny mpampiasa/mpanjifa. Fantatsika rehetra ny serivisy rahona roa farafaharatsiny, ohatra Dropbox na Google.Docs, ary mino aho fa ny ankamaroan'ny olona dia mampiasa azy ireo amim-pahombiazana - ohatra, ity lahatsoratra ity dia nosoratana tamin'ny alΓ lan'ny serivisy rahona Google.Docs. Saingy ny serivisy rahona fantatray dia ampahany amin'ny fahafahan'ny rahona ihany β€” ny marimarina kokoa, dia serivisy karazana SaaS ihany izy ireo. Afaka manome serivisy rahona amin'ny fomba telo izahay: amin'ny endrika SaaS, PaaS na IaaS. Ny serivisy ilainao dia miankina amin'ny fanirianao sy ny fahaiza-manaonao.

Andeha hojerentsika tsirairay araka ny filaharany:

Software amin'ny Service (SaaS) dia modely amin'ny fanomezana serivisy feno ho an'ny mpanjifa, ohatra, serivisy mailaka toy ny Yandex.Mail na Gmail. Amin'ity modely fanaterana serivisy ity, ianao, amin'ny maha-mpanjifa, dia tsy manao na inona na inona afa-tsy ny fampiasana ny serivisy - izany hoe, tsy mila mieritreritra momba ny fametrahana ny serivisy ianao, ny fandeferana amin'ny fahadisoana na ny tsy fahampiana. Ny zava-dehibe dia ny tsy mampandefitra ny tenimiafinao; ny mpamatsy an'ity serivisy ity dia hanao ny ambiny ho anao. Avy amin'ny fomba fijerin'ny mpanome tolotra dia tompon'andraikitra tanteraka amin'ny serivisy manontolo izy - manomboka amin'ny hardware server sy ny rafitra fiasan'ny mpampiantrano mankany amin'ny fametrahana database sy rindrambaiko.

Sehatra ho serivisy (PaaS) β€” rehefa mampiasa an'io modely io ny mpanome tolotra dia manome fitaovana ho an'ny serivisy ho an'ny mpanjifa, ohatra, andao isika haka mpizara Web. Ny mpanome tolotra dia nanome mpizara virtoaly ho an'ny mpanjifa (raha ny marina, andiana loharanon-karena, toy ny RAM/CPU/Storage/Nets, sns.), ary na dia nametraka ny OS sy ny rindrambaiko ilaina amin'ity mpizara ity aza, ny fanamafisana ny ireo zavatra rehetra ireo dia ataon'ny mpanjifa ny tenany ary ho an'ny fanatanterahana ny serivisy dia valian'ny mpanjifa. Ny mpanome tolotra, toy ny tamin'ny tranga teo aloha, dia tompon'andraikitra amin'ny fanatanterahana ny fitaovana ara-batana, ny hypervisors, ny milina virtoaly, ny fisian'ny tambajotra, sns., Fa ny serivisy dia tsy eo amin'ny sehatry ny andraikiny intsony.

Fotodrafitrasa ho serivisy (IaaS) - Ity fomba fiasa ity dia efa mahaliana kokoa, raha ny marina, ny mpanome tolotra dia manome fotodrafitrasa virtoaly feno ho an'ny mpanjifa - izany hoe, misy loharano (dobo) sasany, toy ny CPU Cores, RAM, Networks, sns. ny mpanjifa - inona no tian'ny mpanjifa atao amin'ireo loharano ireo ao anatin'ny dobo voatokana (quota) - tsy dia zava-dehibe loatra ho an'ny mpamatsy izany. Na te hamorona ny vEPC azy manokana ny mpanjifa na hamorona opΓ©rateur mini sy hanome tolotra serasera - tsy misy isalasalana - ataovy izany. Amin'ny toe-javatra toy izany, ny mpanome tolotra dia tompon'andraikitra amin'ny famatsiana loharanon-karena, ny fandeferana sy ny fisian'izy ireo, ary koa ny OS izay ahafahan'izy ireo manangona ireo loharano ireo ary manome azy ireo ho an'ny mpanjifa afaka mampitombo na mampihena ny loharano amin'ny fotoana rehetra. amin'ny fangatahan'ny mpanjifa. Ny mpanjifa dia manamboatra ny milina virtoaly rehetra sy ny tinsel hafa amin'ny alΓ lan'ny vavahadin-tserasera sy ny console, anisan'izany ny fametrahana tambajotra (afa-tsy ny tambajotra ivelany).

Inona no atao hoe OpenStack?

Amin'ireo safidy telo rehetra ireo, ny mpanome tolotra dia mila OS izay ahafahana mamorona fotodrafitrasa rahona. Raha ny marina, miaraka amin'ny SaaS, fizarana mihoatra ny iray no tompon'andraikitra amin'ny fitambaran'ny teknolojia iray manontolo - misy fizarana izay tompon'andraikitra amin'ny fotodrafitrasa - izany hoe manome IaaS ho an'ny fizarana hafa, ity fizarana ity dia manome SaaS ho an'ny mpanjifa. OpenStack dia iray amin'ireo rafitra miasa rahona izay ahafahanao manangona andiana switch, servers ary rafitra fitahirizana ao anaty dobo loharano tokana, mizara ity dobo iraisana ity ho subpools (mpanofa) ary manome ireo loharano ireo ho an'ny mpanjifa amin'ny tambajotra.

OpenStack dia rafitra fiasa rahona izay ahafahanao mifehy ireo dobo lehibe misy loharanon-karena informatika, fitahirizana angon-drakitra ary loharanon-tambajotra, omena sy tantanana amin'ny alΓ lan'ny API mampiasa rafitra fanamarinana mahazatra.

Raha lazaina amin'ny teny hafa, ity dia andiana tetikasa rindrambaiko maimaim-poana izay natao hamoronana serivisy rahona (na ho an'ny daholobe na tsy miankina) - izany hoe, fitaovana iray ahafahanao manambatra ny mpizara sy ny fitaovana enti-mivadika ho loharanon-karena tokana, mitantana. ireo loharano ireo, manome ny haavon'ny fandeferana tsy maintsy ilaina.

Amin'ny fotoana hanoratana ity fitaovana ity, ny rafitra OpenStack dia toy izao:
Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona
Sary nalaina tamin'ny openstack.org

Ny singa tsirairay ao amin'ny OpenStack dia manao asa manokana. Ity maritrano zaraina ity dia ahafahanao mampiditra ao anatin'ilay vahaolana ny fitambaran'ireo singa miasa ilainao. Na izany aza, ny singa sasany dia singa fototra ary ny fanesorana azy ireo dia hitarika amin'ny tsy fahombiazan'ny vahaolana amin'ny ankapobeny na amin'ny ampahany. Ireo singa ireo matetika dia sokajiana ho:

  • Dashboard - GUI mifototra amin'ny Internet amin'ny fitantanana ny serivisy OpenStack
  • vato ifaharana dia serivisy famantarana ivotoerana izay manome asa fanamarinana sy fanomezan-dΓ lana ho an'ny serivisy hafa, ary koa amin'ny fitantanana ny mombamomba ny mpampiasa sy ny andraikiny.
  • Neutron - serivisy tambajotra izay manome fifandraisana eo amin'ny fifandraisan'ny serivisy OpenStack isan-karazany (ao anatin'izany ny fifandraisana eo amin'ny VM sy ny fidirana amin'ny tontolo ivelany)
  • Cinder - manome fahafahana hanakana ny fitahirizana ho an'ny milina virtoaly
  • Nova - fitantanana tsingerin'ny fiainana ny milina virtoaly
  • jerena - fitehirizana sary sy sary amin'ny milina virtoaly
  • Swift - manome fidirana amin'ny zavatra fitahirizana
  • Ceilometer β€” tolotra manome fahafahana manangona telemΓ©trie sy mandrefy ireo loharanon-karena azo ampiasaina sy lany
  • hafanana - orkestra mifototra amin'ny maodely ho an'ny famoronana mandeha ho azy sy ny fanomezana loharanon-karena

Ny lisitra feno amin'ny tetikasa rehetra sy ny tanjon'izy ireo dia azo jerena eto.

Ny singa OpenStack tsirairay dia serivisy manatanteraka asa manokana ary manome API hitantana izany asa izany ary hifanerasera amin'ny serivisy rafitra fiasan-drahona hafa mba hamoronana fotodrafitrasa iray. Ohatra, Nova dia manome fitantanana loharanon-karena informatika sy API ho an'ny fidirana amin'ny fanamafisana ireo loharano ireo, Glance dia manome fitantanana sary sy API ho an'ny fitantanana azy ireo, Cinder dia manome fitehirizana sakana sy API ho an'ny fitantanana azy, sns. Ny fiasa rehetra dia mifandray amin'ny fomba tena akaiky.

Na izany aza, raha mijery azy ianao, ny serivisy rehetra mandeha amin'ny OpenStack dia karazana milina virtoaly (na container) mifandray amin'ny tambajotra. Mipetraka ny fanontaniana - nahoana isika no mila singa maro?

Andeha hojerentsika ny algorithm amin'ny famoronana milina virtoaly ary mampifandray izany amin'ny tambajotra sy fitahirizana maharitra ao amin'ny Openstack.

  1. Rehefa mamorona fangatahana hamorona milina ianao, na fangatahana amin'ny Horizon (Dashboard) na fangatahana amin'ny CLI, ny zavatra voalohany mitranga dia ny fanomezan-dΓ lana ny fangatahanao amin'ny Keystone - afaka mamorona milina ve ianao, manana ny zo hampiasa an'ity tambajotra ity, manao ny volavolanao quota, sns.
  2. Keystone dia manamarina ny fangatahanao ary mamorona mari-pamantarana auth ao amin'ny hafatra valiny, izay hampiasaina bebe kokoa. Rehefa nahazo valiny avy amin'i Keystone, dia alefa mankany Nova (nova api) ny fangatahana.
  3. Nova-api dia manamarina ny maha-ara-dalΓ na ny fangatahanao amin'ny alΓ lan'ny fifandraisana amin'ny Keystone amin'ny fampiasana ny mari-pamantarana fanamarinana efa novokarina teo aloha
  4. Keystone dia manao fanamarinana ary manome fampahalalana momba ny fahazoan-dΓ lana sy fameperana mifototra amin'ity mari-pamantarana fanamarinana ity.
  5. Nova-api dia mamorona fidirana ho an'ny VM vaovao ao amin'ny nova-database ary mandalo ny fangatahana hamoronana ny milina amin'ny nova-scheduler.
  6. Nova-scheduler dia mifidy ny mpampiantrano (node ​​informatika) izay hapetraka ny VM mifototra amin'ny mari-pamantarana, lanja ary faritra voafaritra. Ny firaketana an'io sy ny ID VM dia nosoratana tamin'ny nova-database.
  7. Manaraka, ny nova-scheduler dia mifandray amin'ny nova-compute miaraka amin'ny fangatahana hametraka ohatra. Nova-compute dia mifandray amin'ny nova-conductor mba hahazoana vaovao momba ny mari-pamantarana milina (nova-conductor dia singa nova izay miasa toy ny mpizara proxy eo anelanelan'ny nova-database sy nova-compute, mametra ny isan'ny fangatahana amin'ny nova-database mba hisorohana ny olana amin'ny database. fampihenana ny entana tsy miovaova).
  8. Nova-conductor dia mandray ny fampahalalana angatahina avy amin'ny nova-database ary mampita izany amin'ny nova-compute.
  9. Manaraka, nova-compute antso indray mijery mba hahazoana ny sary ID. Glace dia manamarina ny fangatahana ao amin'ny Keystone ary mamerina ny fampahalalana nangatahana.
  10. Nova-compute mifandray amin'ny neutron mba hahazoana vaovao momba ny masontsivana tambajotra. Mitovy amin'ny fijery, ny neutron dia manamarina ny fangatahana ao amin'ny Keystone, ary avy eo dia mamorona fidirana ao amin'ny angon-drakitra (famantarana seranan-tsambo, sns.), mamorona fangatahana hamorona seranana, ary mamerina ny fampahalalana nangatahana amin'ny nova-compute.
  11. Nova-compute dia mifandray amin'ny cinder miaraka amin'ny fangatahana hanokana boky ho an'ny milina virtoaly. Mitovy amin'ny glance, ny cider dia manamarina ny fangatahana ao amin'ny Keystone, mamorona fangatahana famoronana boky, ary mamerina ny fampahalalana nangatahana.
  12. Nova-compute dia mifandray amin'ny libvirt miaraka amin'ny fangatahana hametraka milina virtoaly miaraka amin'ny mari-pamantarana voafaritra.

Raha ny marina, ny hetsika toa tsotra amin'ny famoronana milina virtoaly tsotra dia mivadika ho whirlpool amin'ny antso API eo anelanelan'ireo singa ao amin'ny sehatra rahona. Ankoatr'izay, araka ny hitanao, na ny serivisy voatondro teo aloha aza dia misy singa kely kokoa izay misy ny fifandraisana. Ny famoronana milina dia ampahany kely amin'ny zavatra azon'ny sehatra rahona atao - misy serivisy tompon'andraikitra amin'ny fampifandanjana ny fifamoivoizana, serivisy tompon'andraikitra amin'ny fitahirizana sakana, serivisy tompon'andraikitra amin'ny DNS, serivisy tompon'andraikitra amin'ny fanomezana servera vy tsy misy dikany, sns . Ny rahona dia mamela anao hitondra ny milina virtoaly ho toy ny andian'ondry (mifanohitra amin'ny virtoaly). Raha misy zavatra mitranga amin'ny milinanao amin'ny tontolo virtoaly - averinao amin'ny backups, sns., fa ny rindranasa rahona dia naorina amin'ny fomba izay tsy manana anjara toerana lehibe toy izany ny milina virtoaly - "maty" ny milina virtoaly - tsy misy olana - vaovao vao noforonina ny fiara dia mifototra amin'ny mΓ΄dely ary, araka ny filazan'izy ireo, ny ekipa dia tsy nahatsikaritra ny fahaverezan'ny mpiady. Mazava ho azy, izany dia manome ny fisian'ny mekanika orkestra - amin'ny fampiasana modely Heat, azonao atao ny mametraka mora foana ny asa sarotra ahitana tambajotra am-polony sy milina virtoaly.

Ilaina foana ny mitadidy fa tsy misy fotodrafitrasa rahona tsy misy tambajotra - ny singa tsirairay amin'ny fomba iray na hafa dia mifandray amin'ny singa hafa amin'ny alΓ lan'ny tambajotra. Ankoatra izany, ny rahona dia manana tamba-jotra tsy mitombina tanteraka. Mazava ho azy, ny tamba-jotra ambanin'ny tany dia somary mihetsiketsika kokoa na latsaka - ny node vaovao sy ny switch dia tsy ampiana isan'andro, fa ny singa overlay dia afaka ary tsy azo ihodivirana hiova tsy tapaka - ny tambajotra vaovao dia ampiana na voafafa, hiseho ny milina virtoaly vaovao ary ny taloha dia hiseho. maty. Ary araka ny tadidinao avy amin'ny famaritana ny rahona nomena tany am-piandohan'ny lahatsoratra, ny loharanon-karena dia tokony atokana ho an'ny mpampiasa ho azy ary miaraka amin'ny kely indrindra (na tsara kokoa, tsy misy) fitsabahan'ny mpanome tolotra. Izany hoe, ny karazana fanomezana loharanon-tambajotra izay misy amin'izao fotoana izao amin'ny endrika front-end amin'ny endriky ny kaontinao manokana azo idirana amin'ny alΓ lan'ny http/https ary ny injeniera amin'ny tambajotra miasa Vasily ho backend dia tsy rahona, na dia raha valo tanana i Vasily.

Ny Neutron, amin'ny maha serivisy tambajotra, dia manome API amin'ny fitantanana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona. Ny serivisy dia manome hery sy mitantana ny ampahany amin'ny tambajotran'ny Openstack amin'ny fanomezana sosona abstraction antsoina hoe Network-as-a-Service (NaaS). Izany hoe, ny tambajotra dia mitovy amin'ny virtoaly azo refesina amin'ny, ohatra, virtoaly CPU cores na ny habetsaky ny RAM.

Saingy alohan'ny hirosoana amin'ny rafitry ny ampahan'ny tambajotran'ny OpenStack, andeha hojerentsika ny fomba fiasan'ity tambajotra ity ao amin'ny OpenStack sy ny antony maha-zava-dehibe sy manan-danja amin'ny rahona ny tambajotra.

Noho izany dia manana VM mpanjifa RED roa sy VM mpanjifa MAITS roa izahay. Andeha hojerentsika fa ireto milina ireto dia hita amin'ny hypervisors roa toy izao:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Amin'izao fotoana izao, virtoaly virtoaly 4 fotsiny izany ary tsy misy afa-tsy, satria ny zavatra rehetra nataontsika dia ny virtoaly 4 mpizara, mametraka azy ireo amin'ny mpizara ara-batana roa. Ary hatramin'izao dia tsy mifandray amin'ny tambajotra akory izy ireo.

Mba hanaovana rahona dia mila manampy singa maromaro isika. Voalohany, ataontsika virtoaly ny ampahany amin'ny tambajotra - mila mampifandray tsiroaroa ireo milina 4 ireo, ary mila fifandraisana L2 ny mpanjifa. Azonao atao ny mampiasa switch ary manamboatra vatan-kazo amin'ny lΓ lany ary mamaha ny zava-drehetra amin'ny alΓ lan'ny tetezana linux na, ho an'ireo mpampiasa efa mandroso kokoa, openvswitch (hiverina amin'ity indray mandeha ity izahay). Saingy mety misy tambajotra marobe, ary ny fanosehana tsy tapaka ny L2 amin'ny alΓ lan'ny switch dia tsy ny hevitra tsara indrindra - misy sampana samihafa, biraon'ny serivisy, volana maromaro miandry ny famitana ny fangatahana, herinandro amin'ny famahana olana - amin'ny tontolo maoderina ity. tsy mandeha intsony ny fomba fiasa. Ary arakaraky ny hahafantaran'ny orinasa iray izany no moramora kokoa ny handrosoany. Noho izany, eo anelanelan'ny hypervisors dia hisafidy tambajotra L3 isika izay hifandraisan'ny milina virtoaly, ary ambonin'ity tambajotra L3 ity dia hanangana tambajotra overlay L2 virtoaly izay handehanan'ny fifamoivoizana amin'ny milina virtoaly. Azonao atao ny mampiasa GRE, Geneve na VxLAN ho encapsulation. Andeha isika hifantoka amin'ity farany, na dia tsy dia zava-dehibe loatra aza.

Mila mitady VTEP any amin'ny toerana iray isika (manantena aho fa fantatry ny rehetra ny voambolana VxLAN). Koa satria manana tambajotra L3 avy any amin'ireo mpizara izahay, dia tsy misy manakana anay tsy hametraka VTEP amin'ny mpizara mihitsy, ary ny OVS (OpenvSwitch) dia tena tsara amin'ny fanaovana izany. Vokatr'izany dia nahazo ity drafitra ity izahay:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Satria tsy maintsy zaraina ny fifamoivoizana eo amin'ny VM, ny seranana mankany amin'ny milina virtoaly dia hanana isa vlan samihafa. Ao anatin'ny switch virtoaly iray ihany no misy ny laharan'ny tag, satria rehefa voarakitra ao amin'ny VxLAN isika dia afaka manala azy mora foana, satria hanana VNI isika.

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Ankehitriny isika dia afaka mamorona ny milina sy tambajotra virtoaly ho azy ireo tsy misy olana.

Ahoana anefa raha manana milina hafa ny mpanjifa, fa amin'ny tambajotra hafa? Mila fangotana eo anelanelan'ny tambajotra. Hijery safidy tsotra isika rehefa ampiasaina ny zotra afovoany - izany hoe, ny fifamoivoizana dia alefa amin'ny alΓ lan'ny nodes tambajotra manokana (eny, raha ny fitsipika, izy ireo dia mitambatra amin'ny nodes fanaraha-maso, noho izany dia hanana zavatra mitovy isika).

Toa tsy misy sarotra izany - manao tetezana eo amin'ny node fanaraha-maso izahay, mitondra fiara mankany aminy ary avy eo dia mitondra azy any amin'izay ilanay azy. Fa ny olana dia ny mpanjifa RED dia te hampiasa ny tambajotra 10.0.0.0/24, ary ny mpanjifa GREEN dia te hampiasa ny tambajotra 10.0.0.0/24. Izany hoe, manomboka mifanelanelana ireo habaka adiresy. Ankoatr'izay, tsy tian'ny mpanjifa ny ahafahan'ny mpanjifa hafa miditra ao amin'ny tambajotra anatiny, izay misy dikany. Mba hanasarahana ny tambajotra sy ny fifamoivoizana angon-drakitra mpanjifa, dia homenay toerana manokana ho an'ny tsirairay amin'izy ireo. Ny Namespace raha ny marina dia dika mitovy amin'ny tambazotran'ny tambajotra Linux, izany hoe, ny mpanjifa ao amin'ny namespace RED dia mitoka-monina tanteraka amin'ny mpanjifa amin'ny namespace GREEN (na ny lalana eo anelanelan'ireo tambajotra mpanjifa ireo dia avela amin'ny alΓ lan'ny anaran'ny anarana na amin'ny fitaovana fitaterana ambony).

Izany hoe mahazo ity diagram ity isika:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Ny tonelina L2 dia mitambatra avy amin'ny node computing rehetra mankany amin'ny node fanaraha-maso. node misy ny seha-pifandraisana L3 ho an'ireo tambajotra ireo, samy ao amin'ny toerana misy anarana manokana ho an'ny fitokanana.

Na izany aza, hadinontsika ny zava-dehibe indrindra. Ny milina virtoaly dia tsy maintsy manome serivisy ho an'ny mpanjifa, izany hoe, tsy maintsy manana interface ivelany ivelany iray farafahakeliny izay ahafahany mahazo azy. Izany hoe mila mivoaka any ivelany isika. Misy safidy samihafa eto. Andao hanao ny safidy tsotra indrindra. Hanampy tambajotra iray ho an'ny mpanjifa tsirairay izahay, izay manan-kery ao amin'ny tambajotran'ny mpamatsy ary tsy hifanindry amin'ny tambajotra hafa. Ny tambajotra dia afaka mifanelanelana sy mijery VRF samihafa eo amin'ny sisin'ny tambajotra mpamatsy. Hiaina amin'ny anaran'ny mpanjifa tsirairay ihany koa ny angon-drakitra tambajotra. Na izany aza, mbola hivoaka any ivelany izy ireo amin'ny alΓ lan'ny fifandraisana ara-batana (na fatorana, izay lojika kokoa). Mba hampisaraka ny fifamoivoizana mpanjifa, ny fifamoivoizana mivoaka any ivelany dia hasiana marika amin'ny tenifototra VLAN natokana ho an'ny mpanjifa.

Vokatr'izany dia nahazo ity kisary ity izahay:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Fanontaniana mitombina ny hoe maninona no tsy manao vavahady amin'ny node kajy? Tsy olana lehibe izany, ankoatra izany, raha mihodina ny router distributed (DVR) ianao, dia hahomby izany. Amin'ity tranga ity, dia mandinika ny safidy tsotra indrindra amin'ny vavahady afovoany, izay ampiasaina amin'ny default ao amin'ny Openstack. Ho an'ny fiasa avo lenta dia samy hampiasa ny router mizara sy ny teknolojia fanaingoana toy ny SR-IOV sy Passthrough izy ireo, saingy araka ny filazan'izy ireo dia tantara hafa tanteraka izany. Voalohany, andeha hojerentsika ny ampahany fototra, ary avy eo dia hiditra amin'ny antsipiriany.

Raha ny marina, efa azo atao ny drafitra ataontsika, saingy misy ny nuance roa:

  • Mila miaro ny milinantsika isika, izany hoe mametraka sivana eo amin'ny interface switch mankany amin'ny mpanjifa.
  • Ataovy izay ahafahan'ny milina virtoaly mahazo adiresy IP ho azy, ka tsy mila miditra ao amin'ny console ianao isaky ny manoratra ny adiresy.

Andeha isika hanomboka amin'ny fiarovana milina. Mba hanaovana izany dia afaka mampiasa banal iptables ianao, nahoana no tsy.

Izany hoe, lasa sarotra kokoa ny topolojiantsika:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Andao handroso. Mila manampy mpizara DHCP isika. Ny toerana tsara indrindra hahitana ny mpizara DHCP ho an'ny mpanjifa tsirairay dia ny node fanaraha-maso efa voalaza etsy ambony, izay misy ny toerana misy ny anaran'ny anarana:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Na izany aza, misy olana kely. Ahoana raha miverina ny zava-drehetra ary tsy hita intsony ny fampahalalana rehetra momba ny fanofana adiresy amin'ny DHCP. Lojika fa homena adiresy vaovao ireo milina, izay tsy dia mety loatra. Misy fomba roa mivoaka eto - na mampiasa anaran-tsehatra ary ampio mpizara DNS ho an'ny mpanjifa tsirairay, dia tsy ho zava-dehibe amintsika manokana ny adiresy (mitovy amin'ny ampahany amin'ny tambajotra amin'ny k8s) - fa misy olana amin'ny tambajotra ivelany, satria Ny adiresy dia azo omena azy ireo amin'ny alΓ lan'ny DHCP ihany koa - mila fampifanarahana amin'ireo mpizara DNS amin'ny sehatra rahona sy mpizara DNS ivelany ianao, izay raha ny hevitro dia tsy dia miovaova loatra, fa azo atao. Na ny safidy faharoa dia ny fampiasana metadata - izany hoe, mitahiry vaovao momba ny adiresy navoakan'ny milina mba hahafantaran'ny mpizara DHCP izay adiresy havoaka amin'ny milina raha efa nahazo adiresy ilay milina. Ny safidy faharoa dia tsotra sy mora kokoa, satria ahafahanao mitahiry fampahalalana fanampiny momba ny fiara. Andeha isika hanampy metadata mpandraharaha amin'ny kisary:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Olana iray hafa izay mendrika hodinihina ihany koa dia ny fahafahana mampiasa tambajotra ivelany iray ho an'ny mpanjifa rehetra, satria ny tambajotra ivelany, raha tsy maintsy manan-kery manerana ny tambajotra iray manontolo, dia ho sarotra - mila mizara sy mifehy ny fizarana ireo tambajotra ireo ianao. Ny fahafahana mampiasa tamba-jotra tokana ivelany efa namboarina ho an'ny mpanjifa rehetra dia tena ilaina rehefa mamorona rahona ho an'ny daholobe. Hanamora ny fametrahana milina izany satria tsy mila mijery angon-drakitra adiresy isika ary misafidy toerana misy adiresy tokana ho an'ny tambajotra ivelany an'ny mpanjifa tsirairay. Ankoatra izany, afaka misoratra anarana mialoha ny tambajotra ivelany ary amin'ny fotoana fametrahana dia mila mampifandray ny adiresy ivelany amin'ny milina mpanjifa ihany.

Ary eto dia tonga manampy anay ny NAT - hataonay fotsiny izay ahafahan'ny mpanjifa miditra amin'ny tontolo ivelany amin'ny alΓ lan'ny toeran'ny anarana mahazatra mampiasa dikanteny NAT. Eny, misy olana kely eto. Tsara izany raha miasa ho mpanjifa ny mpizara mpanjifa fa tsy mpizara - izany hoe manomboka izy fa tsy manaiky fifandraisana. Fa ho antsika kosa dia ny mifanohitra amin’izany. Amin'ity tranga ity, mila manao NAT ho an'ny tanjona isika ka rehefa mahazo fifamoivoizana dia takatry ny node fanaraha-maso fa ity fifamoivoizana ity dia natao ho an'ny milina virtoaly A an'ny mpanjifa A, izay midika fa mila manao fandikana NAT avy amin'ny adiresy ivelany, ohatra 100.1.1.1. .10.0.0.1, mankany amin'ny adiresy anatiny 100. Amin'ity tranga ity, na dia hampiasa tambajotra iray ihany aza ny mpanjifa rehetra, dia voatahiry tanteraka ny fitokana-monina anatiny. Izany hoe mila manao dNAT sy sNAT amin'ny node fanaraha-maso. Ny fampiasana tambajotra tokana misy adiresy mitsingevana na tambajotra ivelany, na izy roa miaraka dia miankina amin'izay tianao hampidirina ao anaty rahona. Tsy hampiditra adiresy mitsingevana amin'ny diagram izahay, fa hamela ireo tambajotra ivelany efa nampiana teo aloha - ny mpanjifa tsirairay dia manana ny tambajotra ivelany (amin'ny diagram dia aseho ho vlan 200 sy XNUMX amin'ny interface ivelany).

Vokatr'izany dia nahazo vahaolana mahaliana sy voahevitra tsara izahay, izay manana flexibilitΓ© manokana nefa tsy mbola manana rafitra fandeferana diso.

Voalohany, tsy misy afa-tsy node fanaraha-maso tokana isika - ny tsy fahombiazany dia hitarika amin'ny firodanan'ny rafitra rehetra. Mba hamahana ity olana ity dia mila manao kΓ΄lejy 3 farafahakeliny ianao. Aleo ampidirintsika amin'ny kisary ity:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Mazava ho azy, ny node rehetra dia synchronize ary rehefa miala ny node mavitrika, node iray hafa no handray ny andraikiny.

Ny olana manaraka dia ny kapila milina virtoaly. Amin'izao fotoana izao dia voatahiry ao amin'ny hypervisors ny tenany, ary raha misy olana amin'ny hypervisor, very ny angon-drakitra rehetra isika - ary ny fisian'ny fanafihana dia tsy hanampy eto raha tsy very ny disk, fa ny mpizara manontolo. Mba hanaovana izany, dia mila manao serivisy izay ho toy ny faran'ny anoloana ho an'ny karazana fitahirizana sasany. Tsy dia zava-dehibe loatra amintsika ny karazana fitehirizana azy, fa tokony hiaro ny angonay amin'ny tsy fahombiazan'ny kapila sy ny node, ary mety ho ny kabinetra manontolo. Misy safidy maromaro eto - misy, mazava ho azy, ny tambajotra SAN miaraka amin'ny Fibre Channel, fa aoka ho marin-toetra - efa relijiozy taloha ny FC - analogue an'ny E1 amin'ny fitaterana - eny, ekeko fa mbola ampiasaina izy io, fa any amin'ny toerana tsy azo atao mihitsy raha tsy misy azy. Noho izany, tsy hametraka an-tsitrapo tambajotra FC aho amin'ny 2020, satria fantatro fa misy safidy hafa mahaliana kokoa. Na dia ho an'ny tsirairay aza dia mety misy ny mino fa ny FC miaraka amin'ny fetrany rehetra no ilaintsika - tsy hiady hevitra aho, samy manana ny heviny ny tsirairay. Na izany aza, ny vahaolana mahaliana indrindra raha ny hevitro dia ny fampiasana SDS, toy ny Ceph.

Ceph dia ahafahanao manangana vahaolana fitahirizana angon-drakitra be dia be miaraka amin'ireo safidy backup azo atao, manomboka amin'ny kaody miaraka amin'ny fanamarinana parity (mitovy amin'ny fanafihana 5 na 6) mifarana amin'ny replication angon-drakitra feno amin'ny kapila samihafa, amin'ny fiheverana ny toerana misy ny kapila ao. mpizara, ary mpizara ao anaty kabinetra, sns.

Mba hananganana Ceph dia mila node 3 fanampiny ianao. Ny fifandraisana amin'ny fitehirizana dia hatao amin'ny alΓ lan'ny tambajotra amin'ny fampiasana sakana, zavatra ary serivisy fitahirizana rakitra. Andao hanampy fitahirizana amin'ny skema:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Fanamarihana: azonao atao koa ny manao nodes compute hyperconverged - izany no foto-kevitra mampitambatra asa maromaro amin'ny node iray - ohatra, fitehirizana + compute - tsy misy manokana node manokana ho an'ny fitehirizana ceph. Hahazo tetika mahazaka lesoka mitovy ihany izahay - satria ny SDS dia hamandrika angona miaraka amin'ny haavon'ny famandrihana nofaritanay. Na izany aza, marimaritra iraisana foana ny node hyperconverged - satria ny node fitehirizana dia tsy manafana rivotra fotsiny araka ny hita amin'ny voalohany (satria tsy misy milina virtoaly ao aminy) - mandany loharanon-karena CPU amin'ny serivisy SDS (raha ny marina dia manao ny zava-drehetra. ny replication sy ny fanarenana aorian'ny tsy fahombiazan'ny nodes, disks, sns.). Izany hoe, ho very ny sasany amin'ny herin'ny node compute ianao raha atambatra amin'ny fitahirizana.

Ireo zavatra rehetra ireo dia mila fehezina amin'ny fomba ahoana - mila zavatra ahafahantsika mamorona milina, tambajotra, router virtoaly, sns. Mba hanaovana izany, dia hanampy serivisy amin'ny node fanaraha-maso izay hiasa ho toy ny dashboard - ny Ny mpanjifa dia afaka mifandray amin'ity vavahadin-tserasera ity amin'ny alΓ lan'ny http/ https ary manao izay rehetra ilainy (tsara, saika).

Vokany, manana rafitra mahazaka fahadisoana isika ankehitriny. Ny singa rehetra amin'ity fotodrafitrasa ity dia tsy maintsy tantanina amin'ny fomba ahoana. Efa nofaritana teo aloha fa ny Openstack dia andiana tetikasa, izay samy manome asa manokana. Araka ny hitantsika, misy singa mihoatra ny ampy izay mila amboarina sy fehezina. Androany isika dia hiresaka momba ny ampahany amin'ny tambajotra.

Architecture neutron

Ao amin'ny OpenStack, dia i Neutron no tompon'andraikitra amin'ny fampifandraisana ireo seranan-tsambo virtoaly amin'ny tambajotra L2 mahazatra, miantoka ny fifamoivoizana eo amin'ny VM izay hita amin'ny tambajotra L2 samihafa, ary koa ny fivoahana ivelany, manome serivisy toy ny NAT, Floating IP, DHCP, sns.

Amin'ny ambaratonga avo, ny fiasan'ny serivisy tambajotra (ny ampahany fototra) dia azo faritana toy izao manaraka izao.

Rehefa manomboka ny VM, ny serivisy tambajotra:

  1. Mamorona seranan-tsambo ho an'ny VM (na seranana) nomena ary mampandre ny serivisy DHCP momba izany;
  2. Misy fitaovana tambajotra virtoaly vaovao noforonina (amin'ny alΓ lan'ny libvirt);
  3. Ny VM dia mifandray amin'ny seranana (s) noforonina tamin'ny dingana 1;

Mahagaga fa ny asan'i Neutron dia mifototra amin'ny mekanika mahazatra mahazatra ny rehetra izay nitsofoka tao amin'ny Linux - namespaces, iptables, tetezana linux, openvswitch, conntrack, sns.

Tokony hazavaina avy hatrany fa tsy mpanara-maso SDN ny Neutron.

Ny Neutron dia misy singa maromaro mifamatotra:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Openstack-neutron-server dia daemon izay miasa amin'ny fangatahan'ny mpampiasa amin'ny alΓ lan'ny API. Ity demony ity dia tsy mandray anjara amin'ny fisoratana anarana amin'ny fifandraisana amin'ny tambajotra, fa manome ny fampahalalana ilaina amin'izany amin'ny plugins, izay manamboatra ny singa tambajotra irina. Ireo mpiasan'ny Neutron ao amin'ny OpenStack nodes dia misoratra anarana amin'ny mpizara Neutron.

Ny Neutron-server dia fampiharana voasoratra amin'ny python, misy ampahany roa:

  • Serivisy REST
  • Plugin Neutron (fototra/serivisy)

Ny serivisy REST dia natao handraisana antso API avy amin'ny singa hafa (ohatra, fangatahana hanome vaovao, sns.)

Plugins dia singa / modules rindrankajy plug-in izay antsoina mandritra ny fangatahana API - izany hoe, amin'ny alΓ lan'izy ireo no miseho ny fandraisan'ny serivisy. Ny plugins dia mizara ho karazany roa - serivisy sy faka. Raha ny fitsipika, ny plugin soavaly dia tompon'andraikitra indrindra amin'ny fitantanana ny habaka adiresy sy ny fifandraisana L2 eo amin'ny VM, ary ny plugins serivisy dia efa manome fiasa fanampiny toy ny VPN na FW.

Ny lisitry ny plugins misy ankehitriny dia azo jerena ohatra eto

Mety misy plugins serivisy maromaro, saingy tsy misy afa-tsy plugin soavaly iray.

openstack-neutron-ml2 dia ny plugin Openstack root mahazatra. Ity plugin ity dia manana maritrano modular (tsy toy ny teo alohany) ary manitsy ny serivisy tambajotra amin'ny alΓ lan'ny mpamily mifandray aminy. Hojerentsika ny plugin ihany aoriana kely, satria raha ny marina dia manome ny fahafaha-manatsara ny OpenStack amin'ny ampahany amin'ny tambajotra. Azo soloina ny plugin root (ohatra, ny Contrail Networking dia manao fanoloana toy izany).

Serivisy RPC (rabbitmq-server) - serivisy manome fitantanana filaharana sy fifandraisana amin'ny serivisy OpenStack hafa, ary koa ny fifandraisana eo amin'ny mpiasan'ny serivisy.

Mpiasan'ny tambajotra - mpiasa izay hita ao amin'ny node tsirairay, amin'ny alΓ lan'ny fametrahana serivisy tambajotra.

Misy karazana agents maromaro.

Ny tena mpandraharaha dia L2 agent. Ireo mpiasa ireo dia mandeha amin'ny tsirairay amin'ireo hypervisors, ao anatin'izany ny nodes fanaraha-maso (marika kokoa, amin'ny nodes rehetra izay manome serivisy ho an'ny mpanofa) ary ny tena asany dia ny mampifandray milina virtoaly amin'ny tambajotra L2 mahazatra, ary miteraka fanairana ihany koa rehefa misy hetsika mitranga ( ohatra disable/enable ny port).

Ny manaraka, tsy latsa-danja amin'izany ny mpandraharaha L3 agent. Amin'ny alΓ lan'ny default, ity mpandraharaha ity dia mandeha irery amin'ny node tambajotra (matetika ny node tambajotra dia mitambatra amin'ny node fanaraha-maso) ary manome lalana eo anelanelan'ny tambajotran'ny mpanofa (na eo anelanelan'ny tambajotra sy ny tambajotran'ny mpanofa hafa, ary azo idirana amin'ny tontolo ivelany, manome NAT, ary koa ny serivisy DHCP). Na izany aza, rehefa mampiasa DVR (router distributed) dia miseho amin'ny node compute koa ny filana plugin L3.

Ny L3 agents dia mampiasa ny anaran'ny Linux mba hanomezana ny mpanofa tsirairay ny andian-tambajotra mitoka-monina sy ny fiasan'ny router virtoaly izay mitondra ny fifamoivoizana sy manome serivisy vavahady ho an'ny tambajotra Layer 2.

Database - angon-drakitra momba ny famantarana ny tambajotra, ny subnets, ny seranana, ny dobo, sns.

Raha ny marina, Neutron dia manaiky ny fangatahana API avy amin'ny famoronana sampan-draharahan'ny tambajotra rehetra, manamarina ny fangatahana, ary amin'ny alΓ lan'ny RPC (raha miditra plugin na agent) na REST API (raha mifandray amin'ny SDN) dia mampita amin'ireo mpiasa (amin'ny alΓ lan'ny plugins) ny torolalana ilaina amin'ny fandaminana ny serivisy nangatahana.

Andeha isika hitodika any amin'ny fametrahana fitsapana (ny fomba fametrahana azy ary inona no tafiditra ao anatiny, ho hitantsika any aoriana any amin'ny ampahany azo ampiharina) ary jereo ny toerana misy ny singa tsirairay:

(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 ~]$ 

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Raha ny marina, izany no firafitry ny Neutron manontolo. Ankehitriny dia mendrika ny mandany fotoana kely amin'ny plugin ML2.

Layer Modular 2

Araka ny voalaza etsy ambony, ny plugin dia OpenStack root plugin ary manana rafitra modular.

Ny teo aloha amin'ny plugin ML2 dia nanana rafitra monolithic, izay tsy namela, ohatra, ny fampiasana fifangaroan'ny teknolojia maromaro amin'ny fametrahana iray. Ohatra, tsy afaka mampiasa openvswitch sy linuxbridge miaraka ianao - na ny voalohany na ny faharoa. Noho izany antony izany dia noforonina ny plugin ML2 miaraka amin'ny maritranony.

Ny ML2 dia manana singa roa - karazana mpamily roa: Type drivers sy Mechanism drivers.

Type mpamily mamaritra ny teknolojia izay hampiasaina amin'ny fandaminana ny fifandraisana amin'ny tambajotra, ohatra VxLAN, VLAN, GRE. Mandritra izany fotoana izany, ny mpamily dia mamela ny fampiasana ny teknolojia isan-karazany. Ny teknolojia mahazatra dia VxLAN encapsulation ho an'ny tamba-jotra overlay sy tambajotra ivelany vlan.

Ny mpamily karazana dia ahitana ireto karazana tambajotra manaraka ireto:

Flat - tambajotra tsy misy fanindriana
VLANs - tagged tambajotra
Local - karazana tambajotra manokana ho an'ny fametrahana rehetra (ilaina ny fametrahana toy izany na ho an'ny mpamorona na ho an'ny fiofanana)
GRE - tambajotra overlay mampiasa tonelina GRE
VxLAN - tamba-jotra overlay mampiasa tonelina VxLAN

Mpamily mekanika mamaritra fitaovana izay miantoka ny fandaminana ny teknolojia voalaza ao amin'ny karazana mpamily - ohatra, openvswitch, sr-iov, opendaylight, OVN, sns.

Miankina amin'ny fampiharana an'io mpamily io, na ny mpiasan'ny Neutron no ampiasaina, na ny fifandraisana amin'ny mpanara-maso SDN ivelany, izay mikarakara ny olana rehetra mifandraika amin'ny fandaminana ny tambajotra L2, ny lalana, sns.

Ohatra: raha mampiasa ML2 miaraka amin'ny OVS isika, dia misy mpandraharaha L2 napetraka amin'ny node informatika tsirairay izay mitantana OVS. Na izany aza, raha mampiasa OVN na OpenDayLight isika, dia eo ambany fahefan'izy ireo ny fanaraha-maso ny OVS - ny Neutron, amin'ny alΓ lan'ny root plugin, dia manome baiko ho an'ny mpanara-maso, ary efa manao izay nolazainy.

Andeha hojerentsika ny Open vSwitch

Amin'izao fotoana izao, iray amin'ireo singa fototra amin'ny OpenStack ny Open vSwitch.
Rehefa mametraka OpenStack tsy misy SDN fanampiny toy ny Juniper Contrail na Nokia Nuage, OVS no singa fototra amin'ny tambajotra rahona ary miaraka amin'ny iptables, conntrack, namespaces, dia ahafahanao mandamina tamba-jotra overlay multi-tenancy feno. Mazava ho azy, ity singa ity dia azo soloina, ohatra, rehefa mampiasa vahaolana SDN avy amin'ny antoko fahatelo (mpivarotra).

OVS dia lozisialy rindrambaiko open source izay natao hampiasaina amin'ny tontolo virtoaly ho mpanentana fifamoivoizana virtoaly.

Amin'izao fotoana izao, ny OVS dia manana fiasa tena mendrika, izay misy ny teknolojia toa ny QoS, LACP, VLAN, VxLAN, GENEVE, OpenFlow, DPDK, sns.

Fanamarihana: Ny OVS dia tsy noforonina ho toy ny switch malefaka ho an'ny fiasa telecom be entana ary natao kokoa ho an'ny fiasa IT tsy dia mitaky bandwidth toy ny mpizara WEB na mpizara mailaka. Na izany aza, ny OVS dia mivoatra bebe kokoa ary ny fampiharana ny OVS amin'izao fotoana izao dia nanatsara ny fahombiazany sy ny fahaizany, izay ahafahan'ny mpandraharahan'ny fifandraisan-davitra manana fiasa be dia be, ohatra, misy ny fampiharana OVS miaraka amin'ny fanohanana ny fanafainganana ny DPDK.

Misy singa telo manan-danja amin'ny OVS izay tokony ho fantatrao:

  • Module kernel - singa iray hita ao amin'ny habaka kernel izay manodina ny fifamoivoizana mifototra amin'ny fitsipika azo avy amin'ny singa mifehy;
  • vSwitch daemon (ovs-vswitchd) dia dingana natomboka tao amin'ny habaka mpampiasa izay tompon'andraikitra amin'ny fandaharana ny maody kernel - izany hoe, maneho mivantana ny lojika amin'ny fiasan'ny switch.
  • Mpizara database - angon-drakitra eo an-toerana hita amin'ny mpampiantrano tsirairay mampiasa OVS, izay itehirizana ny fikirakirana. Ny mpanara-maso SDN dia afaka mifandray amin'ny alalan'ity module ity amin'ny alΓ lan'ny protocol OVSDB.

Izany rehetra izany dia miaraka amin'ny andiana fitaovana fitiliana sy fitantanana, toy ny ovs-vsctl, ovs-appctl, ovs-ofctl, sns.

Amin'izao fotoana izao, ny Openstack dia ampiasain'ny mpandraharaha telecom mifindra monina amin'izany, toy ny EPC, SBC, HLR, sns. Ny fiasa sasany dia afaka miaina tsy misy olana amin'ny OVS, fa ohatra, ny EPC dia manodina ny fifamoivoizana amin'ny mpanjifa - avy eo mandalo izany. be dia be ny fifamoivoizana (ankehitriny ny habetsahan'ny fifamoivoizana dia mahatratra an-jatony gigabits isan-tsegondra). Mazava ho azy fa tsy ny hevitra tsara indrindra ny mitondra ny fifamoivoizana toy izany amin'ny alΓ lan'ny habaka kernel (satria eo no misy ny mpandefa azy). Noho izany, matetika ny OVS dia apetraka amin'ny habaka mpampiasa amin'ny alΓ lan'ny teknolojia fanaparitahana DPDK mba handefasana fifamoivoizana avy amin'ny NIC mankany amin'ny habaka mpampiasa mandalo ny kernel.

Fanamarihana: ho an'ny rahona napetraka ho an'ny asa fifandraisan-davitra, dia azo atao ny mamoaka fifamoivoizana avy amin'ny node kajy mandalo mivantana ny OVS mankany amin'ny fitaovana fanodinana. Ny mekanika SR-IOV sy Passthrough dia ampiasaina amin'izany tanjona izany.

Ahoana no fiasan'izany amin'ny tena layout?

Eny ary, andeha isika hifindra amin'ny ampahany azo ampiharina ary hijery ny fomba fiasan'izy rehetra amin'ny fampiharana.

Voalohany, andao hametraka fametrahana Openstack tsotra. Koa satria tsy manana andian-server aho ho an'ny fanandramana, dia hanangona ny prototype amin'ny mpizara ara-batana iray avy amin'ny milina virtoaly izahay. Eny, mazava ho azy, ny vahaolana toy izany dia tsy mety amin'ny tanjona ara-barotra, fa mba hahitana ohatra ny fomba fiasan'ny tambajotra ao Openstack, fametrahana toy izany dia ampy ho an'ny maso. Ankoatr'izay, ny fametrahana toy izany dia mahaliana kokoa ho an'ny tanjona fampiofanana - satria afaka misambotra fifamoivoizana ianao, sns.

Satria ny ampahany fototra ihany no ilaintsika, dia tsy afaka mampiasa tambajotra maromaro isika fa manangana ny zava-drehetra amin'ny alΓ lan'ny tambajotra roa ihany, ary ny tambajotra faharoa amin'ity fandaharana ity dia hampiasaina fotsiny amin'ny fidirana amin'ny mpizara undercloud sy DNS. Tsy hikasika ny tambajotra ivelany izahay amin'izao fotoana izao - lohahevitra ho an'ny lahatsoratra lehibe misaraka.

Noho izany, andao hanomboka amin'ny filaharana. Voalohany, teoria kely. Hametraka Openstack amin'ny fampiasana TripleO (Openstack amin'ny Openstack). Ny fototry ny TripleO dia ny fametrahana ny Openstack all-in-one (izany hoe, amin'ny node iray), antsoina hoe undercloud, ary avy eo dia mampiasa ny fahafahan'ny Openstack napetraka mba hametrahana Openstack natao ho an'ny asa, antsoina hoe overcloud. Ny Undercloud dia hampiasa ny fahaiza-manaony hitantana ireo mpizara ara-batana (metaly miboridana) - ny tetikasa Ironic - mba hanomezana hypervisors izay hanao ny andraikitry ny kajy, ny fanaraha-maso, ny node fitehirizana. Izany hoe, tsy mampiasa fitaovana avy amin'ny antoko fahatelo izahay amin'ny fametrahana ny Openstack - mampiasa ny Openstack izahay. Hazava kokoa izany rehefa mandroso ny fametrahana, ka tsy hijanona eo isika ary handroso.

Fanamarihana: Amin'ity lahatsoratra ity, noho ny fahatsorana, dia tsy nampiasa ny fitokana-monina ho an'ny tambajotra Opentack anatiny aho, fa ny zava-drehetra dia ampiasaina amin'ny tambajotra iray ihany. Na izany aza, ny fisian'ny fitokana-monina na ny tsy fisian'ny tambajotra dia tsy misy fiantraikany amin'ny fiasa fototra amin'ny vahaolana - ny zava-drehetra dia hiasa mitovy amin'ny amin'ny fampiasana fitokana-monina, fa ny fifamoivoizana dia handeha amin'ny tambajotra iray ihany. Ho an'ny fametrahana ara-barotra dia ilaina ny mampiasa fitokana-monina amin'ny fampiasana vlan sy interface samihafa. Ohatra, ny fifamoivoizana fitantanana ny fitahirizana ceph sy ny fifamoivoizana angon-drakitra mihitsy (ny fidirana amin'ny masinina amin'ny kapila, sns.) Rehefa mitoka-monina dia mampiasa subnets isan-karazany (Fikarakarana fitehirizana sy fitahirizana) ary izany dia ahafahanao manao ny vahaolana ho mandefitra kokoa amin'ny fizarana ity fifamoivoizana ity, ohatra. , amin'ny seranana samihafa, na mampiasa ny mombamomba ny QoS samihafa ho an'ny fifamoivoizana samihafa mba tsy hanakanana ny fifamoivoizana famantarana. Amin'ny tranga misy antsika dia handeha amin'ny tambajotra iray ihany izy ireo ary raha ny marina dia tsy mametra antsika amin'ny fomba rehetra izany.

Fanamarihana: Satria hitantana milina virtoaly amin'ny tontolo virtoaly mifototra amin'ny milina virtoaly isika, dia mila mamela ny virtoaly virtoaly voalohany.

Azonao atao ny manamarina raha alefa na tsia ny virtualization nested toy izao:


[root@hp-gen9 bormoglotx]# cat /sys/module/kvm_intel/parameters/nested
N
[root@hp-gen9 bormoglotx]# 

Raha hitanao ny litera N, dia avelanay ny fanohanana ny virtoaly virtoaly araka ny torolalana rehetra hitanao ao amin'ny tambajotra, ohatra. toy izany .

Mila manangona ity faritra manaraka ity avy amin'ny milina virtoaly isika:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Raha ny amiko, mba hampifandray ireo milina virtoaly izay tafiditra ao anatin'ny fametrahana ho avy (ary nahazo 7 amin'izy ireo aho, saingy afaka mahazo 4 ianao raha tsy manana loharanon-karena maro), nampiasa OpenvSwitch aho. Namorona tetezana ovs iray aho ary mampifandray milina virtoaly amin'izany amin'ny alΓ lan'ny vondrona port. Mba hanaovana izany dia namorona rakitra xml toy izao aho:


[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>

Vondrona seranan-tsambo telo no nambara eto - fidirana roa sy vatan-kazo iray (ilaina ho an'ny mpizara DNS ity farany, saingy azonao atao raha tsy misy izany, na mametraka izany amin'ny milina mpampiantrano - izay mety aminao kokoa). Avy eo, amin'ny fampiasana ity mΓ΄dely ity, dia manambara ny anay amin'ny alΓ lan'ny virsh net-define izahay:


virsh net-define ovs-network-1.xml 
virsh net-start ovs-network-1 
virsh net-autostart ovs-network-1 

Amin'izao fotoana izao dia manitsy ny fanamafisana ny seranan-tsambo hypervisor izahay:


[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 ~]# 

Fanamarihana: amin'ity tranga ity, ny adiresy ao amin'ny port ovs-br1 dia tsy azo idirana satria tsy misy marika vlan. Mba hamahana izany dia mila mamoaka ny baiko sudo ovs-vsctl set port ovs-br1 tag=100. Na izany aza, aorian'ny famerenana indray dia hanjavona ity marika ity (raha misy mahafantatra ny fomba hitazonana azy amin'ny toerany dia ho feno fankasitrahana aho). Saingy tsy dia zava-dehibe loatra izany, satria mandritra ny fametrahana an'io adiresy io ihany no ilaintsika ary tsy mila izany rehefa apetraka tanteraka ny Openstack.

Manaraka, mamorona milina undercloud izahay:


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

Mandritra ny fametrahana dia apetrakao daholo ny paramètre ilaina, toy ny anaran'ny milina, ny tenimiafina, ny mpampiasa, ny ntp servers, sns, azonao atao avy hatrany ny manamboatra ny seranana, fa ho ahy manokana, aorian'ny fametrahana dia mora kokoa ny miditra amin'ny milina amin'ny alàlan'ny ny console ary manitsy ny rakitra ilaina. Raha efa manana sary efa vita ianao dia azonao ampiasaina, na manao izay nataoko - alaivo ny sary Centos 7 kely indrindra ary ampiasao izany hametrahana ny VM.

Rehefa vita ny fametrahana dia tokony hanana milina virtoaly ahafahanao mametraka undercloud ianao


[root@hp-gen9 bormoglotx]# virsh list
 Id    Name                           State
----------------------------------------------------
 6     dns-server                     running
 62    undercloud                     running

Voalohany, apetraho ireo fitaovana ilaina amin'ny fizotry ny fametrahana:

sudo yum update -y
sudo yum install -y net-tools
sudo yum install -y wget
sudo yum install -y ipmitool

Fametrahana Undercloud

Mamorona mpampiasa stack izahay, mametraka tenimiafina, ampio amin'ny sudoer ary omeo azy ny fahafahana manatanteraka baiko faka amin'ny alΓ lan'ny sudo tsy mila mampiditra tenimiafina:


useradd stack
passwd stack

echo β€œstack ALL=(root) NOPASSWD:ALL” > /etc/sudoers.d/stack
chmod 0440 /etc/sudoers.d/stack

Amin'izao fotoana izao dia mamaritra ny anarana feno undercloud ao amin'ny rakitra hosts:


vi /etc/hosts

127.0.0.1   undercloud.openstack.rnd localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

Manaraka izany dia manampy repository izahay ary mametraka ny rindrambaiko ilaintsika:


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

Fanamarihana: raha tsy mikasa ny hametraka ceph ianao dia tsy mila miditra ny baiko mifandraika amin'ny ceph. Nampiasa ny famotsorana Queens aho, fa afaka mampiasa hafa tianao ianao.

Avy eo, adikao amin'ny lahatahiry lahatahiry an-tranon'ny mpampiasa ny rakitra fanamafisana undercloud:


cp /usr/share/instack-undercloud/undercloud.conf.sample ~/undercloud.conf

Ankehitriny dia mila manitsy ity rakitra ity isika, manitsy azy amin'ny fametrahana azy.

Mila ampidirinao amin'ny fiandohan'ny rakitra ireto andalana ireto:

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

Noho izany, andeha hojerentsika ny toe-javatra:

undercloud_hostname β€” ny anarana fenon'ny mpizara undercloud, dia tsy maintsy mifanandrify amin'ny fidirana amin'ny mpizara DNS

local_ip - Adiresy ambanin'ny rahona eo an-toerana mankany amin'ny famatsiana tambajotra

network_gateway β€” io adiresy eo an-toerana io ihany, izay ho vavahadin'ny fidirana amin'ny tontolo ivelany mandritra ny fametrahana ny node overcloud, mifanitsy amin'ny ip eo an-toerana ihany koa.

undercloud_public_host - Adiresy API ivelany, izay adiresy maimaim-poana avy amin'ny tambajotra mpamatsy dia omena

undercloud_admin_host Adiresy API anatiny, izay adiresy maimaim-poana avy amin'ny tambajotra mpamatsy dia omena

undercloud_nameservers - mpizara DNS

generate_service_certificate - Ity andalana ity dia tena manan-danja amin'ny ohatra ankehitriny, satria raha tsy apetrakao amin'ny diso ianao dia hahazo fahadisoana mandritra ny fametrahana, ny olana dia voalaza ao amin'ny Red Hat bug tracker

local_interface interface tsara amin'ny famatsiana tambajotra. Ity interface ity dia havaozina mandritra ny fametrahana ambanin'ny rahona, noho izany dia mila manana fifandraisana roa amin'ny undercloud ianao - ny iray ho an'ny fidirana azy, ny faharoa ho an'ny fanomezana.

local_mtu β€” MTU. Koa satria manana laboratoara fitsapana izahay ary manana MTU 1500 aho amin'ny seranan-tsambo OVS, dia ilaina ny mametraka izany ho 1450 mba hahafahan'ireo fonosana voarakitra ao amin'ny VxLAN mandalo.

network_cidr - tambajotra famatsiana

fihatsarambelatsihin'ny - mampiasa NAT hidirana tambajotra ivelany

masquerade_network - tambajotra izay ho NATed

dhcp_start - ny adiresin'ny dobo adiresy izay ametrahana ny adiresy ho an'ny nodes mandritra ny fametrahana overcloud

dhcp_end - ny adiresy farany amin'ny dobo adiresy izay ametrahana ny adiresy ho an'ny nodes mandritra ny fametrahana overcloud

inspection_iprange - dobo adiresy ilaina amin'ny fandinihana (tsy tokony hifanindry amin'ny dobo etsy ambony)

scheduler_max_attempts - isa ambony indrindra amin'ny andrana hametraka overcloud (tokony ho lehibe kokoa na mitovy amin'ny isan'ny node)

Aorian'ny famariparitana ny rakitra dia azonao atao ny manome ny baiko hametrahana ny undercloud:


openstack undercloud install

Ny dingana dia maharitra 10 ka hatramin'ny 30 minitra arakaraka ny vy. Amin'ny farany dia tokony hahita vokatra toy izao ianao:

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.

#############################################################################

Ity vokatra ity dia milaza fa nahavita nametraka undercloud ianao ary azonao atao izao ny manamarina ny satan'ny undercloud ary manohy ny fametrahana overcloud.

Raha mijery ny output ifconfig ianao dia ho hitanao fa nisy interface tsara tetezana vaovao niseho

[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

Ny fametrahana overcloud izao dia hatao amin'ny alΓ lan'ity interface ity.

Avy amin'ny vokatra eto ambany dia hitanao fa manana serivisy rehetra amin'ny node iray isika:

(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     |
+--------------------------+-----------+----------+

Ity ambany ity ny fandrindrana ny ampahany amin'ny tambajotra 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 ~]$

Fametrahana overcloud

Amin'izao fotoana izao dia manana undercloud ihany isika, ary tsy ampy ny node izay hanangonana ny overcloud. Noho izany, voalohany indrindra, andao hametraka ireo milina virtoaly ilaintsika. Mandritra ny fametrahana, ny undercloud dia hametraka ny OS sy ny rindrambaiko ilaina amin'ny milina overcloud - izany hoe, tsy mila manaparitaka tanteraka ny milina isika, fa mamorona disk (na disks) ho azy ary mamaritra ny masontsivana - izany hoe , raha ny marina, mahazo mpizara miboridana tsy misy OS napetraka eo aminy.

Andao ho any amin'ny lahatahiry miaraka amin'ny kapila an'ny milina virtoaly ary mamorona kapila amin'ny habeny ilaina:


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

Satria miasa toy ny root isika dia mila manova ny tompon'ireto kapila ireto mba tsy hisian'ny olana amin'ny zo:


[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]# 

Fanamarihana: raha tsy mikasa ny hametraka ceph ianao mba hianarana azy, dia tsy mamorona nodes 3 farafahakeliny miaraka amin'ny kapila roa farafahakeliny ny baiko, fa ao amin'ny mΓ΄dely dia manondro fa ampiasaina ny kapila virtoaly vda, vdb, sns.

Tsara, mila mamaritra ireto milina rehetra ireto isika izao:


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 

Any amin'ny farany dia misy baiko -print-xml > /tmp/storage-1.xml, izay mamorona rakitra xml misy famaritana ny milina tsirairay ao amin'ny /tmp/ lahatahiry; raha tsy ampidirinao dia tsy ho afaka mamantatra milina virtoaly.

Ankehitriny dia mila mamaritra ireo milina rehetra ireo amin'ny virsh isika:


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 ~]#

Ankehitriny dia misy nuance kely - tripleO dia mampiasa IPMI hitantana ireo mpizara mandritra ny fametrahana sy introspection.

Ny introspection dia ny dingan'ny fisafoana ny fitaovana mba hahazoana ny masontsivana ilaina amin'ny fanomezana ny nodes. Ny introspection dia atao amin'ny fampiasana ironic, serivisy natao hiasa amin'ny mpizara vy tsy misy dikany.

Saingy izao no olana - raha manana seranan-tsambo misaraka ny mpizara IPMI hardware (na seranan-tsambo ifampizarana, saingy tsy zava-dehibe izany), dia tsy manana seranana toy izany ny milina virtoaly. Eto dia tonga manampy antsika ny tehina antsoina hoe vbmc - fitaovana ahafahanao maka tahaka ny seranan-tsambo IPMI. Ity nuance ity dia mendrika ny hojerena indrindra ho an'ireo izay te hanangana laboratoara toy izany amin'ny hypervisor ESXI - raha ny marina, tsy fantatro raha manana analogue ny vbmc izy io, noho izany dia ilaina ny manontany tena momba ity olana ity alohan'ny hametrahana ny zava-drehetra. .

Mametraka vbmc:


yum install yum install python2-virtualbmc

Raha tsy mahita ilay fonosana ny OS anao dia ampio ny tahiry:

yum install -y https://www.rdoproject.org/repos/rdo-release.rpm

Ankehitriny dia mametraka ny utility izahay. Ny zava-drehetra eto dia banal hatramin'ny fahafaham-baraka. Ankehitriny dia lojika fa tsy misy mpizara ao amin'ny lisitry ny vbmc


[root@hp-gen9 ~]# vbmc list

[root@hp-gen9 ~]# 

Mba hisehoan'izy ireo dia tsy maintsy ambara amin'ny tanana toy izao izy ireo:


[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 ~]#

Heveriko fa mazava ny fehezanteny baiko tsy misy fanazavana. Na izany aza, amin'izao fotoana izao ny fotoam-pivorianay rehetra dia ao amin'ny sata DOWN. Mba hifindran'izy ireo amin'ny toeran'ny UP dia mila mamela azy ireo ianao:


[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 ~]#

Ary ny fikasihana farany - mila manitsy ny fitsipiky ny firewall ianao (na manafoana azy tanteraka):


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

Andeha isika handeha amin'ny undercloud ary hijery fa mandeha ny zava-drehetra. Ny adiresin'ny milina mpampiantrano dia 192.168.255.200, ao amin'ny undercloud dia nampiana ny fonosana ipmitool ilaina mandritra ny fanomanana ny fametrahana:


[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

Araka ny hitanao dia nahomby tamin'ny alΓ lan'ny vbmc ny node fanaraha-maso. Andeha hovonointsika ary handroso:


[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 ~]#

Ny dingana manaraka dia ny fisafoana ireo nodes izay hametrahana ny overcloud. Mba hanaovana izany dia mila manomana rakitra json miaraka amin'ny famaritana ny nodesy isika. Mariho fa, tsy toy ny fametrahana amin'ny lohamilina miboridana, ny rakitra dia manondro ny seranan-tsambo misy ny vbmc mandeha ho an'ny milina tsirairay.


[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

Fanamarihana: manana interface roa ny node fanaraha-maso, fa amin'ity tranga ity dia tsy zava-dehibe izany, amin'ity fametrahana ity dia ho ampy ho antsika ny iray.

Ankehitriny dia manomana ny rakitra json izahay. Mila manondro ny adiresy poppy amin'ny seranan-tsambo izay hanatanterahana ny famatsiana, ny mason'ny nodes, omeo anarana izy ireo ary manondro ny fomba ahatongavana any 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"
        }
    ]
}

Ankehitriny dia mila manomana sary ho an'ny maneso isika. Mba hanaovana izany, misintona azy ireo amin'ny wget ary mametraka:

(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 ~]$

Mampiakatra sary ao amin'ny 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 ~]$

Manamarina fa voapetraka avokoa ny sary rehetra


(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 ~]$

Zavatra iray hafa - mila manampy mpizara DNS ianao:


(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 ~]$

Afaka manome ny baiko ho an'ny introspection isika izao:

(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 ~]$

Araka ny hitanao amin'ny vokatra, ny zava-drehetra dia vita tsy misy hadisoana. Andeha hojerentsika fa ao amin'ny fanjakana misy ny node rehetra:


(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 ~]$ 

Raha any amin'ny fanjakana hafa ny nodes, matetika azo fehezina, dia nisy zavatra tsy nety ary mila mijery ny log ianao ary fantaro ny antony nahatonga izany. Ataovy ao an-tsaina fa amin'ity tranga ity dia mampiasa virtoaly isika ary mety hisy bibikely mifandray amin'ny fampiasana milina virtoaly na vbmc.

Avy eo dia mila manondro izay node hanao izay asa - izany hoe, manondro ny mombamomba izay ny node hametraka:


(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 ~]$

Lazao ny mombamomba ny node tsirairay:


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

Andeha hojerentsika fa nanao ny zava-drehetra araka ny tokony ho izy:


(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 ~]$

Raha marina ny zava-drehetra dia omenay ny baiko hametraka overcloud:

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

Amin'ny fametrahana tena izy dia ampiasaina ho azy ny mΓ΄dely namboarina, amin'ity tranga ity dia hanasarotra ny fizotrany izany, satria tsy maintsy hazavaina ny fanovana tsirairay ao amin'ny mΓ΄dely. Araka ny efa nosoratana teo aloha, na dia fametrahana tsotra aza dia ampy ho hitantsika ny fomba fiasany.

Fanamarihana: ny --libvirt-type qemu variable dia ilaina amin'ity tranga ity, satria hampiasa virtoaly nested izahay. Raha tsy izany dia tsy ho afaka hampandeha milina virtoaly ianao.

Amin'izao fotoana izao dia manana adiny iray eo ho eo ianao, na mety mihoatra (miankina amin'ny fahaiza-manaon'ny fitaovana) ary afaka manantena ianao fa aorian'io fotoana io dia hahita ity soratra manaraka ity ianao:


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 ~]$

Ankehitriny ianao dia manana dikan-teny openstack efa feno, izay ahafahanao mianatra, manandrana, sns.

Andeha hojerentsika fa mandeha tsara ny zava-drehetra. Ao amin'ny lahatahiry lahatahiry an-tranon'ny mpampiasa dia misy rakitra roa - ny stackrc iray (ho an'ny fitantanana ny undercloud) ary ny overcloudrc faharoa (ho an'ny fitantanana overcloud). Ireo rakitra ireo dia tsy maintsy faritana ho loharano, satria misy fampahalalana ilaina amin'ny fanamarinana.


(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 ~]$

Ny fametrahana ahy dia mbola mila fikasihana kely iray - manampy lalana amin'ny mpanara-maso, satria amin'ny tambajotra hafa ny milina iasako. Mba hanaovana izany, mandehana any amin'ny control-1 eo ambanin'ny kaonty heat-admin ary soraty ny lalana


(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

Eny, afaka mandeha any amin'ny faravodilanitra ianao izao. Ny fampahalalana rehetra - adiresy, fidirana ary tenimiafina - dia ao amin'ny rakitra /home/stack/overcloudrc. Toy izao ny diagrama farany:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Teny an-dalana, tamin'ny fametrahana anay, ny adiresin'ny milina dia navoaka tamin'ny alΓ lan'ny DHCP ary, araka ny hitanao, dia navoakan'ny "kisendrasendra" izy ireo. Azonao atao ny mamaritra tsara ao amin'ny mΓ΄dely izay adiresy tokony ampifandraisina amin'ny milina mandritra ny fametrahana, raha ilaina izany.

Ahoana ny fandehan'ny fifamoivoizana eo amin'ny milina virtoaly?

Ato amin'ity lahatsoratra ity isika dia hijery safidy telo ho an'ny fifamoivoizana mandalo

  • Masinina roa amin'ny hypervisor iray amin'ny tambajotra L2 iray
  • Masinina roa amin'ny hypervisors samy hafa amin'ny tambajotra L2 mitovy
  • Masinina roa amin'ny tambajotra samihafa (fakan-tambajotra cross-network)

Ny tranga misy ny fidirana amin'ny tontolo ivelany amin'ny alΓ lan'ny tambajotra ivelany, amin'ny fampiasana adiresy mitsingevana, ary koa ny zotra mizara, hodinihintsika amin'ny manaraka, amin'izao fotoana izao dia hifantoka amin'ny fifamoivoizana anatiny.

Mba hanamarinana dia andao atambatra ity kisary manaraka ity:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Namorona milina virtoaly 4 izahay - 3 amin'ny tambajotra L2 iray - net-1, ary 1 hafa amin'ny tambajotra net-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 ~]$ 

Andeha hojerentsika hoe inona ny hypervisors misy ny milina noforonina:

(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 ~]$
Ny milina vm-1 sy vm-3 dia hita ao amin'ny compute-0, ny milina vm-2 sy vm-4 dia hita ao amin'ny node compute-1.

Fanampin'izany, nisy ny router virtoaly noforonina mba ahafahana mivezivezy eo amin'ireo tambajotra voatondro:

(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 ~]$ 

Ny router dia manana seranana virtoaly roa, izay miasa ho vavahadin'ny tambajotra:

(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 ~]$ 

Saingy alohan'ny hijerena ny fandehan'ny fifamoivoizana dia andeha hojerentsika izay ananantsika amin'izao fotoana izao amin'ny node fanaraha-maso (izay node tambajotra ihany koa) sy amin'ny node compute. Andao hanomboka amin'ny node kajy.


[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 ~]$

Amin'izao fotoana izao, ny node dia manana tetezana ovs telo - br-int, br-tun, br-ex. Eo anelanelan'izy ireo, araka ny hitantsika, dia misy andiana interface tsara. Ho fanamorana ny fahatakarana, andeha hojerentsika ireo fifandraisana rehetra ireo amin'ny diagram ary hojerentsika izay mitranga.

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Raha jerena ny adiresin'ny tonelina VxLAN dia hita fa ny tonelina iray dia natsangana ho compute-1 (192.168.255.26), ny tonelina faharoa dia mijery ny control-1 (192.168.255.15). Fa ny tena mahaliana dia ny hoe tsy manana fifandraisana ara-batana ny br-ex, ary raha mijery ny fikorianan'ny rivotra ianao dia ho hitanao fa ity tetezana ity dia afaka mampiato ny fifamoivoizana amin'izao fotoana izao.


[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 ~]$ 

Araka ny hitanao avy amin'ny vokatra, ny adiresy dia screwed mivantana amin'ny seranan-tsambo ara-batana, fa tsy amin'ny virtoaly tetezana interface tsara.


[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 ~]$ 

Araka ny fitsipika voalohany, izay rehetra avy amin'ny seranan-tsambo phy-br-ex dia tsy maintsy ariana.
Raha ny marina dia tsy misy toerana hafa hidiran'ny fifamoivoizana amin'ity tetezana ity afa-tsy amin'ity interface ity (ny interface miaraka amin'ny br-int), ary raha jerena ny fitetezana dia efa niditra tao amin'ny tetezana ny fifamoivoizana BUM.

Izany hoe, amin'ny alΓ lan'ny tonelina VxLAN ihany no ahafahan'ny fifamoivoizana miala amin'ity node ity fa tsy misy zavatra hafa. Na izany aza, raha velominao ny DVR dia hiova ny toe-draharaha, fa mbola hiatrika izany indray izahay. Rehefa mampiasa fitokana-monina, ohatra amin'ny fampiasana vlans, dia tsy hanana interface L3 iray amin'ny vlan 0 ianao, fa interface maro. Na izany aza, ny fifamoivoizana VxLAN dia handao ny node amin'ny fomba mitovy, fa koa ao anaty karazana vlan voatokana.

Nandamina ny node compute isika, andao hiroso amin'ny node fanaraha-maso.


[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 ~]$

Raha ny marina, afaka milaza isika fa mitovy daholo ny zava-drehetra, fa ny adiresy IP dia tsy eo amin'ny interface ara-batana intsony fa eo amin'ny tetezana virtoaly. Izany no atao satria io seranan-tsambo io no seranan-tsambo hivoahan’ny fifamoivoizana any ivelany.


[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 ~]$ 

Ity seranan-tsambo ity dia mifamatotra amin'ny tetezana br-ex ary satria tsy misy marika vlan eo aminy, ity seranana ity dia seranan-tsambo izay ahafahan'ny vlan rehetra mahazo alalana, ankehitriny ny fifamoivoizana dia mivoaka tsy misy marika, araka ny tondroin'ny vlan-id 0 amin'ny vokatra ambony.

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Ny zavatra hafa rehetra amin'izao fotoana izao dia mitovy amin'ny node compute - tetezana mitovy, tonelina mitovy mankany amin'ny node compute roa.

Tsy handinika nodes fitehirizana ato amin'ity lahatsoratra ity isika, fa mba hahatakarana dia ilaina ny milaza fa ny ampahany amin'ny tambajotra amin'ireo nodes ireo dia banal ho amin'ny fahafaham-baraka. Amin'ny tranga misy antsika dia tsy misy afa-tsy seranana ara-batana iray (eth0) misy adiresy IP nomena azy ary izay no izy. Tsy misy tonelina VxLAN, tetezana tonelina, sns - tsy misy ovs mihitsy, satria tsy misy dikany izany. Rehefa mampiasa fitokana-monina, ity node ity dia hanana interface roa (seranan-tsambo ara-batana, bodny, na vlan roa fotsiny - tsy maninona izany - miankina amin'izay tianao) - ny iray ho an'ny fitantanana, ny faharoa ho an'ny fifamoivoizana (manoratra amin'ny kapila VM , famakiana avy amin'ny kapila, sns.)

Hitanay izay anananay amin'ny nodes raha tsy misy serivisy. Andeha isika hanomboka milina virtoaly 4 ary hojerentsika ny fiovan'ny drafitra voalaza etsy ambony - tokony hanana seranana, router virtoaly, sns.

Hatreto dia toy izao ny tambazotranay:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Manana milina virtoaly roa izahay isaky ny node solosaina. Amin'ny fampiasana compute-0 ho ohatra, andeha hojerentsika ny fomba ampidirana ny zava-drehetra.


[heat-admin@overcloud-novacompute-0 ~]$ sudo virsh list 
 Id    Name                           State
----------------------------------------------------
 1     instance-00000001              running
 3     instance-00000003              running

[heat-admin@overcloud-novacompute-0 ~]$ 

Ny milina dia manana fifandraisana virtoaly tokana - 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 ~]$ 

Ity interface ity dia mijery ao amin'ny tetezana 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 ~]$ 

Araka ny hitanao avy amin'ny vokatra dia tsy misy afa-tsy fifandraisana roa ao amin'ny tetezana - tap95d96a75-a0 sy qvb95d96a75-a0.

Eto dia mendrika ny hieritreritra kely momba ireo karazana fitaovana tambajotra virtoaly ao amin'ny OpenStack:
vtap - interface virtoaly mifatotra amin'ny ohatra (VM)
qbr - Linux tetezana
qvb sy qvo - vEth mpivady mifandray amin'ny Linux tetezana sy Open vSwitch tetezana
br-int, br-tun, br-vlan β€” Sokafy ny tetezana vSwitch
patch-, int-br-, phy-br- - Sokafy vSwitch patch interfaces mampifandray tetezana
qg, qr, ha, fg, sg - Sokafy ny seranana vSwitch ampiasain'ny fitaovana virtoaly hifandraisana amin'ny OVS

Araka ny azonao, raha manana seranan-tsambo qvb95d96a75-a0 ao amin'ny tetezana isika, izay mpivady vEth, dia misy ny mpifanandrina aminy, izay tokony ho antsoina hoe qvo95d96a75-a0. Andeha hojerentsika hoe inona ny seranan-tsambo ao amin'ny OVS.


[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 ~]$ 

Araka ny hitantsika, ny seranan-tsambo dia ao amin'ny br-int. Ny Br-int dia miasa toy ny switch izay mamarana ny seranan-tsambo virtoaly. Ho fanampin'ny qvo95d96a75-a0, ny port qvo5bd37136-47 dia hita ao amin'ny vokatra. Ity no seranana mankany amin'ny milina virtoaly faharoa. Vokatr'izany dia toy izao ny kisary ataontsika:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Fanontaniana izay tokony hahaliana avy hatrany ny mpamaky mahay - inona ny tetezana linux eo anelanelan'ny seranan-tsambo virtoaly sy ny seranan-tsambo OVS? Ny zava-misy dia ny fiarovana ny milina dia ampiasaina ny vondrona fiarovana, izay tsy inona fa iptables. OVS dia tsy miasa amin'ny iptables, noho izany dia noforonina io "crutch". Na izany aza, lasa lany andro - nosoloina conntrack amin'ny famoahana vaovao.

Izany hoe, amin'ny farany ny drafitra dia toy izao manaraka izao:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Masinina roa amin'ny hypervisor iray amin'ny tambajotra L2 iray

Koa satria ireo VM roa ireo dia hita ao amin'ny tambajotra L2 mitovy ary amin'ny hypervisor iray ihany, ny fifamoivoizana eo anelanelan'izy ireo dia hivezivezy eo an-toerana amin'ny alΓ lan'ny br-int, satria ireo milina roa ireo dia ho ao amin'ny VLAN iray ihany:


[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 ~]$ 

Masinina roa amin'ny hypervisors samy hafa amin'ny tambajotra L2 mitovy

Andeha hojerentsika izao ny fandehan'ny fifamoivoizana eo anelanelan'ny milina roa amin'ny tamba-jotra L2 mitovy, fa hita amin'ny hypervisors samihafa. Raha ny marina, tsy hisy fiovana firy, ny fifamoivoizana eo anelanelan'ny hypervisors dia handeha amin'ny tonelina vxlan. Andeha isika hijery ohatra iray.

Adiresin'ny milina virtoaly izay hijerena ny fifamoivoizana:

[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 ~]$ 

Mijery ny latabatra fandefasana amin'ny br-int amin'ny compute-0 izahay:

[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 ~]

Tokony ho any amin'ny seranana 2 ny fifamoivoizana - andao hojerentsika hoe karazana seranana inona izany:

[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 ~]$

Ity dia patch-tun - izany hoe ny interface amin'ny br-tun. Andeha hojerentsika izay mitranga amin'ny fonosana amin'ny 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 ~]$ 

Ny fonosana dia fonosina amin'ny VxLAN ary alefa any amin'ny seranana 2. Andao hojerentsika hoe aiza no mitondra ny seranana 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 ~]$

Ity dia tonelina vxlan amin'ny compute-1:

[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 ~]$

Andeha hojerentsika ny compute-1 ary hijery izay hitranga manaraka amin'ny fonosana:

[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 ~]$ 

Ny Mac dia ao amin'ny latabatra fandefasana br-int amin'ny compute-1, ary araka ny hita amin'ny famoahana etsy ambony dia hita amin'ny port 2, izay seranan-tsambo mankany br-tun:

[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

Eny ary, hitantsika fa ao amin'ny br-int amin'ny compute-1 dia misy poppy toerana:

[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 ~]$ 

Izany hoe, ny fonosana voaray dia hanidina mankany amin'ny seranana 3, izay efa misy milina virtoaly instance-00000003.

Ny hatsaran'ny fametrahana ny Openstack amin'ny fianarana amin'ny fotodrafitrasa virtoaly dia ny ahafahantsika misambotra mora foana ny fifamoivoizana eo amin'ny hypervisors ary mahita ny zava-mitranga aminy. Izao no hataontsika izao, mihazakazaka tcpdump amin'ny seranan-tsambo vnet mankany amin'ny 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*******************

Ny andalana voalohany dia mampiseho fa ny Patek avy amin'ny adiresy 10.0.1.85 dia mankany amin'ny adiresy 10.0.1.88 (fifindran'ny ICMP), ary voafono ao anaty fonosana VxLAN misy vni 22 ary ny fonosana dia avy amin'ny mpampiantrano 192.168.255.19 (compute-0) mankany amin'ny 192.168.255.26. .1 ( compute-XNUMX). Azontsika atao ny manamarina fa ny VNI dia mifanaraka amin'ilay voalaza ao amin'ny ovs.

Andao hiverina amin'ity andalana actions=load:0->NXM_OF_VLAN_TCI[],load:0x16->NXM_NX_TUN_ID[],output:2. 0x16 dia vni amin'ny rafitra isa hexadecimal. Andao avadika ho rafitra faha-16 ity isa ity:


16 = 6*16^0+1*16^1 = 6+16 = 22

Izany hoe, vni mifanitsy amin'ny zava-misy.

Ny andalana faharoa dia mampiseho ny fifamoivoizana miverina, eny, tsy misy dikany ny manazava izany, mazava ny zava-drehetra ao.

Masinina roa amin'ny tambajotra samihafa (fandrosoana internetwork)

Ny tranga farany amin'izao fotoana izao dia ny fandehanana eo anelanelan'ny tambajotra ao anatin'ny tetikasa iray mampiasa router virtoaly. Mandinika tranga tsy misy DVR izahay (hojerentsika amin'ny lahatsoratra hafa), ka ny routing dia mitranga amin'ny node tambajotra. Amin'ny toe-javatra misy antsika, ny node tambajotra dia tsy napetraka ao amin'ny sampana misaraka ary eo amin'ny node fanaraha-maso.

Voalohany, andeha hojerentsika fa mandeha ny lalana:

$ 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

Satria amin'ity tranga ity dia tsy maintsy mandeha any amin'ny vavahady ny fonosana ary alefa any, mila mitady ny adiresy poppy amin'ny vavahady isika, izay hijerena ny latabatra ARP amin'ny ohatra:

$ 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

Andeha hojerentsika hoe aiza no tokony halefa ny fifamoivoizana miaraka amin'ny tanjona (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 ~]$ 

Andeha hojerentsika hoe aiza no mitondra ny 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 ~]$ 

Lojika daholo ny zava-drehetra, mankany amin'ny br-tun ny fifamoivoizana. Andeha hojerentsika hoe inona ny tonelina vxlan nofonosiny:

[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 ~]$ 

Ny seranana fahatelo dia tonelina 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 ~]$ 

Izay mijery ny node fanaraha-maso:

[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 ~]$ 

Tonga any amin'ny node fanaraha-maso ny fifamoivoizana, noho izany dia mila mandeha any isika ary hijery hoe ahoana no hitranga.

Araka ny tsaroanao, ny node fanaraha-maso ao anatiny dia mitovy tanteraka amin'ny node compute - ireo tetezana telo mitovy, ny br-ex ihany no manana seranana ara-batana izay ahafahan'ny node mandefa fifamoivoizana any ivelany. Ny famoronana ohatra dia nanova ny fikirakirana teo amin'ny nodes compute - linux bridge, iptables ary interfaces dia nampiana tao amin'ny nodes. Ny famoronana tambajotra sy ny router virtoaly dia namela ny marika amin'ny fanamafisana ny node fanaraha-maso.

Noho izany, mazava ho azy fa ny adiresy MAC vavahady dia tsy maintsy ao amin'ny latabatra fandefasana br-int eo amin'ny node fanaraha-maso. Andeha hojerentsika fa ao izy io ary aiza no tadiaviny:

[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 ~]$ 

Ny Mac dia hita avy amin'ny port qr-0c52b15f-8f. Raha miverina amin'ny lisitry ny seranan-tsambo virtoaly ao amin'ny Openstack isika, ity karazana seranana ity dia ampiasaina hampifandraisana ireo fitaovana virtoaly isan-karazany amin'ny OVS. Raha ho marimarina kokoa, ny qr dia seranan-tsambo mankany amin'ny router virtoaly, izay aseho ho toy ny namespace.

Andeha hojerentsika hoe inona ny toerana misy ny anaran'ny mpizara:

[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 ~]$ 

Kopia telo. Fa raha tsaraina amin'ny anarana dia azonao fantarina ny tanjon'ny tsirairay amin'izy ireo. Hiverina amin'ny tranga misy ID 0 sy 1 izahay aty aoriana, liana amin'ny namespace qrouter-0a4d2420-4b9c-46bd-aec1-86a1ef299abe izahay:


[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 ~]$ 

Ity sehatra anarana ity dia misy roa anatiny izay noforoninay teo aloha. Samy nampiana ny br-int ny seranana virtoaly roa. Andeha hojerentsika ny adiresy mac amin'ny seranan-tsambo qr-0c52b15f-8f, satria ny fifamoivoizana, raha jerena ny adiresy mac alehany, dia nandeha tamin'ity interface ity.

[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 ~]$ 

Izany hoe, amin'ity tranga ity, ny zava-drehetra dia miasa araka ny lalΓ nan'ny routing mahazatra. Satria natokana ho an'ny mpampiantrano 10.0.2.8 ny fifamoivoizana dia tsy maintsy mivoaka amin'ny alalan'ny interface faharoa qr-92fa49b5-54 izy ary mandalo amin'ny tonelina vxlan mankany amin'ny node compute:


[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 ~]$ 

Lojika daholo ny zava-drehetra, tsy misy mahagaga. Andeha hojerentsika hoe aiza ny adiresy poppy an'ny mpampiantrano 10.0.2.8 hita ao amin'ny 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 ~]$ 

Araka ny efa nampoizina, mankany amin'ny br-tun ny fifamoivoizana, andeha hojerentsika hoe tonelina inona no alehan'ny fifamoivoizana manaraka:

[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 ~]$ 

Ny fifamoivoizana dia miditra ao amin'ny tonelina mba hanao compute-1. Eny, amin'ny compute-1 dia tsotra ny zava-drehetra - manomboka amin'ny br-tun ny fonosana dia mankany amin'ny br-int ary avy eo mankany amin'ny interface virtoaly:

[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 ~]$ 

Andeha hojerentsika fa ity no interface tsara:

[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 ~]$

Raha ny marina, nandeha tany amin'ny fonosana izahay. Heveriko fa voamarikao fa nandalo tonelina vxlan samihafa ny fifamoivoizana ary nivoaka niaraka tamin'ny VNI samihafa. Andeha hojerentsika hoe karazana VNI ireo, ary avy eo dia hanangona fanariam-pako eo amin'ny seranan-tsambo fanaraha-maso ny node ary ho azo antoka fa mandeha tsara araka ny voalaza etsy ambony ny fifamoivoizana.
Noho izany, ny tonelina hanaovana compute-0 dia manana ireto hetsika manaraka ireto=load:0->NXM_OF_VLAN_TCI[],load:0x16->NXM_NX_TUN_ID[],output:3. Andao hamadika 0x16 ho rafitra isa decimal:


0x16 = 6*16^0+1*16^1 = 6+16 = 22

Ny tonelina hanaovana compute-1 dia manana VNI manaraka: actions=load:0->NXM_OF_VLAN_TCI[],load:0x63->NXM_NX_TUN_ID[],output:2. Andao hamadika 0x63 ho rafitra isa decimal:


0x63 = 3*16^0+6*16^1 = 3+96 = 99

Eny ary, andeha hojerentsika ny fanariam-pako:

[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*******************

Ny fonosana voalohany dia fonosana vxlan avy amin'ny mpampiantrano 192.168.255.19 (compute-0) mba hampiantrano 192.168.255.15 (control-1) miaraka amin'ny vni 22, ao anatiny misy fonosana ICMP avy amin'ny mpampiantrano 10.0.1.85 mankany amin'ny mpampiantrano 10.0.2.8. Araka ny kajy etsy ambony, ny vni dia mifanaraka amin'ny zavatra hitanay tamin'ny vokatra.

Ny fonosana faharoa dia fonosana vxlan avy amin'ny mpampiantrano 192.168.255.15 (control-1) mba hampiantrano 192.168.255.26 (compute-1) miaraka amin'ny vni 99, ao anatiny misy fonosana ICMP avy amin'ny mpampiantrano 10.0.1.85 mankany amin'ny 10.0.2.8. Araka ny kajy etsy ambony, ny vni dia mifanaraka amin'ny zavatra hitanay tamin'ny vokatra.

Ny fonosana roa manaraka dia ny fifamoivoizana miverina avy amin'ny 10.0.2.8 fa tsy 10.0.1.85.

Izany hoe, tamin'ny farany dia nahazo ny rafitra fanaraha-maso node manaraka:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Toa izany ve? Adinonay ny toerana misy anarana roa:

[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 ~]$ 

Raha niresaka momba ny rafitry ny sehatra rahona izahay, dia tsara raha mahazo adiresy ho azy avy amin'ny mpizara DHCP ny milina. Ireo dia mpizara DHCP roa ho an'ny tambajotranay roa 10.0.1.0/24 sy 10.0.2.0/24.

Andeha hojerentsika fa marina izany. Adiresy iray ihany no ao amin'ity velarana anarana ity - 10.0.1.1 - ny adiresin'ny mpizara DHCP mihitsy, ary tafiditra ao anatin'ny br-int ihany koa izany:

[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

Andeha hojerentsika raha misy dingana misy qdhcp-67a3798c-32c0-4c18-8502-2531247e3cc2 amin'ny anarany ao amin'ny node fanaraha-maso:


[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 ~]$ 

Misy dingana toy izany ary mifototra amin'ny fampahalalana aseho ao amin'ny vokatra etsy ambony, dia azontsika atao, ohatra, ny mijery izay ananantsika hofaina amin'izao fotoana izao:

[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 ~]$

Vokatr'izany dia mahazo ireto serivisy manaraka ireto isika amin'ny node fanaraha-maso:

Fampidirana ny ampahany amin'ny tambajotra amin'ny fotodrafitrasa rahona

Eny ary, tadidio fa milina 4 fotsiny ity, tambajotra anatiny 2 ary router virtoaly iray... Tsy manana tambajotra ivelany eto izahay ankehitriny, tetikasa maro samihafa, samy manana ny tambajotrany (mifanindry), ary manana nesorina ny router iray, ary tamin'ny farany, tsy nisy afa-tsy node fanaraha-maso iray ihany tao amin'ny dabilio fitsapana (ho an'ny fandeferana diso dia tsy maintsy misy kΓ΄lejy telo node). Lojika fa amin'ny varotra dia "kely" sarotra kokoa ny zava-drehetra, fa amin'ity ohatra tsotra ity dia azontsika ny fomba tokony hiasana - na manana 3 na 300 namespaces ianao dia mazava ho azy fa zava-dehibe, fa avy amin'ny fomba fijery ny fiasan'ny rafitra iray manontolo, tsy hisy hiova be... na dia tsy hampiditra SDN mpivarotra sasany aza ianao. Saingy tantara hafa tanteraka izany.

Manantena aho fa mahaliana. Raha manana fanamarihana/fanampiny ianao, na any amin'ny toerana nandaingako tanteraka (olona aho ary ny hevitro dia ho subjective foana) - soraty izay tokony ahitsy/ampiana - hanitsy/ampianay ny zava-drehetra.

Ho famaranana, te-hilaza teny vitsivitsy momba ny fampitahana ny Openstack (na lavanila sy mpivarotra) amin'ny vahaolana rahona avy amin'ny VMWare aho - Nametraka an'io fanontaniana io matetika loatra aho tato anatin'ny roa taona lasa ary, raha ny marina dia miteny aho. efa leo ihany fa mbola. Raha ny hevitro dia sarotra be ny mampitaha ireo vahaolana roa ireo, saingy azo lazaina fa misy ny tsy fahampiana amin'ireo vahaolana roa ireo ary rehefa misafidy vahaolana iray dia mila mandanjalanja ny tombony sy ny tsy fahampiana.

Raha vahaolana entin'ny vondrom-piarahamonina ny OpenStack, dia manan-jo hanao izay tiany fotsiny ny VMWare (vakio - inona no mahasoa azy) ary lojika izany - satria orinasa ara-barotra efa zatra mitady vola amin'ny mpanjifany. Saingy misy iray lehibe sy matavy FA - azonao atao ny miala amin'ny OpenStack, ohatra avy amin'ny Nokia, ary miaraka amin'ny fandaniana kely dia mifindra amin'ny vahaolana avy amin'ny, ohatra, Juniper (Contrail Cloud), saingy mety tsy ho afaka hiala amin'ny VMWare ianao. . Amiko dia toa izao ireo vahaolana roa ireo - Openstack (vendor) dia tranom-borona tsotra ametrahana anao, saingy manana fanalahidy ianao ary afaka miala amin'ny fotoana rehetra. Ny VMWare dia tranom-borona volamena, ny tompony dia manana ny fanalahidin'ny tranom-borona ary handoa be anao izany.

Tsy mampiroborobo ny vokatra voalohany na ny faharoa aho - misafidy izay ilainao ianao. Fa raha manana safidy toy izany aho dia hifidy vahaolana roa - VMWare ho an'ny IT cloud (enta-mavesatra ambany, fitantanana mora), OpenStack avy amin'ny mpivarotra sasany (Nokia sy Juniper dia manome vahaolana turnkey tena tsara) - ho an'ny rahona Telecom. Tsy hampiasa ny Openstack ho an'ny IT madio aho - toy ny mitifitra fody miaraka amin'ny tafondro, saingy tsy hitako izay contraindications amin'ny fampiasana azy afa-tsy ny famerana. Na izany aza, ny fampiasana VMWare amin'ny fifandraisan-davitra dia toy ny mitaona vato voatorotoro ao anaty Ford Raptor - tsara tarehy avy any ivelany, fa ny mpamily dia tsy maintsy manao dia 10 fa tsy iray.

Raha ny hevitro, ny fatiantoka lehibe indrindra amin'ny VMWare dia ny fanakatonana tanteraka - ny orinasa dia tsy hanome anao fampahalalana momba ny fomba fiasany, ohatra, vSAN na inona ao amin'ny kernel hypervisor - tsy mahasoa fotsiny izany - izany hoe, ianao. tsy lasa manam-pahaizana manokana amin'ny VMWare - raha tsy misy ny fanohanan'ny mpivarotra, dia voaheloka ianao (matetika aho mihaona amin'ireo manam-pahaizana VMWare izay very hevitra amin'ny fanontaniana tsy misy dikany). Amiko ny VMWare dia mividy fiara mihidy ny kapaoty - eny, mety manana manam-pahaizana manokana afaka manova ny fehin-tsetroka ianao, fa izay nivarotra anao io vahaolana io ihany no afaka manokatra ny kapa. Izaho manokana dia tsy tiako ny vahaolana tsy azoko atao. Holazainao fa mety tsy voatery hiditra ao ambanin'ny satroka ianao. Eny, azo atao izany, fa hijery anao aho rehefa mila manangona asa lehibe ao amin'ny rahona avy amin'ny milina virtoaly 20-30, tambajotra 40-50, ny antsasany te-hivoaka, ary ny tapany faharoa dia mangataka. Fanafainganana SR-IOV, raha tsy izany dia mila roapolo amin'ireo fiara ireo ianao - raha tsy izany dia tsy ho ampy ny fampisehoana.

Misy fomba fijery hafa, ka ianao ihany no afaka manapa-kevitra izay hofidiana ary, ny tena zava-dehibe dia ianao no tompon'andraikitra amin'ny safidinao. Heveriko fotsiny izany - olona nahita sy nikasika vokatra 4 farafahakeliny - Nokia, Juniper, Red Hat ary VMWare. Izany hoe manana zavatra azo ampitahaina aho.

Source: www.habr.com

Add a comment