Virtuaalikoneen luominen on tylsää. Satojen luominen vie aikaa. cloud-init avulla voit automatisoida virtuaalikoneen luomisen Microsoft Azuressa.
Jos olet koskaan asentanut virtuaalikoneen, tiedät kuinka se toimii. Napsautat täällä ja siellä, napsautat vielä lisää, ja lopulta järjestelmä on asennettu. Mutta sitten sinun on silti asennettava ohjelmisto ja määritettävä VM haluamallasi tavalla.
Kuvittele nyt, että haluat määrittää satoja virtuaalikoneita. Asennuksen läpi napsauttaminen ei ole niin tehokasta. Sen sijaan sinun on automatisoitava prosessi mahdollisimman paljon, ja siinä tulee pilvi-init mukaan.
Katsotaanpa, kuinka voit automatisoida käyttöjärjestelmän asennuksen ja virtuaalikoneen määrityksen pilvi-initillä Microsoft Azuressa.
Miksi käyttää pilvi-initiä virtuaalikoneen luomisen automatisointiin?
cloud-init on tehokas käyttöönottoautomaatiotyökalu, jonka Canonical, Ubuntun takana oleva yritys, kehittää.
Pilvi-initillä voit asentaa ja ottaa käyttöön Linux-käyttöjärjestelmiä ja määrittää muita virtuaalikoneen ominaisuuksia. Pilvi-initillä voit esimerkiksi määrittää käyttäjätilejä, asentaa ja konfiguroida ohjelmistoja, lisätä SSH-avaimia, nimeät sen.
Tällä hetkellä suurin osa pilvipalveluntarjoajista, kuten Azure, Linode ja Amazon Web Services (AWS), tukevat pilvipalvelua.
Vaikka pilvi-init aloitti Ubuntussa, se tukee nyt kaikkia tärkeimpiä Linux-distroja, kuten openSUSE, Debian, Red Hat Enterprise Linux (RHEL) jne.
Ohjelmistojen käyttöönoton lisäksi pilvessä voit käyttää pilvi-initiä myös ohjelmistojen määrittämiseen ja asentamiseen on-prem-palvelimiin tai virtuaaliympäristöihin, kuten VirtualBox, KVM ja VMware.
Käytämme Microsoft Azure -pilvialustaa automatisoidaksemme Ubuntu-palvelimen käyttöönoton pilvi-initillä.
Vaihe 1: Luo pilvi-init-skripti
cloud-init-skriptit käyttävät moduuleja järjestelmän eri osien määrittämiseen. Käytät esimerkiksi käyttäjiä moduuli, jolla voit määrittää käyttäjätiedot ja tilit, ja lankasuoja moduuli WireGuardin konfigurointiin jne. On olemassa tonnia muita moduuleja, joita voit käyttää heti.
Luodaan pilvi-init-skripti automatisoidaksesi useimmat asiat, jotka määrität uutta virtuaalikoneen määrittäessäsi.
Luomme käyttäjän nimeltä "mwiza" ja annamme sille salasanan. Käytän yksinkertaisuuden vuoksi pelkkää tekstisalasanaa, mutta voit halutessasi salata sen. Lisäksi lisää käyttäjän SSH-avain valtuutettuihin avaimiin. Tämän avulla voit poistaa SSH-salasanan kirjautumiset käytöstä myöhemmin turvallisuuden parantamiseksi.
Uuden käyttäjän luomisen lisäksi komentosarjan tulee tehdä seuraavaa:
- Tiedoston kirjoittaminen: Luo yksinkertainen tiedosto ja kirjoita siihen sisältöä käyttämällä kirjoitus_tiedostot moduuli. Tiedosto sijoitetaan kotihakemistoon. Voit käyttää samoja käsitteitä monimutkaisempien tiedostojen luomiseen tulevaisuudessa.
- Ajokomennot: Suoritamme yksinkertaisia komentoja UFW-palomuurin määrittämiseen, mutta se voi olla mikä tahansa muu Linux-komento. Hyödynnä runcmd moduuli minkä tahansa valitsemasi komennon suorittamiseen; se on samanlainen kuin Linuxin komentojen suorittaminen suorittaa Bash-skriptejä.
- Kielialueiden määrittäminen: Tämä asettaa haluamasi maa-asetukset, kuten näppäimistöasettelun, ensisijaisen kielen, aikavyöhykkeen jne.
- Asenna paketit: Käytä suosikkipakettienhallintaasi pakettien asentamiseen järjestelmääsi. Esimerkiksi Debian-pohjaisissa järjestelmissä voit käyttää APT: tä.
Nämä ovat vain muutamia moduuleista, joita voit käyttää cloud-initistä; siellä on useita muita moduuleja kaikenlaisten asioiden automatisoimiseksi.
Tässä on täydellinen pilvi-init-skripti uuden käyttäjätilin määrittämiseksi. Muista vaihtaa SSH-avain oikeaan. Voit myös vaihtaa käyttäjätunnusta ja muita tietoja.
vim: syntaksi=yaml
# Lisää järjestelmän käyttäjät tähän
käyttäjät:
- nimi: mwiza
ryhmät: käyttäjät, sudo
kuori: /bin/bash
Gecos: mwiza
plain_text_passwd: Live-laugh-love12345G123
lock_passwd: false
ssh_authorized_keys:
- ssh-ed25519 BHSDSDS3NzaC1sdfSDGSDSDJ1KSDB: PWELJWEEWeKBrkXWbLJBs; ldfkagfafkC6li71Ra6i+NKkajdfi [email protected]# Asenna, päivitä ja päivitä paketteja
package_upgrade: tosi
package_update: tosi
package_reboot_if_require: truepaketit:
- traceroute
- verkkotyökalut
- fail2ban# Aseta alueet
alue: en_UK
aikavyöhyke: Etc/UTC
näppäimistö:
ulkoasu: nbwrite_files:
- polku: /etc/salt/minion.d/master_ip_port.conf
sisältö: |
mestari: suola
master_port: 4506
julkaisuportti: 4505
- polku: /home/mwiza/cloud-init.txt
sisältö: |
luonut cloud-init in taivaansininen# Bash-komentojen suorittaminen ohjelmistojen ja palveluiden määrittämiseksi
runcmd:
- ufw käytössä
- ufw salli ssh
- ufw salli 80
- systemctl enable ufw
# Sammuta VM, kun alustus on viimeistelty
sammutus: virta pois
Pilvi-init-skripti käyttää YAML: ää, joten varmista, että sisennys on oikein, muuten se ei toimi odotetulla tavalla.
Vaihe 2: Luo virtuaalikoneresurssi
Seuraava vaihe on luoda virtuaalikoneen tarvittava resurssi Azuressa. Kirjaudu Azureen, jos sinulla on jo tili, tai luo ilmainen kokeilutili siirtymällä osoitteeseen azure.microsoft.com.
Napsauta Azure-portaalin kotisivulla Luo resurssi -painiketta. Valitse suosituimpien Azure-palvelujen luettelosta Virtuaalikone.
Seuraavalla sivulla on tietoja VM-resurssien, kuten kiintolevyn, verkkojen jne., luomisesta.
Anna virtuaalikoneellesi merkityksellinen nimi ja valitse käyttöönottoalue. Luo myös resurssiryhmä virtuaalikoneellesi tai käytä olemassa olevaa ryhmää.
Alla Todennus tyyppi, valitse Salasana vaihtoehto ja anna käyttäjätunnuksesi ja vahva salasanasi.
Kun olet täyttänyt kaikki tämän sivun kentät, tietojesi pitäisi olla seuraavanlaisia.
Vaihe 3: Lisää pilvi-init-skripti
Napsauta seuraavaksi Pitkälle kehittynyt -välilehti lisätäksesi pilvi-init-skriptin. Kopioi ja liitä pilvi-init-skripti ensimmäisestä vaiheesta mukautettuun tietokenttään.
Napsauta lopuksi Tarkista + luo -painiketta. Jos kaikki on kunnossa, testi menee läpi. Muussa tapauksessa Azure VM: n luoja opastaa sinua tehtävissä korjauksissa.
Vaihe 4: kirjautuminen virtuaalikoneeseen
Käytä VM-yleistietoja saadaksesi virtuaalikoneesi julkisen IP-osoitteen ja kirjaudu sisään SSH: n kautta. Jos käytit oikeaa SSH-avainta, järjestelmä ei kehota sinua antamaan käyttäjän salasanaa.
Kun olet kirjautunut sisään, voit tarkistaa, että tiedostot, jotka haluat luoda skriptin avulla, ovat siellä. Myös, etsi asennettuja paketteja APT: n kanssa ja tarkista, että palomuuri on määritetty oikein käyttämällä sudo ufw -tila komento.
cloud-init kirjaa myös tärkeitä tietoja /var/log/cloud-init.log tiedosto. Se sisältää monisanaiset viestit kaikista tapahtumista, jotka tapahtuivat pilvikäynnistyksen alustuksen aikana. Voit tarkistaa tämän tiedoston cat-komennolla seuraavasti:
cat /var/log/cloud-init.log
Automatisoi virtuaalikoneen luominen pilvi-initillä
cloud-init on tehokas työkalu, jonka avulla voit automatisoida Linuxin asennuksen ja asennuksen. Voit käyttää sitä pilvessä ja on-prem-palvelimilla. Halusitpa vain automatisoida virtuaalikoneen käyttöönoton tai ottaa Linux-palvelimia käyttöön suuressa mittakaavassa, pilvi-init on loistava valinta.
Aiheeseen liittyvä huomautus: suojaa aina pilvipohjaisten virtuaalikoneiden SSH-kirjautumisesi turvallisuusrikkomusten välttämiseksi.