Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

National Environmental Satellite Data Information Service (NESDIS) tau txo nws cov nqi tswj kev teeb tsa rau Red Hat Enterprise Linux (RHEL) los ntawm 35% los ntawm kev tsiv ntawm Puppet Enterprise mus rau Ansible Tower. Hauv zaj yeeb yaj kiab "peb tau ua li cas" no, tus kws tshaj lij tshuab tshuab Michael Rau piav qhia txog rooj plaub rau kev tsiv teb tsaws no, sib qhia cov lus qhia muaj txiaj ntsig thiab cov lus qhia uas tau kawm los ntawm kev hloov ntawm ib qho SCM mus rau lwm qhov.

Los ntawm qhov video no koj yuav kawm:

  • yuav ua li cas los txiav txim siab los tswj qhov ua tau ntawm kev hloov ntawm Puppet Enterprise mus rau Ansible Tower;
  • cov tswv yim dab tsi los siv los ua kom qhov kev hloov pauv tau zoo li ua tau;
  • cov lus qhia rau transcoding PE manifests rau hauv Ansible Playbook;
  • Cov lus pom zoo rau kev txhim kho ntawm Ansible Tower.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Nyob zoo txhua tus, kuv lub npe yog Michael Rau, Kuv yog Senior Systems Engineer ntawm ActioNet, uas ua haujlwm rau National Oceanic thiab Atmospheric Administration (NOAA) NESDIS kev pabcuam. Niaj hnub no peb yuav tham txog txoj hlua trimming - kuv tus kheej kev paub ntawm kev tsiv teb tsaws chaw ntawm Puppet Enterprise mus rau Ansible Tower. Lub ntsiab lus ntawm qhov kev nthuav qhia no yog "saib xyuas kuv qhov caws pliav" sab laug tom qab kuv tau ua qhov kev hloov pauv no ua ntej xyoo. Kuv xav qhia qhov kuv tau kawm los ntawm tus txheej txheem no. Yog li thaum koj ua qee yam zoo li no, siv kuv qhov kev paub dhau los, koj tuaj yeem hloov pauv yam tsis muaj kev ua haujlwm ntxiv.

Koj pom cov slides zoo ib yam li qhov no thaum pib ntawm txhua qhov kev nthuav qhia ntawm Ansible Fest. Cov swb no qhia txog keeb kwm ntawm kuv lub tuam txhab kev ua haujlwm automation. Kuv tsis yog tshiab rau qhov no vim kuv tau siv Puppet / Puppet Enterprise txij li xyoo 2007. Kuv pib ua haujlwm nrog Ansible hauv 2016, thiab zoo li ntau lwm tus neeg siv ntawm cov khoom no, kuv tau nyiam los ntawm qhov muaj peev xwm ntawm "tricks" siv cov kab hais kom ua thiab cov ntawv yooj yim (playbooks). Thaum kawg ntawm 2017, kuv tau mus cuag kuv cov kev tswj xyuas txog cov laj thawj muaj zog ntawm kev tsiv mus rau Ansible Tower. Hauv ib feeb kuv yuav qhia koj txog cov laj thawj uas ua rau kuv ua kauj ruam no. Tom qab tau txais kev pom zoo ntawm kev tswj hwm, nws tau siv ob peb lub hlis ntxiv los ua kom tiav cov phiaj xwm, thiab kuv tau hloov pauv thaum Lub Ib Hlis-Lub Ob Hlis xyoo no. Yog li, peb tau tso tseg tag nrho Puppet hauv kev pom zoo ntawm Ansible, thiab nws yog qhov zoo heev.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Dab tsi txaus siab rau kuv tshaj plaws txog Ansible yog lub peev xwm sau thiab siv lub luag haujlwm thiab phau ntawv ua si. Lub luag haujlwm yog qhov zoo rau kev tsim cov haujlwm sib txawv tab sis muaj feem cuam tshuam thiab muab tag nrho cov ntaub ntawv ntsig txog cov dej num hauv ib qho chaw. Ib phau ntawv ua si yog YAML syntax, cov ntawv sau uas piav qhia txog kev ua rau ib lossis ntau tus tswv. Kuv qhia rau cov neeg siv txog cov yam ntxwv no, feem ntau software tsim tawm. Ansible Tower muab koj lub peev xwm hais tias, "tsis yog, koj tsis muaj lub plhaub nkag, tab sis kuv muab koj lub peev xwm los khiav tag nrho cov txheej txheem Ntauwd thiab rov pib qhov kev pabcuam thaum koj xav tau." Kuv yuav qhia koj txog qhov chaw ua haujlwm thiab cov khoom siv uas peb siv.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Qhov no yog tsoomfwv LAN, 7 qhov chaw lub cev txuas nrog huab MPLS, 140 RHEL servers, 99% ntawm cov uas yog virtual (vSphere), SuperMicro hardware, NexentaStore network cia, ib txheej ntawm Cisco, Arista thiab Cumulus keyboards thiab Fortinet UTM kev tswj hwm kev hem thawj. cov cuab yeej ntawm txhua qhov chaw.

Tsoom fwv teb chaws network txhais tau hais tias kuv yuav tsum siv tag nrho cov ntaub ntawv kev ruaj ntseg ntsuas los ntawm txoj cai. Koj yuav tsum nco ntsoov tias Puppet Enterprise tsis txhawb nqa feem ntau ntawm cov khoom siv uas peb siv. Peb raug yuam kom siv cov cuab yeej siv nyiaj txiag vim tias tsoomfwv cov koom haum muaj teeb meem nyiaj txiag cov khoom siv no. Tias yog vim li cas peb yuav SuperMicro kho vajtse thiab sib sau ua ke peb cov khoom siv los ntawm ib qho chaw, kev saib xyuas uas tau lees paub los ntawm tsoomfwv cov ntawv cog lus. Peb siv Linux thiab qhov no yog ib qho laj thawj tseem ceeb rau kev hloov mus rau Ansible.

Peb keeb kwm nrog Puppet yog raws li nram no.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Xyoo 2007, peb muaj ib lub network me me ntawm 20-25 nodes, uas peb siv Puppet. Yeej, cov nodes tsuas yog RedHat "lub thawv". Xyoo 2010, peb pib siv Puppet Dashboard web interface rau 45 nodes. Raws li lub network txuas ntxiv nthuav dav, peb tau tsiv mus rau PE 2014 hauv xyoo 3.3, ua tiav qhov kev hloov pauv nrog kev sau rov ua dua tshiab rau 75 nodes. Qhov no yuav tsum tau ua vim Puppet nyiam hloov cov cai ntawm qhov kev ua si, thiab qhov no lawv hloov cov lus tag nrho. Ib xyoos tom qab, thaum kev txhawb nqa rau version 3 ntawm Puppet Enterprise xaus, peb raug yuam kom tsiv mus rau PE 2015.2. Peb yuav tsum rov sau dua qhov tshwm sim dua rau cov servers tshiab thiab yuav daim ntawv tso cai nrog 100 nodes, txawm tias lub sijhawm ntawd peb tsuas muaj 85 nodes.

Tsuas yog 2 xyoos dhau los, thiab peb tau rov ua haujlwm ntau heev los hloov mus rau qhov tshiab PE 2016.4. Peb yuav ib daim ntawv tso cai rau 300 nodes, muaj tsuas yog 130. Peb rov yuav tsum tau hloov loj rau lub manifest vim hais tias tus tshiab version ntawm cov lus muaj ib tug sib txawv syntax tshaj cov lus ntawm lub 2015 version. Yog li ntawd, peb SCM hloov los ntawm SVN version tswj rau Bitbucket (Git). Qhov no yog peb "kev sib raug zoo" nrog Puppet.

Yog li, kuv yuav tsum tau piav qhia rau kev tswj hwm vim li cas peb thiaj xav tau txav mus rau lwm qhov SCM siv cov lus sib cav hauv qab no. Thawj yog tus nqi siab ntawm kev pabcuam. Kuv tham nrog cov txiv neej ntawm RedHat thiab lawv hais tias tus nqi ntawm kev khiav 300 node network nrog Ansible Tower yog ib nrab tus nqi ntawm Puppet Enterprise. Yog tias koj tseem yuav Ansible Cav, tus nqi yuav yog tib yam, tab sis koj yuav tau txais ntau yam ntxiv dua li PE. Txij li thaum peb yog ib lub tuam txhab lag luam hauv xeev tau txais nyiaj los ntawm tsoomfwv cov peev nyiaj, qhov no yog qhov kev sib cav zoo nkauj heev.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Qhov thib ob sib cav yog versatility. Puppet tsuas yog txhawb nqa kho vajtse uas muaj tus neeg sawv cev Puppet. Qhov no txhais tau hais tias tus neeg sawv cev yuav tsum tau nruab rau ntawm txhua lub keyboards, thiab nws yuav tsum yog qhov tseeb version. Thiab yog tias qee qhov ntawm koj cov keyboards txhawb nqa ib qho, thiab qee qhov txhawb lwm tus, koj yuav tsum tau nruab ib lub tshiab ntawm tus neeg sawv cev PE rau lawv kom lawv txhua tus tuaj yeem ua haujlwm hauv tib lub SCM.

Lub Ansible Tower system ua haujlwm txawv vim nws tsis muaj tus neeg sawv cev, tab sis nws muaj cov qauv uas txhawb Cisco keyboards thiab tag nrho lwm cov keyboards. Qhov SCM no txhawb nqa Qubes OS, Linux thiab 4.NET UTM. Ansible Ntauwd kuj txhawb NexentaStore network cia tswj tswj raws li Illumos kernel, qhib-qhov chaw Unix-based operating system. Qhov no yog kev txhawb nqa me me, tab sis Ansible Tower ua nws lawm.

Qhov kev sib cav thib peb, uas tseem ceeb heev rau kuv thiab rau peb cov thawj coj, yog qhov yooj yim ntawm kev siv. Kuv siv sijhawm 10 xyoo los ua tus Puppet modules thiab manifest code, tab sis kuv kawm Ansible hauv ib lub lis piam vim tias SCM no yooj yim dua rau kev ua haujlwm nrog. Yog tias koj khiav cov ntaub ntawv executable, ntawm chav kawm, tshwj tsis yog tias koj ua li ntawd tsis tsim nyog, ces cov neeg txawj ntse thiab cov lus teb ua haujlwm nrog lawv. YAML-based playbooks yooj yim kawm thiab siv ceev. Cov neeg uas tsis tau hnov ​​​​txog YAML ua ntej tuaj yeem nyeem cov ntawv sau yooj yim thiab nkag siab yooj yim tias nws ua haujlwm li cas.

Ua kom ncaj ncees, Puppet ua rau koj txoj haujlwm ua tus tsim tawm nyuaj dua vim tias nws yog raws li kev siv Puppet Master. Nws yog tib lub tshuab tso cai rau kev sib txuas lus nrog Puppet cov neeg sawv cev. Yog tias koj tau hloov pauv rau qhov tshwm sim thiab xav sim koj cov cai, koj yuav tsum rov sau cov lej rau Puppet Master, uas yog, teeb tsa Puppet Master /etc/hosts cov ntaub ntawv txuas rau txhua tus neeg siv khoom thiab pib Puppet Server kev pabcuam. Tsuas yog tom qab qhov no koj tuaj yeem sim ua haujlwm ntawm cov khoom siv network ntawm ib tus tswv tsev. Qhov no yog ib txoj kev mob heev.
Txhua yam yooj yim dua hauv Ansible. Txhua yam koj yuav tsum tau ua yog tsim cov cai rau lub tshuab uas tuaj yeem sib txuas lus ntawm SSH nrog tus tswv tsev hauv kev sim. Qhov no yooj yim dua los ua haujlwm nrog.

Qhov txiaj ntsig loj tom ntej ntawm Ansible Tower yog lub peev xwm los txhawb koj txoj kev txhawb nqa uas twb muaj lawm thiab tswj hwm koj qhov kev teeb tsa kho vajtse uas twb muaj lawm. SCM no siv tag nrho cov ntaub ntawv muaj nyob ntawm koj qhov chaw tsim kho thiab kho vajtse, tshuab virtual, servers, thiab lwm yam yam tsis muaj cov kauj ruam ntxiv. Nws tuaj yeem tham nrog koj RH Satellite servers, yog tias koj muaj, thiab muab kev koom ua ke rau koj koj yuav tsis tau nrog Puppet.

Lwm qhov tseem ceeb yog kev tswj kom ntxaws. Koj paub tias Puppet yog ib qho kev ua haujlwm, nws yog daim ntawv thov tus neeg siv khoom, yog li koj yuav tsum tau txhais cov yam ntxwv uas twb muaj lawm ntawm tag nrho koj cov tshuab hauv ib qho ntev ntev. Nyob rau hauv cov ntaub ntawv no, lub xeev ntawm txhua tus neeg lub hauv paus ntawm lub system yuav tsum tau sim txhua txhua ib nrab teev - qhov no yog lub neej ntawd lub sij hawm. Qhov no yog li cas Puppet ua haujlwm.

Ntauwd cawm koj ntawm qhov ntawd. Koj tuaj yeem khiav ntau yam txheej txheem ntawm ntau yam khoom siv yam tsis muaj kev txwv; koj tuaj yeem ua haujlwm yooj yim, khiav lwm cov txheej txheem tseem ceeb, teeb tsa kev ruaj ntseg, thiab ua haujlwm nrog cov ntaub ntawv. Koj tuaj yeem ua txhua yam uas nyuaj hauv Puppet Enterprise. Yog li, yog tias koj teeb tsa nws ntawm ib tus tswv tsev, nws yuav siv sijhawm rau cov kev hloov pauv kom muaj txiaj ntsig ntawm tus tswv tsev ntxiv. Hauv Ansible, txhua qhov kev hloov pauv tau siv tib lub sijhawm.

Thaum kawg, cia peb saib ntawm kev ruaj ntseg module. Ansible Tower siv nws yooj yim amazingly, nrog zoo precision thiab kev saib xyuas. Koj tuaj yeem tso cai rau cov neeg siv nkag mus rau cov kev pabcuam tshwj xeeb lossis rau cov tswv tsev tshwj xeeb. Kuv ua qhov no nrog kuv cov neeg ua haujlwm uas tau siv los ua haujlwm ntawm Windows, txwv lawv txoj kev nkag mus rau Linux plhaub. Kuv paub tseeb tias lawv muaj kev nkag mus rau Ntauwd kom lawv tsuas tuaj yeem ua haujlwm thiab khiav tsuas yog cov kev pabcuam uas cuam tshuam rau lawv.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Cia peb saib tej yam koj yuav tsum tau ua ua ntej kom koj txoj kev hloov mus rau Ansible Tower yooj yim dua. Ua ntej tshaj plaws, koj yuav tsum npaj koj cov khoom siv. Yog tias qee cov ntsiab lus ntawm koj qhov kev tsim kho tsis tau nyob hauv cov ntaub ntawv, koj yuav tsum tau ntxiv rau lawv. Muaj cov tshuab uas tsis hloov lawv cov yam ntxwv thiab yog li tsis nyob hauv Puppet database, tab sis yog tias koj tsis ntxiv lawv nyob ntawd ua ntej tsiv mus rau Tower, koj yuav poob ntau qhov zoo. Qhov no tej zaum yuav yog "qhuav", cov ntaub ntawv ua ntej, tab sis nws yuav tsum muaj cov ntaub ntawv hais txog txhua yam khoom koj muaj. Yog li ntawd, koj yuav tsum sau ib tsab ntawv dynamic hardware uas yuav cia li thawb tag nrho cov kev hloov pauv hauv cov ntaub ntawv rau hauv cov ntaub ntawv, ces Ansible yuav paub cov tswv yuav tsum muaj nyob rau hauv lub system tshiab. Koj yuav tsis tas yuav qhia rau SCM no uas yog tus tswv koj ntxiv thiab cov tswv tsev twg tsis muaj lawm, vim nws yuav paub tag nrho cov no. Qhov ntau cov ntaub ntawv muaj nyob rau hauv cov ntaub ntawv, qhov ntau pab tau thiab hloov tau Ansible yuav. Nws ua haujlwm zoo li nws tsuas yog nyeem cov xwm txheej kho vajtse barcode los ntawm cov ntaub ntawv.

Siv qee lub sijhawm los paub txog cov kab hais kom ua hauv Ansible. Khiav qee cov lus txib kom sim cov ntawv kho vajtse, sau thiab khiav qee cov ntawv sau yooj yooj yim tab sis muaj txiaj ntsig zoo, siv Jinja2 templates qhov tsim nyog. Sim sau ib lub luag hauj lwm thiab tsab ntawv rau ib tug complex, multi-step txheej txheem siv ib tug ntau, feem ntau ntsib hardware configuration. Ua si nrog cov khoom no, sim seb nws ua haujlwm li cas. Txoj kev no koj yuav kawm paub siv lub tsev qiv ntawv tsim cov cuab yeej siv hauv Tower. Kuv twb tau hais tias nws yuav siv sijhawm li 3 lub hlis los npaj rau kev hloov pauv. Kuv xav tias raws li kuv qhov kev paub dhau los, koj yuav tuaj yeem ua qhov no sai dua. Tsis txhob xav txog lub sijhawm no nkim, vim tias tom qab ntawd koj yuav ntsib txhua yam txiaj ntsig ntawm txoj haujlwm ua tiav.

Tom ntej no, koj yuav tsum txiav txim siab seb koj xav tau dab tsi los ntawm Ansible Tower, qhov system no yuav tsum ua li cas rau koj.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Koj puas yuav tsum tau xa cov kab ke ntawm cov khoom lag luam liab qab, ntawm cov tshuab virtual? Lossis koj puas xav tswj hwm cov haujlwm qub thiab kev teeb tsa ntawm cov cuab yeej uas twb muaj lawm? Qhov no yog ib qho tseem ceeb heev rau cov tuam txhab pej xeem, yog li koj yuav tsum nco ntsoov tias koj yuav tuaj yeem tsiv teb tsaws thiab siv Ansible ntawm koj qhov kev teeb tsa uas twb muaj lawm. Txheeb xyuas cov txheej txheem kev tswj hwm niaj hnub uas koj xav kom automate. Tshawb nrhiav seb koj yuav tsum tau siv cov ntawv thov tshwj xeeb thiab cov kev pabcuam ntawm qhov system tshiab. Ua ib daim ntawv teev npe uas koj xav ua thiab ua qhov tseem ceeb.

Tom qab ntawd pib sau tsab ntawv code thiab lub luag haujlwm uas yuav pab tau cov haujlwm koj npaj ua kom tiav. Muab lawv tso rau hauv Cov Txheej Txheem, ib qho kev sib sau ua ke ntawm cov phau ntawv uas cuam tshuam. Txhua qhov project yuav muaj nyob rau hauv Git repository cais lossis ib qhov chaw cia sib txawv nyob ntawm seb tus tswj hwm tus lej twg koj siv. Koj tuaj yeem tswj hwm cov ntawv sau ua si thiab phau ntawv teev npe los ntawm kev muab lawv tso rau hauv Txoj Haujlwm Base Path ntawm Ntauwd server, lossis los ntawm kev tso cov ntawv ua si hauv txhua qhov kev tswj hwm (SCM) system txhawb nqa los ntawm Tower, suav nrog Git, Subversion, Mercurial, thiab Red Hat Kev nkag siab. Hauv ib qhov project koj tuaj yeem tso ntau cov ntawv raws li koj xav tau. Piv txwv li, kuv tau tsim ib txoj haujlwm yooj yim uas kuv tau tso ib tsab ntawv rau RedHat cov ntsiab lus, ib tsab ntawv rau Linux core, thiab cov ntawv sau rau tag nrho cov hauv paus ntsiab lus. Yog li, hauv ib qhov project muaj ntau lub luag haujlwm thiab cov xwm txheej uas tau tswj hwm los ntawm ib qho chaw khaws cia Git.

Khiav tag nrho cov no los ntawm kab hais kom ua yog ib txoj hauv kev zoo los sim lawv txoj haujlwm. Qhov no yuav npaj koj rau kev teeb tsa Tower.

Cia wb tham me ntsis txog kev hloov pauv tus Puppet manifest, vim kuv tau siv sijhawm ntau rau qhov no kom txog thaum kuv paub tias yuav tsum ua dab tsi tiag tiag.

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 1

Raws li kuv tau hais ua ntej, Puppet khaws tag nrho cov chaw thiab cov kev xaiv kho vajtse nyob rau hauv ib qho ntev manifest, thiab qhov no manifest khaws txhua yam uas SCM yuav tsum ua. Thaum ua qhov kev hloov pauv, koj tsis tas yuav ua rau tag nrho koj cov dej num rau hauv ib daim ntawv teev npe; hloov, xav txog cov qauv ntawm cov txheej txheem tshiab: lub luag haujlwm, ntawv sau, cim npe, pawg thiab dab tsi yuav tsum mus rau ntawd. Qee qhov autonomous network cov ntsiab lus yuav tsum tau muab tso rau hauv cov pab pawg uas tuaj yeem tsim cov ntawv sau. Ntau qhov kev tsim kho vaj tse uas cuam tshuam nrog ntau cov peev txheej, suav nrog cov chav kawm ntawm tus kheej, tuaj yeem ua ke rau hauv lub luag haujlwm. Ua ntej tsiv teb tsaws, koj yuav tsum txiav txim siab txog qhov no. Yog tias koj tab tom tsim lub luag haujlwm loj lossis cov xwm txheej uas tsis haum rau ntawm ib qho screen, koj yuav tsum siv cov cim npe kom tuaj yeem ntes qee qhov ntawm cov txheej txheem.

18:00

Txiav cov xov: migrating los ntawm Puppet Enterprise mus rau Ansible Tower. Ntu 2

Ib co ads πŸ™‚

Ua tsaug uas koj tau nyob nrog peb. Koj puas nyiam peb cov ntawv? Xav pom cov ntsiab lus nthuav ntxiv? Txhawb nqa peb los ntawm kev tso ib qho kev txiav txim lossis qhia rau cov phooj ywg, huab VPS rau cov tsim tawm los ntawm $ 4.99, ib qho tshwj xeeb analogue ntawm nkag-theem servers, uas tau tsim los ntawm peb rau koj: Qhov tseeb tag nrho txog VPS (KVM) E5-2697 v3 (6 Cores) 10GB DDR4 480GB SSD 1Gbps los ntawm $ 19 los yog yuav ua li cas faib cov server? (muaj nrog RAID1 thiab RAID10, mus txog 24 cores thiab mus txog 40GB DDR4).

Dell R730xd 2x pheej yig dua hauv Equinix Tier IV data center hauv Amsterdam? Tsuas yog nyob ntawm no 2 x Intel TetraDeca-Core Xeon 2x E5-2697v3 2.6GHz 14C 64GB DDR4 4x960GB SSD 1Gbps 100 TV los ntawm $ 199 hauv Netherlands! Dell R420 - 2x E5-2430 2.2Ghz 6C 128GB DDR3 2x960GB SSD 1Gbps 100TB - los ntawm $ 99! Nyeem txog Yuav ua li cas tsim infrastructure Corp. chav kawm nrog kev siv Dell R730xd E5-2650 v4 servers muaj nqis 9000 euros rau ib lub nyiaj?

Tau qhov twg los: www.hab.com

Ntxiv ib saib