Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Má thagann fás ró-ghasta ar do bhonneagar TF, beidh tú ag tabhairt aghaidh ar rogha luath nó mall: acmhainní daonna a mhéadú go líneach chun tacú leis nó tosú ar uathoibriú. Go dtí pointe éigin, bhí cónaí orainn sa chéad paradigm, agus ansin thosaigh an cosán fada go Bonneagar-mar-Cód.

Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Ar ndóigh, ní tosaithe é NSPK, ach bhí atmaisféar den sórt sin i réim sa chuideachta sna chéad bhlianta dá bhfuil ann, agus ba bhlianta an-suimiúil iad sin. Is ainm dom Kornyakov Dmitry, Tá mé ag tacú le bonneagar Linux le riachtanais infhaighteachta ard le breis agus 10 mbliana. Thosaigh sé le foireann an NSPK i mí Eanáir 2016 agus, ar an drochuair, ní fhaca sé tús le bunú na cuideachta, ach tháinig sé ag staid athruithe móra.

Go ginearálta, is féidir linn a rá go soláthraíonn ár bhfoireann 2 tháirge don chuideachta. Is é an chéad bhonneagar. Ba cheart go n-oibreodh an ríomhphost, ba cheart go n-oibreodh DNS, agus ba cheart do rialtóirí fearainn tú a ligean isteach i bhfreastalaithe nár cheart a thuairteáil. Tá tírdhreach TF na cuideachta ollmhór! Is córais ríthábhachtacha gnó agus misin iad seo, agus is iad na ceanglais infhaighteachta do chuid acu ná 99,999. Is é an dara táirge na freastalaithe iad féin, fisiciúil agus fíorúil. Ní mór monatóireacht a dhéanamh ar na cinn atá ann cheana féin, agus ní mór cinn nua a sheachadadh go rialta do chustaiméirí ó go leor ranna. San Airteagal seo ba mhaith liom díriú ar an gcaoi a d'fhorbair muid an bonneagar atá freagrach as saolré an fhreastalaí.

Tús an turais

Ag tús ár dturas, bhí cuma mar seo ar ár gcruach teicneolaíochta:
OS CentOS 7
Rialaitheoirí Fearainn FreeIPA
Uathoibriú - Freagrach(+Túr), Gréasaí

Bhí sé seo ar fad lonnaithe i 3 réimse, scaipthe thar roinnt ionad sonraí. I lárionad sonraí amháin tá córais oifige agus láithreáin tástála, sa chuid eile tá PROD.

Bhí cuma mar seo ar chruthú freastalaithe ag pointe amháin:

Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Sa teimpléad VM, tá CentOS íosta agus tá an t-íosmhéid riachtanach cosúil leis an gceart /etc/resolv.conf, tagann an chuid eile trí Ansible.

CMDB - Excel.

Má tá an freastalaí fisiciúil, ansin in ionad an meaisín fíorúil a chóipeáil, suiteáladh an OS air ag baint úsáide as Cobbler - cuirtear seoltaí MAC an fhreastalaí sprice leis an config Cobbler, faigheann an freastalaí seoladh IP trí DHCP, agus ansin an OS cuirtear.

Ar dtús rinneamar iarracht fiú bainistíocht cumraíochta de chineál éigin a dhéanamh in Cobbler. Ach le himeacht ama, thosaigh sé seo ag tabhairt fadhbanna maidir le hiniompartacht na bhfoirmíochtaí chuig ionaid sonraí eile agus chuig an gcód Ansible chun VManna a ullmhú.

Ag an am sin, bhraith go leor againn go raibh Ansible mar shíneadh áisiúil ar Bash agus níor thugamar barr ar dhearaí ag baint úsáide as blaosc agus sed. Bashsible Foriomlán. Mar thoradh air seo ar deireadh thiar mura n-oibreodh an leabhar súgartha ar an bhfreastalaí ar chúis éigin, bhí sé níos éasca an freastalaí a scriosadh, an leabhar súgartha a shocrú agus a rith arís. Go bunúsach ní raibh aon leagan ar scripteanna, ní raibh aon iniomparthacht cumraíochtaí.

Mar shampla, bhíomar ag iarraidh roinnt cumraíochta a athrú ar gach freastalaí:

  1. Athraímid an chumraíocht ar fhreastalaithe reatha sa deighleog loighciúil/ionad sonraí. Uaireanta ní in aon lá amháin - ní cheadaíonn ceanglais inrochtaineachta agus dlí líon mór gach athrú a chur i bhfeidhm ag an am céanna. Agus d'fhéadfadh roinnt athruithe a bheith millteach agus éilíonn siad rud éigin a atosú - ó sheirbhísí chuig an OS féin.
  2. É a shocrú in Ansible
  3. Déanaimid é a dheisiú in Cobbler
  4. Déan N uair arís do gach mír loighciúil/ionad sonraí

Chun go n-éireodh leis na hathruithe go léir go réidh, bhí sé riachtanach go leor fachtóirí a chur san áireamh, agus tarlaíonn athruithe i gcónaí.

  • Cód ansible a athfhachtóiriú, comhaid cumraíochta
  • Dea-chleachtais inmheánacha a athrú
  • Athruithe bunaithe ar thorthaí anailíse ar theagmhais/thimpistí
  • Caighdeáin slándála a athrú, inmheánach agus seachtrach. Mar shampla, déantar PCI DSS a nuashonrú le ceanglais nua gach bliain

Fás bonneagair agus tús an turais

Tháinig méadú ar líon na bhfreastalaithe/fearainn loighciúil/ionaid sonraí, agus leo sin líon na n-earráidí sna cumraíochtaí. Ag pointe éigin, tháinig muid ar thrí threoir inar gá bainistíocht cumraíochta a fhorbairt:

  1. Uathoibriú. Ba cheart earráid dhaonna in oibríochtaí athchleachtacha a sheachaint oiread agus is féidir.
  2. Atrialltacht. Tá sé i bhfad níos éasca bonneagar a bhainistiú nuair atá sé intuartha. Ba cheart go mbeadh cumraíocht na bhfreastalaithe agus na n-uirlisí lena n-ullmhú mar an gcéanna i ngach áit. Tá sé seo tábhachtach freisin d'fhoirne táirgí - tar éis tástála, ní mór an t-iarratas a ráthú go dtiocfaidh deireadh leis i dtimpeallacht táirgthe atá cumraithe mar an gcéanna leis an timpeallacht tástála.
  3. Simplíocht agus trédhearcacht athruithe a dhéanamh ar bhainistíocht cumraíochta.

Tá sé fós le cúpla uirlisí a chur leis.

Roghnaigh muid GitLab CE mar ár stór cód, go háirithe mar gheall ar a modúil CI/CD ionsuite.

Cruinneachán rúin - cruinneachán Hashicorp, lena n-áirítear. don API iontach.

Cumraíochtaí a thástáil agus róil infhéideartha – Molecule+Testinfra. Téann tástálacha i bhfad níos tapúla má nascann tú le miotóg insible. Ag an am céanna, thosaigh muid ag scríobh ár CMDB agus orchestrator féin le haghaidh imscaradh uathoibríoch (sa phictiúr thuas Cobbler), ach is scéal go hiomlán difriúil é seo, a inseoidh mo chomhghleacaí agus príomhfhorbróir na gcóras seo sa todhchaí.

Ár rogha:

Móilín + Testinfra
Insible + Túr + AWX
World of Servers + DITNET (Féinfhorbairt)
Greusóir
Rádala Gitlab + GitLab
Cruinneachán Hashicorp

Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Dála an scéil, faoi róil insible. Ar dtús ní raibh ach ceann amháin ann, ach tar éis roinnt athfhachtóirí bhí 17 acu. Roinneamar na róil de réir feidhmiúlacht - líonra, logáil, pacáistí, crua-earraí, móilín etc. Go ginearálta, leanamar an straitéis thíos. Ní áitíonn mé gurb é seo an t-aon fhírinne, ach d'oibrigh sé dúinn.

  • Is olc an rud é freastalaithe a chóipeáil ón “íomhá órga”!Is é an príomh-mhíbhuntáiste nach bhfuil a fhios agat go díreach cén staid ina bhfuil na híomhánna anois, agus go dtiocfaidh gach athrú ar gach íomhá i ngach feirm fhíorúil.
  • Bain úsáid as comhaid chumraíochta réamhshocraithe chomh beag agus is féidir agus aontaigh le ranna eile go bhfuil tú freagrach as na príomhchomhaid chórais, mar shampla:
    1. Fág /etc/sysctl.conf folamh, níor cheart go mbeadh na socruithe ach i /etc/sysctl.d/. Do réamhshocrú i gcomhad amháin, saincheaptha don fheidhmchlár i gceann eile.
    2. Bain úsáid as comhaid sáraithe chun aonaid chóras a chur in eagar.
  • Teimpléad na cumraíochtaí go léir agus cuir san áireamh iad ina n-iomláine más féidir, gan aon sed nó a analógacha i leabhair súgartha
  • Cód an chórais bainistíochta cumraíochta a athchur:
    1. Déan tascanna a bhriseadh síos ina n-aonáin loighciúla agus athscríobh an monolith ina róil
    2. Bain úsáid as linters! Ansible-lint, yaml-lint, etc
    3. Athraigh do chur chuige! Uimh bashsible. Is gá cur síos a dhéanamh ar staid an chórais
  • I gcás gach róil Insible ní mór duit tástálacha a scríobh i móilín agus tuairiscí a ghiniúint uair amháin sa lá.
  • Is é ár gcás, tar éis na tástálacha a ullmhú (a bhfuil níos mó ná 100 acu), fuarthas thart ar 70000 earráid. Thóg sé roinnt míonna é a shocrú.Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Ár gcur i bhfeidhm

Mar sin, bhí na róil inmhéanta réidh, templáilte agus seiceáladh le lintéir. Agus ardaítear fiú gits i ngach áit. Ach d'fhan an cheist maidir le seachadadh cód iontaofa chuig codanna éagsúla oscailte. Shocraigh muid sioncrónú le scripteanna. Breathnaíonn mar sin:

Ó “thosú” go dtí na mílte freastalaithe i dosaen ionad sonraí. Conas a Chaitheamar Fás Bonneagar Linux

Tar éis don athrú teacht, seoltar CI, cruthaítear freastalaí tástála, déantar róil a rolladh amach, agus déanann an móilín tástáil orthu. Má tá gach rud ceart go leor, téann an cód chuig an brainse prod. Ach ní chuirimid cód nua i bhfeidhm ar na freastalaithe atá ann cheana féin sa mheaisín. Is cineál stopalláin é seo atá riachtanach le go mbeidh ár gcórais ar fáil go hard. Agus nuair a éiríonn an bonneagar ollmhór, tagann dlí na n-uimhreacha móra i bhfeidhm - fiú má tá tú cinnte go bhfuil an t-athrú neamhdhíobhálach, is féidir iarmhairtí dochracha a bheith mar thoradh air.

Tá go leor roghanna ann freisin chun freastalaithe a chruthú. Chríochnaíomar ag roghnú scripteanna Python saincheaptha. Agus do CI freagrach:

- name: create1.yml - Create a VM from a template
  vmware_guest:
    hostname: "{{datacenter}}".domain.ru
    username: "{{ username_vc }}"
    password: "{{ password_vc }}"
    validate_certs: no
    cluster: "{{cluster}}"
    datacenter: "{{datacenter}}"
    name: "{{ name }}"
    state: poweredon
    folder: "/{{folder}}"
    template: "{{template}}"
    customization:
      hostname: "{{ name }}"
      domain: domain.ru
      dns_servers:
        - "{{ ipa1_dns }}"
        - "{{ ipa2_dns }}"
    networks:
      - name: "{{ network }}"
        type: static
        ip: "{{ip}}"
        netmask: "{{netmask}}"
        gateway: "{{gateway}}"
        wake_on_lan: True
        start_connected: True
        allow_guest_control: True
    wait_for_ip_address: yes
    disk:
      - size_gb: 1
        type: thin
        datastore: "{{datastore}}"
      - size_gb: 20
        type: thin
        datastore: "{{datastore}}"

Seo mar a tháinig muid chuige, leanann an córas ag maireachtáil agus ag forbairt.

  • 17 Róil inchoigeartaithe chun an freastalaí a shocrú. Tá gach ceann de na róil deartha chun tasc loighciúil ar leith a réiteach (logáil, iniúchadh, údarú úsáideora, monatóireacht, etc.).
  • Tástáil róil. Móilín + TestInfra.
  • Forbairt féin: CMDB + Ceolfhoireann.
  • Is é an t-am cruthaithe freastalaí ná ~30 nóiméad, uathoibrithe agus beagnach neamhspleách ar an scuaine tascanna.
  • An stát céanna/ainmniú an bhonneagair i ngach deighleog - leabhair súgartha, stórtha, eilimintí fíorúlaithe.
  • Seiceáil laethúil ar stádas an fhreastalaí agus giniúint tuairiscí ar neamhréireachtaí leis an gcaighdeán.

Tá súil agam go mbeidh mo scéal úsáideach dóibh siúd atá ag tús a dturas. Cén chairn uathoibrithe a úsáideann tú?

Foinse: will.com