Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management

Efa antomotra ny taom-baovao. Ny ankizy manerana ny firenena dia efa nandefa taratasy ho an'i Dadabe Noely na nanao fanomezana ho an'ny tenany, ary ny mpanatanteraka lehibe indrindra, iray amin'ireo mpivarotra lehibe, dia niomana ho amin'ny apotheose amin'ny varotra. Amin'ny volana Desambra, mitombo imbetsaka ny entana ao amin'ny foibeny. Noho izany, nanapa-kevitra ny orinasa hanavao ny foibe angon-drakitra ary hampiasa servisy vaovao am-polony maro fa tsy fitaovana izay mahatratra ny faran'ny androm-piasany. Izany dia mamarana ny tantara amin'ny lafin'ny ranomandry mihodinkodina, ary manomboka ny mampientam-po.

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
Tonga teny an-toerana ny fitaovana volana maromaro talohan'ny faran'ny varotra. Ny serivisy fampandehanana, mazava ho azy, dia mahafantatra ny fomba sy ny tokony hamboarina amin'ny mpizara mba hampidirana azy ireo amin'ny tontolo famokarana. Saingy nila nanao automatique izany izahay ary nanafoana ny anton'ny maha-olombelona. Ankoatr'izay, nosoloina ireo lohamilina talohan'ny nifindran'ny rafitra SAP izay nanakiana ny orinasa.

Nifamatotra tanteraka tamin'ny fe-potoana farany ny fametrahana ireo mpizara vaovao. Ary ny fifindran'izany dia nidika fa nanimba ny fandefasana fanomezana an-davitrisa sy ny fifindran'ny rafitra. Na ny ekipa misy an'i Dada Frost sy Dadabe Noely aza dia tsy afaka nanova ny daty - azonao atao ny mamindra ny rafitra SAP ho an'ny fitantanana trano fanatobiana entana indray mandeha isan-taona. Nanomboka ny 31 desambra ka hatramin’ny 1 janoary lasa teo, ireo trano fanatobiana entana goavana an’ny mpaninjara, amin’ny fitambaran’ny kianja filalaovana baolina kitra 20, dia mijanona mandritra ny 15 ora. Ary io ihany no fe-potoana hamindrana ny rafitra. Tsy nanana toerana ho an'ny fahadisoana izahay rehefa nampiditra mpizara.

Mamelà ahy hazava: ny tantarako dia maneho ny fitaovana sy ny fizotran'ny fitantanana ny fandrindrana izay ampiasain'ny ekipanay.

Ny sampan-draharahan'ny fitantanana fanamafisana dia misy ambaratonga maromaro. Ny singa fototra dia ny rafitra CMS. Amin'ny asa indostrialy, ny tsy fisian'ny iray amin'ireo ambaratonga dia tsy maintsy hitarika fahagagana tsy mahafinaritra.

Fitantanana fametrahana OS

Ny ambaratonga voalohany dia rafitra iray amin'ny fitantanana ny fametrahana rafitra fiasana amin'ny lohamilina ara-batana sy virtoaly. Izy io dia mamorona rafitra OS fototra, manafoana ny maha-olombelona.

Amin'ny fampiasana an'ity rafitra ity dia nahazo ohatra amin'ny serivera mahazatra miaraka amin'ny OS sahaza ho an'ny automation bebe kokoa. Nandritra ny "fandrotsahana" dia nahazo andiana mpampiasa eo an-toerana sy fanalahidin'ny SSH ho an'ny daholobe izy ireo, ary koa ny rafitra OS tsy miovaova. Azo antoka fa hitantana ireo mpizara amin'ny alàlan'ny CMS izahay ary azo antoka fa tsy nisy ny tsy ampoizina "ambany" tamin'ny ambaratonga OS.

Ny asa "maximum" ho an'ny rafi-pitantanana fametrahana dia ny manitsy ho azy ireo mpizara avy amin'ny ambaratonga BIOS/Firmware mankany amin'ny OS. Miankina betsaka amin'ny fitaovana sy ny asa fanamboarana. Ho an'ny fitaovana heterogeneous, azonao atao ny mandinika REDFISH API. Raha avy amin'ny mpivarotra iray ny fitaovana rehetra, dia matetika kokoa ny mampiasa fitaovana fitantanana efa vita (ohatra, HP ILO Amplifier, DELL OpenManage, sns.).

Mba hametrahana ny OS amin'ny lohamilina ara-batana, dia nampiasa ny Cobbler fanta-daza izahay, izay mamaritra ny mombamomba ny fametrahana mifanaraka amin'ny serivisy fandidiana. Rehefa manampy mpizara vaovao amin'ny fotodrafitrasa, ny injeniera dia namatotra ny adiresy MAC an'ny mpizara amin'ny mombamomba ilaina ao amin'ny Cobbler. Rehefa sambany vao nitsambikina tamin'ny tambajotra dia nahazo adiresy vonjimaika sy OS vaovao ny mpizara. Avy eo dia nafindra tany amin'ny adiresy VLAN/IP kendrena ary nanohy ny asa tao. Eny, mila fotoana ny fanovana VLAN ary mitaky fandrindrana, fa manome fiarovana fanampiny amin'ny fametrahana tsy nahy ny mpizara amin'ny tontolo famokarana.

Namorona lohamilina virtoaly mifototra amin'ny maodely nomanina tamin'ny fampiasana HashiСorp Packer. Ny antony dia mitovy: mba hisorohana ny mety ho fahadisoana ataon'ny olombelona rehefa mametraka ny OS. Saingy, tsy toy ny mpizara ara-batana, ny Packer dia manafoana ny filana PXE, ny fampidinana tambajotra ary ny fanovana VLAN. Nanamora sy nanamora kokoa ny famoronana server virtoaly izany.

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 1. Mitantana ny fametrahana ny rafitra miasa.

Mitantana tsiambaratelo

Ny rafi-pitantanana fanamafisana rehetra dia misy angona tokony hafenina amin'ny mpampiasa tsotra, fa ilaina hanomanana rafitra. Ireo dia tenimiafina ho an'ny mpampiasa eo an-toerana sy ny kaonty serivisy, fanalahidin'ny fanamarinana, marika API isan-karazany, sns. Matetika izy ireo no antsoina hoe "tsiambaratelo."

Raha tsy fantatrao hatrany am-boalohany hoe aiza sy ahoana no hitehirizana ireo tsiambaratelo ireo, dia miankina amin'ny hamafin'ny fepetra takian'ny fiarovana ny fampahalalana, ireto fomba fitahirizana manaraka ireto:

  • mivantana ao amin'ny fehezan-dalàna mifehy ny fanamafisana na amin'ny rakitra ao amin'ny tahiry;
  • amin'ny fitaovana fitantanana fanamafisam-peo manokana (ohatra, Ansible Vault);
  • ao amin'ny rafitra CI/CD (Jenkins/TeamCity/GitLab/sns.) na amin'ny rafitra fitantanana fanamafisam-peo (Ansible Tower/Ansible AWX);
  • azo afindra "manual" ihany koa ny tsiambaratelo. Ohatra, apetraka amin'ny toerana voafaritra izy ireo, ary avy eo dia ampiasain'ny rafitra fitantanana fanamafisana;
  • fitambarana isan-karazany eo ambony.

Ny fomba tsirairay dia manana ny fatiantoka. Ny tena zava-dehibe dia ny tsy fisian'ny politika momba ny fidirana amin'ny tsiambaratelo: tsy azo atao na sarotra ny mamaritra hoe iza no afaka mampiasa tsiambaratelo sasany. Ny tsy fahampiana iray hafa dia ny tsy fisian'ny fanaraha-maso ny fidirana sy ny tsingerin'ny fiainana feno. Ahoana no hanoloana haingana, ohatra, ny fanalahidin'ny daholobe izay voasoratra ao amin'ny code sy amin'ny rafitra mifandraika amin'izany?

Nampiasa ny fitahirizana miafina foibe HashiCorp Vault izahay. Izany dia nahafahanay:

  • tehirizo tsara ny tsiambaratelo. Nafenina izy ireo, ary na dia misy olona mahazo miditra amin'ny angon-drakitra Vault aza (ohatra, amin'ny famerenana azy amin'ny backup), dia tsy ho afaka hamaky ireo tsiambaratelo voatahiry ao izy ireo;
  • mandamina politika hahazoana ny tsiambaratelo. Ny tsiambaratelo "natokana" ho azy ireo ihany no azon'ny mpampiasa sy ny fampiharana;
  • fanaraha-maso ny fidirana amin'ny tsiambaratelo. Ny hetsika rehetra misy tsiambaratelo dia voarakitra ao amin'ny diarin'ny fanamarinana Vault;
  • mandamina "tsingerin'ny fiainana" feno amin'ny fiasana amin'ny tsiambaratelo. Izy ireo dia azo noforonina, esorina, mametraka daty lany daty, sns.
  • mora ampidirina amin'ny rafitra hafa mila fidirana amin'ny tsiambaratelo;
  • ary ampiasao koa ny encryption end-to-end, tenimiafina indray mandeha ho an'ny OS sy ny angon-drakitra, taratasy fanamarinana avy amin'ny foibe nahazo alalana, sns.

Andeha isika izao hiroso amin'ny rafitra fanamarinana sy fanomezan-dàlana foibe. Azo natao tsy nisy izany, fa ny fitantanana ny mpampiasa amin'ny rafitra maro mifandraika dia tsy dia misy dikany loatra. Namboarina ny fanamarinana sy fanomezan-dàlana tamin'ny serivisy LDAP. Raha tsy izany, Vault dia tsy maintsy mamoaka sy manara-maso ny mari-pamantarana fanamarinana ho an'ny mpampiasa. Ary ny famafana sy fampidirana mpampiasa dia hivadika ho fikatsahana "namorona/namafa ity kaonty mpampiasa ity na aiza na aiza aho?"

Manampy ambaratonga hafa amin'ny rafitray izahay: fitantanana tsiambaratelo sy fanamarinana/fanomezana foibe:

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 2. Fitantanana tsiambaratelo.

Fitantanana Configuration

Tonga tany amin'ny fototra izahay - ny rafitra CMS. Amin'ny tranga misy antsika, ity dia fitambaran'ny Ansible sy Red Hat Ansible AWX.

Raha tokony ho Ansible dia azo ampiasaina ny Chef, Puppet, SaltStack. Nifidy Ansible izahay mifototra amin'ny fepetra maromaro.

  • Voalohany indrindra, dia ny versatility. Set ny Modules vonona ho an'ny fanaraha-maso manao impression. Ary raha tsy ampy izany dia azonao atao ny mikaroka ao amin'ny GitHub sy Galaxy.
  • Faharoa, tsy ilaina ny mametraka sy manohana mpiasa amin'ny fitaovana voatanisa, manaporofo fa tsy manelingelina ny entana izy ireo, ary manamafy ny tsy fisian'ny "marika".
  • Fahatelo, manana sakana kely amin'ny fidirana ny Ansible. Ny injeniera mahay dia hanoratra boky filalaovana miasa ara-bakiteny amin'ny andro voalohany iasana amin'ny vokatra.

Saingy tsy ampy ho anay ny Ansible irery ao anatin'ny tontolo famokarana. Raha tsy izany, olana maro no hipoitra amin'ny famerana ny fidirana sy ny fanaraha-maso ny fihetsiky ny mpitantana. Ahoana ny famerana ny fidirana? Rehefa dinihina tokoa, dia nilaina ho an'ny departemanta tsirairay ny mitantana (vakio: mitantana ny Ansible playbook) "ny azy manokana" ny lohamilina. Ahoana no ahafahan'ny mpiasa sasany mitantana boky Ansible manokana? Na ahoana no hanaraha-maso hoe iza no namoaka ny playbook nefa tsy nametraka fahalalana eo an-toerana be dia be momba ny lohamilina sy ny fitaovana mihazakazaka Ansible?

Ny ampahany lehibe amin'ny olana toy izany dia voavahan'ny Red Hat Tilikambo Ansible, na ny tetikasany amin'ny loharano misokatra Vidin'ny AWX. Izany no antony naleonay ho an'ny mpanjifa.

Ary mikasika ny sarin'ny rafitra CMS. Ny playbook ansible dia tokony hotehirizina ao amin'ny rafitra fitantanana fitehirizana code. Manana izany isika GitLab CE.

Noho izany, ny fanamafisana ny tenany dia tantanan'ny fitambaran'ny Ansible/Ansible AWX/GitLab (jereo ny sary 3). Mazava ho azy fa ny AWX/GitLab dia tafiditra amin'ny rafitra fanamarinana tokana, ary ny playbook Ansible dia tafiditra amin'ny HashiCorp Vault. Ny Configuration dia miditra amin'ny tontolon'ny famokarana amin'ny alàlan'ny Ansible AWX ihany, izay mamaritra ny "fitsipika momba ny lalao" rehetra: iza no afaka manitsy hoe inona, aiza no hahazoana ny kaody fitantanana fanamafisana ho an'ny CMS, sns.

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 3. Fitantanana Configuration.

Fitantanana fitsapana

Aseho amin'ny endrika kaody ny config. Noho izany, voatery milalao amin'ny fitsipika mitovy amin'ny mpamorona rindrambaiko izahay. Nila nandamina ny fizotran'ny fampandrosoana, ny fitiliana mitohy, ny fandefasana ary ny fampiharana ny kaody fanamafisam-peo amin'ny lohamilina famokarana.

Raha tsy vita avy hatrany izany, dia tsy hisy intsony ny fanohanana sy ovaina ireo andraikitra nosoratana ho an'ny fanamboarana, na hitsahatra amin'ny famokarana. Fantatra ny fanafodin'ity fanaintainana ity, ary nanaporofo ny tenany tamin'ity tetikasa ity:

  • ny anjara asa tsirairay dia voarakotry ny andrana vondrona;
  • mandeha ho azy ny fitsapana isaky ny misy fiovana eo amin'ny kaody mitantana ny fanamafisana;
  • Ny fanovana ao amin'ny kaody fitantanana fanamafisam-peo dia avoaka ao amin'ny tontolon'ny famokarana raha tsy efa vita soa aman-tsara ny fitsapana rehetra sy ny famerenana ny kaody.

Lasa tony sy azo vinaniana kokoa ny fampandrosoana ny kaody sy ny fitantanana ny fandrindrana. Mba handaminana ny fitiliana mitohy, dia nampiasa ny fitaovana GitLab CI/CD izahay, ary naka Molecule Ansible.

Isaky ny misy fiovana eo amin'ny kaody fitantanana fikirakirana dia miantso Molecule ny GitLab CI/CD:

  • dia manamarina ny code syntax,
  • mampiakatra ny container Docker,
  • mampihatra ny kaody novaina amin'ny fitoeran-javatra noforonina,
  • manamarina ny anjara asan'ny tsy fahampian-tsakafo ary manao fitsapana ho an'ity fehezan-dalàna ity (ny granularity eto dia eo amin'ny haavon'ny andraikitra azo atao, jereo ny sary 4).

Nandefa fanamafisam-peo ho an'ny tontolo famokarana mampiasa Ansible AWX izahay. Ny injenieran'ny fampandehanana dia nampihatra ny fanovana ny tefy tamin'ny alalan'ny maodely efa voafaritra. AWX tsy miankina "nangataka" ny kinova farany amin'ny kaody avy amin'ny sampana master GitLab isaky ny ampiasaina. Amin'izany fomba izany dia nesorinay ny fampiasana kaody tsy voasedra na lany andro amin'ny tontolon'ny famokarana. Mazava ho azy fa ny kaody dia niditra tao amin'ny sampana master raha tsy aorian'ny fitsapana, famerenana ary fankatoavana.

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 4. Fitsapana mandeha ho azy ny andraikitra ao amin'ny GitLab CI/CD.

Misy ihany koa ny olana mifandray amin'ny fiasan'ny rafitra famokarana. Amin'ny tena fiainana dia sarotra be ny manova ny fanovana amin'ny alàlan'ny kaody CMS irery. Mipoitra ny toe-javatra maika rehefa tsy maintsy manova ny fanovana “eto sy izao” ny injeniera iray, nefa tsy miandry fanovana code, fitsapana, fankatoavana, sns.

Vokatr'izany, noho ny fiovana amin'ny tanana, dia miseho ny tsy fitovian-kevitra amin'ny karazana fitaovana mitovy (ohatra, ny firafitry ny sysctl dia samy hafa amin'ny node cluster HA). Na ny tena fanamafisam-peo amin'ny fitaovana dia tsy mitovy amin'ilay voalaza ao amin'ny kaody CMS.

Noho izany, ho fanampin'ny fitsapana mitohy, manamarina ny tontolon'ny famokarana ho an'ny tsy fitovian-kevitra. Nisafidy ny safidy tsotra indrindra izahay: mampandeha ny kaody fanamafisana CMS amin'ny fomba "mainty run", izany hoe, tsy misy fanovana, fa miaraka amin'ny fampahafantarana ny tsy fitovian-kevitra rehetra eo amin'ny fikirakirana nomanina sy tena izy. Nanatanteraka izany izahay tamin'ny alàlan'ny fampandehanana tsindraindray ny bokin'ny Ansible rehetra miaraka amin'ny safidy "—check" amin'ny lohamilina famokarana. Toy ny mahazatra, Ansible AWX dia tompon'andraikitra amin'ny famoahana sy fitazonana ny playbook ho havaozina (jereo ny sary 5):

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 5. Manamarina ny tsy fitovizan'ny fandrindrana ao amin'ny Ansible AWX.

Aorian'ny fisavana dia mandefa tatitra tsy mifanaraka amin'ny mpitantana ny AWX. Mandalina ny fanamafisam-peo misy olana izy ireo ary manamboatra izany amin'ny alàlan'ny boky filalaovana namboarina. Izany no fomba fitazonana ny fanamafisana ao amin'ny tontolon'ny famokarana ary ny CMS dia manara-maso sy mirindra foana. Izany dia manafoana ny "fahagagana" tsy mahafinaritra rehefa ampiasaina amin'ny lohamilina "famokarana" ny code CMS.

Manana sosona fitsapana manan-danja isika izao misy ny Ansible AWX/GitLab/Molecule (sary 6).

Mampientam-po momba ny fametrahana server tsy misy fahagagana miaraka amin'ny Configuration Management
vary. 6. Fitantanana fitsapana.

Sarotra? Tsy miady hevitra aho. Saingy nanjary valiny feno amin'ny fanontaniana maro mifandraika amin'ny automatique ny fanamafisam-peo amin'ny server. Amin'izao fotoana izao, ny mpizara manara-penitra an'ny mpaninjara dia manana rafitra voafaritra tsara foana. Ny CMS, tsy toy ny injeniera, dia tsy hanadino ny hampiditra ireo fanovana ilaina, mamorona mpampiasa ary manao fanovana am-polony na an-jatony ilaina.

Tsy misy "fahalalana miafina" ao amin'ny toeran'ny mpizara sy ny tontolo ankehitriny. Ny endri-javatra ilaina rehetra dia hita taratra ao amin'ny playbook. Tsy misy famoronana sy toromarika manjavozavo intsony: “Apetraho toy ny Oracle mahazatra izy io, fa mila mamaritra sysctl roa ianao ary ampio mpampiasa miaraka amin'ny UID ilaina. Anontanio ry zalahy miasa fa fantany".

Ny fahafahana mamantatra ny tsy fitovian-kevitra sy manitsy azy ireo amin'ny fomba mavitrika dia manome fiadanan-tsaina. Raha tsy misy rafitra fitantanana fanamafisam-peo, matetika dia hafa ny fijery azy. Miangona ny olana mandra-pahatongan'ny andro iray "mitifitra" amin'ny famokarana. Avy eo dia atao ny debriefing, ny fanamafisana dia voamarina ary ahitsy. Ary miverimberina indray ny tsingerina

Ary mazava ho azy, nanafaingana ny fandefasana ny lohamilina amin'ny fiasana andro maromaro ka hatramin'ny ora maromaro.

Eny, tamin'ny alin'ny taom-baovao mihitsy, rehefa nanokatra fanomezana tamim-pifaliana ny ankizy ary nanao firarian-tsoa ny olon-dehibe rehefa namely ny kiririoka, dia nafindran'ny injenieranay ho amin'ny lohamilina vaovao ny rafitra SAP. Na i Dadabe Noely aza dia hilaza fa ny fahagagana tsara indrindra dia ireo izay voaomana tsara.

PS Matetika ny ekipanay dia miatrika ny zava-misy fa ny mpanjifa dia te-hamaha ny olana amin'ny fitantanana ny fanamafisana araka izay tratra. Ny tsara indrindra, toy ny majika - miaraka amin'ny fitaovana iray. Saingy eo amin'ny fiainana dia sarotra kokoa ny zava-drehetra (eny, tsy naverina indray ny bala volafotsy): tsy maintsy mamorona dingana iray manontolo ianao amin'ny fampiasana fitaovana mety ho an'ny ekipan'ny mpanjifa.

Mpanoratra: Sergey Artemov, mpanao mari-trano Vahaolana DevOps "Jet Infosystems"

Source: www.habr.com

Add a comment