Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Ichi ndi cholembedwa cha mawu DevopsConf 2019-10-01 ΠΈ SPbLUG 2019-09-25.

Iyi ndi nkhani ya pulojekiti yomwe idagwiritsa ntchito kasamalidwe kodzilemba nokha komanso chifukwa chake kusamukira ku Ansible kudatenga miyezi 18.

Tsiku Nambala -Π₯Π₯Π₯: Zisanayambe

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Poyambirira, zomangazo zinali ndi makamu ambiri osiyana omwe akuthamanga ndi Hyper-V. Kupanga makina enieni kumafuna njira zambiri: kuyika ma disks pamalo oyenera, kulembetsa DNS, kusunga DHCP, kuyika kasinthidwe ka VM mu git repository. Njirayi idasinthidwa pang'ono, koma mwachitsanzo, ma VM adagawidwa pakati pa olandila ndi manja. Koma, mwachitsanzo, opanga amatha kukonza kasinthidwe ka VM mu git ndikuigwiritsa ntchito poyambitsanso VM.

Custom Configuration Management Solution

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Lingaliro loyambirira, ndikukayikira, lidapangidwa ngati IaC: ma VM ambiri opanda malire omwe amatsitsimutsanso dziko lawo ku zero atayambiranso. Kodi kasamalidwe ka VM anali chiyani? Mwadongosolo zikuwoneka zophweka:

  1. MAC yokhazikika idakhomeredwa pa VM.
  2. ISO yokhala ndi CoreOS ndi boot disk zidalumikizidwa ku VM.
  3. CoreOS imakhazikitsa script yosinthira mwa kutsitsa kuchokera pa seva ya WEB kutengera IP yake.
  4. Zolemba zimatsitsa kasinthidwe ka VM kudzera pa SCP kutengera adilesi ya IP.
  5. Chovala chamafayilo a systemd unit ndi nsalu ya bash scripts zimayambitsidwa.

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Njira iyi inali ndi zovuta zambiri zowonekera:

  1. CoreOS ISO yachotsedwa ntchito.
  2. Zochita zambiri zodziwikiratu komanso zamatsenga mukasamuka / kupanga ma VM.
  3. Kuvuta ndi kukonzanso komanso pamene mtundu wina wa mapulogalamu ukufunika. Zosangalatsa kwambiri ndi ma module a kernel.
  4. Ma VM sanapezeke popanda deta, i.e. Ma VM adawonekera ndi diski yokhala ndi data yowonjezera ya ogwiritsa ntchito.
  5. Winawake amangokhalira kusokoneza zodalira za systemd ndipo CoreOS imaundana poyambiranso. Zinali zovuta kugwira izi pogwiritsa ntchito zida zomwe zilipo mu CoreOS.
  6. Kasamalidwe ka zinsinsi.
  7. Panalibe CM. Panali zosintha za bash ndi YML za CoreOS.

Kuti mugwiritse ntchito kasinthidwe ka VM, muyenera kuyiyambitsanso, koma mwina siyiyambiranso. Zikuwoneka ngati vuto lodziwikiratu, koma palibe ma disks osalekeza - palibe malo osungira zipika. Chabwino, chabwino, tiyeni tiyese kuwonjezera njira yotsitsa kernel kuti zipika zitumizidwe. Koma ayi, ndizovuta bwanji.

Tsiku #0: Zindikirani vuto

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Zinali zokhazikika zachitukuko: jenkins, malo oyesera, kuyang'anira, kaundula. CoreOS idapangidwa kuti izikhala ndi magulu a k8s, i.e. vuto linali momwe CoreOS inagwiritsidwira ntchito. Chinthu choyamba chinali kusankha stack. Tinakhazikika pa:

  1. CentOS monga kugawa maziko, chifukwa Uku ndiye kugawidwa kwapafupi kwambiri ndi malo opanga.
  2. Amatha kwa kasinthidwe kasamalidwe, chifukwa panali kufufuza kwakukulu pa izo.
  3. Jenkins monga chimango cha automating njira zomwe zilipo, chifukwa wakhala akugwiritsidwa ntchito mwakhama pazochitika zachitukuko
  4. Hyper-V ngati nsanja ya virtualization. Pali zifukwa zingapo zomwe zimapitilira nkhaniyo, koma mwachidule - sitingagwiritse ntchito mitambo, tiyenera kugwiritsa ntchito zida zathu.

Tsiku la 30: Kukonza mapangano omwe alipo - Mapangano monga Code

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Muluwo utaonekera, kukonzekera kusamuka kunayamba. Kukonza mapangano omwe alipo mu mawonekedwe a code (Mapangano ngati Code!). Kusintha ntchito yamanja -> makina -> zochita zokha.

1. Konzani ma VM

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Ansible amachita ntchito yabwino pa izi. Ndikuyenda pang'ono kwa thupi mutha kuwongolera masanjidwe a VM:

  1. Pangani git repository.
  2. Timayika mndandanda wa ma VM muzowerengera, masinthidwe m'mabuku amasewera ndi maudindo.
  3. Tikukhazikitsa kapolo wapadera wa jenkins komwe mutha kuyendetsa Ansible.
  4. Timapanga ntchito ndikukonza Jenkins.

Njira yoyamba ndi yokonzeka. Mapangano akhazikika.

2. Pangani VM yatsopano

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Chilichonse apa sichinali chothandiza. Sikoyenera kupanga ma VM pa Hyper-V kuchokera ku Linux. Chimodzi mwa zoyesayesa kupanga makina awa chinali:

  1. Ansbile imalumikiza kudzera pa WinRM ku mawindo a mawindo.
  2. Ansible amayendetsa script ya powershell.
  3. Powershell script imapanga VM yatsopano.
  4. Pogwiritsa ntchito Hyper-V/ScVMM, popanga VM mu OS ya alendo, dzina la alendo limakonzedwa.
  5. Mukakonza kubwereketsa kwa DHCP, VM imatumiza dzina lake.
  6. Kuphatikiza kwa ddns & dhcp kumbali ya Domain Controller kumakonza mbiri ya DNS.
  7. Mutha kuwonjezera VM kuzinthu zanu ndikuzikonza ndi Ansible.

3.Pangani template ya VM

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Sanapange kalikonse apa - adatenga chonyamula.

  1. Onjezani packer, kickstart config ku git repository.
  2. Kukhazikitsa kapolo wapadera wa jenkins wokhala ndi hyper-v ndi Packer.
  3. Timapanga ntchito ndikukonza Jenkins.

Momwe ulalo uwu umagwirira ntchito:

  1. Packer amapanga VM yopanda kanthu ndikutenga ISO.
  2. Maboti a VM, Packer amalowetsa lamulo mu bootloader kuti agwiritse ntchito fayilo yathu ya kickstart kuchokera pa floppy disk kapena http.
  3. Anaconda imayambitsidwa ndi kasinthidwe kwathu, kasinthidwe koyambirira kwa OS kwachitika.
  4. Packer amadikirira kuti VM ipezeke.
  5. Packer mkati mwa VM imayenda bwino mumachitidwe akomweko.
  6. Ansible amagwiritsa ntchito chimodzimodzi momwe amagwirira ntchito mu gawo #1.
  7. Packer amatumiza template ya VM.

Tsiku #75: Yambitsaninso mgwirizano popanda kuswa = Yesani ansible + Testkitchen

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Kujambula maumboni mu code sikungakhale kokwanira. Kupatula apo, ngati mu ins ndi kunja kwa ndondomeko mukufuna kusintha chinachake, mukhoza kuswa chinachake. Chifukwa chake, pankhani ya zomangamanga, kuyesa kwazomwezi kumawoneka. Kuti tigwirizanitse chidziwitso mkati mwa gulu, tinayamba kuyesa maudindo Ansible. sindidzapita mozama chifukwa... pali nkhani yofotokoza zomwe zidachitika panthawiyo Ndiyeseni ngati mungathe kapena opanga mapulogalamu a YML amalota kuyesa Ansible?(spoiler iyi sinali mtundu womaliza ndipo pambuyo pake zonse zidakhala zovuta Momwe mungayambitsire Ansible, refactor polojekitiyi mu chaka osati misala).

Tsiku #130: Mwina CentOS + yovomerezeka siyofunika? mwina openshift?

Tiyenera kumvetsetsa kuti njira yokhazikitsira zomangamanga siinali yokhayo komanso panali zinthu zina zapambali. Mwachitsanzo, pempho lidabwera kuti titsegule pulogalamu yathu mu openshift ndipo izi zidayambitsa kafukufuku wopitilira sabata imodzi Timakhazikitsa pulogalamuyi ku Openshift ndikuyerekeza zida zomwe zilipo zomwe zinachedwetsa kusuntha. Zotsatira zake zidapezeka kuti openshift simakwaniritsa zosowa zonse; mumafunika zida zenizeni, kapena kuthekera kosewera ndi kernel.

Tsiku #170: Openshift siyoyenera, tiyeni titenge mwayi ndi Windows Azure Pack?

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Hyper-V siyochezeka kwambiri, SCVMM siyipangitsa kuti ikhale yabwinoko. Koma pali chinthu chonga Windows Azure Pack, chomwe ndi chowonjezera ku SCVMM ndikutsanzira Azure. Koma zenizeni, mankhwalawa amawoneka osiyidwa: zolembazo zasweka maulalo ndipo ndizochepa kwambiri. Koma monga gawo la kafukufuku wa zosankha zofewetsa moyo wamtambo wathu, adayang'ananso.

Tsiku #250: Windows Azure Pack si yabwino kwambiri. Tikukhalabe pa SCVMM

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Windows Azure Pack imawoneka yosangalatsa, koma idasankhidwa kuti isabweretse WAP ndi zovuta zake mudongosolo chifukwa cha zinthu zosafunikira ndikukhala ndi SCVMM.

Tsiku #360: Kudya njovu chidutswa ndi chidutswa

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Patangotha ​​chaka chimodzi nsanja yosamukirako inali itakonzeka ndipo ntchito yosuntha inayamba. Pachifukwa ichi, ntchito ya SMART idakhazikitsidwa. Tidayang'ana ma VM onse ndikuyamba kulingalira masinthidwe amodzi ndi amodzi, kufotokoza mu Ansible, ndikuphimba ndi mayeso.

Tsiku #450: Ndi dongosolo lanji lomwe mudapeza?

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Njira yokhayo siyosangalatsa. NdizozoloΕ΅era, zikhoza kuzindikirika kuti zambiri zomwe zimapangidwira zinali zosavuta kapena isomorphic ndipo malinga ndi mfundo ya Pareto, 80% ya ma VM amafunikira 20% ya nthawiyo. Mwa mfundo yomweyi, 80% ya nthawiyo idagwiritsidwa ntchito pokonzekera kusuntha ndipo 20% yokha paulendo wokha.

Tsiku #540: Chomaliza

Zoyenera: Kusamuka kwa kasinthidwe ka 120 VM kuchokera ku CoreOS kupita ku CentOS m'miyezi 18

Kodi chinachitika ndi chiyani m'miyezi 18?

  1. Mapanganowo adakhala code.
  2. Ntchito yamanja -> Makina -> Zodzichitira.

Source: www.habr.com

Kuwonjezera ndemanga