Infrastruktúra-automatizálási eszközök használata virtuális gépekkel az Azure-ban

A következőkre vonatkozik: ✔️ Linux rendszerű virtuális gépek ✔️ Windows rendszerű virtuális gépek Rugalmas méretezési ✔️ csoportok ✔️ Egységes méretezési csoportok

Az Azure-beli virtuális gépek (VM-ek) egységes, nagy léptékű létrehozásához és kezeléséhez általában valamilyen automatizálási módra van szükség. Számos eszköz és megoldás teszi lehetővé az Azure-infrastruktúra teljes üzembe helyezésének és felügyeleti életciklusának automatizálását. Ez a cikk bemutatja az Azure-ban használható infrastruktúra-automatizálási eszközöket. Ezek az eszközök gyakran illeszkednek az alábbi módszerek egyikéhez:

Terraform

A Terraform egy automatizálási eszköz, amellyel egy teljes Azure-infrastruktúrát definiálhat és hozhat létre egyetlen sablonformátumnyelvvel – a HashiCorp konfigurációs nyelvével (HCL). A Terraform használatával olyan sablonokat definiálhat, amelyek automatizálják a hálózati, tárolási és virtuálisgép-erőforrások egy adott alkalmazásmegoldáshoz való létrehozását. Meglévő Terraform-sablonjait más platformokhoz is használhatja az Azure-ral a konzisztencia biztosításához és az infrastruktúra üzembe helyezésének egyszerűsítéséhez anélkül, hogy Azure Resource Manager-sablonná kellene konvertálnia.

Az alábbiak végrehajtásának módját ismerheti meg:

Azure Automation

Az Azure Automation runbookokkal dolgoz fel feladatokat a megcélzott virtuális gépeken. Az Azure Automation a meglévő virtuális gépek kezelésére szolgál, nem pedig infrastruktúra létrehozására. Az Azure Automation linuxos és Windows rendszerű virtuális gépeken, valamint helyszíni virtuális vagy fizikai gépeken is futtatható hibrid runbook-feldolgozóval. A runbookok tárolhatók egy forrásvezérlő adattárban, például a GitHubon. Ezek a runbookok ezután manuálisan vagy meghatározott ütemezés szerint futtathatók.

Az Azure Automation egy Desired State Configuration (DSC) szolgáltatást is biztosít, amely lehetővé teszi, hogy definíciókat hozzon létre az adott virtuális gépek konfigurálásának módjához. A DSC ezután biztosítja a szükséges konfiguráció alkalmazását, és a virtuális gép konzisztens marad. Az Azure Automation DSC Windows és Linux rendszerű gépeken is fut.

Az alábbiak végrehajtásának módját ismerheti meg:

Azure DevOps Services

Az Azure DevOps Services olyan eszközök készlete, amelyek segítenek a kód megosztásában és nyomon követésében, az automatizált buildek használatában, valamint egy teljes folyamatos integrációs és fejlesztési (CI/CD) folyamat létrehozásában. Az Azure DevOps Services integrálható a Visual Studióval és más szerkesztőkkel a használat egyszerűsítése érdekében. Az Azure DevOps Services azure-beli virtuális gépeket is létrehozhat és konfigurálhat, majd kódot helyezhet üzembe rajtuk.

További információk:

Azure Resource Manager-sablon

Az Azure Resource Manager az Azure üzembe helyezési és felügyeleti szolgáltatása. Ez egy felügyeleti réteget biztosít, amely lehetővé teszi erőforrások létrehozását, frissítését és törlését az Azure-előfizetésben. Az üzembe helyezés után az erőforrások biztonságossá tételéhez és rendszerezéséhez olyan felügyeleti funkciókat használhat, mint a hozzáférés-vezérlés, a zárolások és a címkék.

Az alábbiak végrehajtásának módját ismerheti meg:

Bicep

Bicep is a domain-specific language (DSL) that uses declarative syntax to deploy Azure resources. Egy Bicep-fájlban definiálja az Azure-ban üzembe helyezni kívánt infrastruktúrát, majd a fejlesztési életciklus során ezt a fájlt használja az infrastruktúra ismételt üzembe helyezéséhez. Az erőforrások üzembe helyezése konzisztens módon működik.

Ismerkedés a rövid útmutatóval.

Cloud-init

A cloud-init egy széles körben használt módszer a Linux rendszerű virtuális gépek első indításkor való testreszabásához. A cloud-init használatával csomagokat telepíthet és fájlokat írhat, vagy beállíthatja a felhasználókat és a biztonságot. Mivel a rendszer meghívja a cloud-initet a kezdeti rendszerindítási folyamat során, nincs szükség további lépésekre vagy szükséges ügynökökre a konfiguráció alkalmazásához. A fájlok megfelelő formázásáról #cloud-config további információt a cloud-init dokumentációs webhelyén talál. #cloud-config A fájlok a base64-ben kódolt szövegfájlok.

A cloud-init különböző disztribúciókon is működik. Például nem kell az apt-get install vagy a yum install használatával telepítenie a csomagokat. Ehelyett megadhatja a telepítendő csomagok listáját. A cloud-init automatikusan a natív csomagkezelő eszközt használja a kiválasztott disztribúcióhoz.

Aktívan együttműködünk a támogatott Linux disztribúciós partnerekkel annak érdekében, hogy a cloud-init-kompatibilis rendszerképek elérhetők legyenek az Azure Marketplace-en. Ezek a rendszerképek zökkenőmentesen teszik lehetővé a felhőbeli üzembe helyezéseket és konfigurációkat a virtuális gépekkel és a virtuálisgép-méretezési csoportokkal. További információ az Azure-beli cloud-init szolgáltatásról:

PowerShell DSC

A PowerShell Desired State Configuration (DSC) egy felügyeleti platform a célgépek konfigurációjának meghatározásához. A DSC Linuxon is használható az Open Management Infrastructure (OMI) kiszolgálón keresztül.

A DSC-konfigurációk határozzák meg, hogy mit telepíthet egy gépen, és hogyan konfigurálhatja a gazdagépet. A Local Configuration Manager (LCM) motor minden célcsomóponton fut, amely leküldéses konfigurációk alapján dolgozza fel a kért műveleteket. A lekéréses kiszolgáló egy olyan webszolgáltatás, amely egy központi gazdagépen fut a DSC-konfigurációk és a kapcsolódó erőforrások tárolásához. A lekéréses kiszolgáló minden cél gazdagépen kommunikál az LCM-motorral, hogy biztosítsa a szükséges konfigurációkat és jelentést a megfelelőségről.

Az alábbiak végrehajtásának módját ismerheti meg:

Azure egyéni szkriptek futtatására szolgáló bővítmény

Az Azure Custom Script Extension for Linux vagy Windows letölti és végrehajtja a szkripteket az Azure-beli virtuális gépeken. A bővítményt virtuális gép létrehozásakor vagy a virtuális gép használatbavétele után bármikor használhatja.

A szkriptek letölthetők az Azure Storage-ból vagy bármely nyilvános helyről, például egy GitHub-adattárból. Az egyéni szkriptbővítménnyel szkripteket írhat a forrás virtuális gépen futó bármely nyelven. Ezek a szkriptek alkalmazások telepítéséhez vagy a virtuális gép igény szerinti konfigurálásához használhatók. A hitelesítő adatok védelme érdekében a bizalmas információk, például a jelszavak védett konfigurációban tárolhatók. Ezek a hitelesítő adatok csak a virtuális gépen belül lesznek visszafejtve.

Az alábbiak végrehajtásának módját ismerheti meg:

Ansible

Az Ansible egy automatizálási motor a konfigurációkezeléshez, a virtuális gépek létrehozásához vagy az alkalmazások üzembe helyezéséhez. Az Ansible egy ügynök nélküli modellt használ, amely általában SSH-kulcsokkal rendelkezik a célgépek hitelesítéséhez és kezeléséhez. A konfigurációs feladatok forgatókönyvekben vannak definiálva, és több Ansible-modul is rendelkezésre áll adott feladatok elvégzéséhez. További információt az Ansible működése című témakörben talál.

Az alábbiak végrehajtásának módját ismerheti meg:

Chef

A Chef egy automatizálási platform, amely segít meghatározni az infrastruktúra konfigurálását, üzembe helyezését és kezelését. Egyes összetevők közé tartozik a Chef Habitat az alkalmazások életciklusának automatizálásához az infrastruktúra helyett, és a Chef InSpec, amely segít automatizálni a biztonsági és szabályzati követelményeknek való megfelelést. A Chef-ügyfelek a célgépekre vannak telepítve egy vagy több központi Chef-kiszolgálóval, amelyek tárolják és kezelik a konfigurációkat. További információ: A Chef áttekintése.

Az alábbiak végrehajtásának módját ismerheti meg:

Puppet

A Puppet egy nagyvállalati használatra kész automatizálási platform, amely kezeli az alkalmazáskézbesítési és üzembe helyezési folyamatot. Az ügynökök a célgépekre vannak telepítve, hogy a Puppet Master olyan jegyzékeket futtasson, amelyek meghatározzák az Azure-infrastruktúra és a virtuális gépek kívánt konfigurációját. A Puppet integrálható más megoldásokkal, például a Jenkinssel és a GitHubtal a jobb devops-munkafolyamat érdekében. További információ: How Puppet works.

Az alábbiak végrehajtásának módját ismerheti meg:

Csomagoló

A Packer automatizálja a buildelési folyamatot, amikor egyéni virtuálisgép-rendszerképet hoz létre az Azure-ban. A Packer használatával definiálhatja az operációs rendszert, és konfiguráció utáni szkripteket futtathat, amelyek testre szabják a virtuális gépet az ön igényeinek megfelelően. A konfigurálás után a rendszer a virtuális gépet felügyelt lemezképként rögzíti. A Packer automatizálja a forrás virtuális gép, a hálózati és a tárolási erőforrások létrehozását, a konfigurációs szkriptek futtatását, majd a virtuálisgép-rendszerkép létrehozását.

Az alábbiak végrehajtásának módját ismerheti meg:

Jenkins

A Jenkins egy folyamatos integrációs kiszolgáló, amely segít az alkalmazások üzembe helyezésében és tesztelésében, valamint automatizált folyamatok létrehozásában a kódkézbesítéshez. Az alapvető Jenkins platform több száz beépülő modullal bővíthető, és számos más termékkel és megoldással is integrálható webhookokkal. Manuálisan telepítheti a Jenkinst egy Azure-beli virtuális gépre, futtathatja a Jenkinst egy Docker-tárolóból, vagy használhat egy előre elkészített Azure Marketplace-rendszerképet.

Az alábbiak végrehajtásának módját ismerheti meg:

Következő lépések

Az azure-beli infrastruktúra-automatizálási eszközök számos különböző lehetőség közül választhatnak. Szabadon használhatja az igényeinek és környezetének leginkább megfelelő megoldást. Az Azure-ba beépített eszközök kipróbálásához és kipróbálásához tekintse meg, hogyan automatizálhatja a Linux vagy Windows rendszerű virtuális gépek testreszabását.