Použití nástrojů pro automatizaci infrastruktury s virtuálními počítači v Azure

platí pro: : heavy_check_mark: virtuální počítače se systémem Linux: heavy_check_mark: Windows virtuálních počítačů: heavy_check_mark: flexibilní sady škálování: heavy_check_mark: jednotné škálování sady

Aby bylo možné vytvářet a spravovat virtuální počítače Azure konzistentním způsobem ve velkém měřítku, obvykle je žádoucí určitá forma automatizace. Existuje mnoho nástrojů a řešení, které vám umožňují automatizovat kompletní životní cyklus nasazení a správy infrastruktury Azure. V tomto článku se seznámíte s některými nástroji pro automatizaci infrastruktury, které můžete použít v Azure. Tyto nástroje se běžně vejdou do jednoho z následujících přístupů:

Ansible

Ansible je automatizační modul pro správu konfigurace, vytváření virtuálních počítačů nebo nasazení aplikací. Ansible používá model bez agentů, obvykle s klíči SSH, k ověřování a správě cílových počítačů. Úlohy konfigurace jsou definované v playbooky s několika moduly Ansible, které jsou k dispozici pro provádění konkrétních úkolů. Další informace najdete v tématu jak Ansible funguje.

Naučte se:

Chef

Aplikace pro vzdálenou správu je platforma pro automatizaci, která pomáhá definovat způsob konfigurace, nasazení a správy vaší infrastruktury. Další komponenty zahrnovaly pro automatizaci životního cyklu aplikací místo infrastruktury a nespecifika systému pro správu, která pomáhá automatizovat dodržování požadavků na zabezpečení a zásady. Klienti systému OS/2 jsou nainstalováni na cílových počítačích s jedním nebo více servery centrálního systému pro správu, které ukládají a spravují konfigurace. Další informace najdete v tématu Přehled nástroje pro vydaný objekt.

Naučte se:

Puppet

Puppet je podniková platforma pro automatizaci, která zpracovává proces doručování a nasazování aplikací. Agenti jsou nainstalováni na cílových počítačích, aby mohl hlavní server Puppet spouštět manifesty, které definují požadovanou konfiguraci infrastruktury a virtuálních počítačů Azure. Puppet se dá integrovat s jinými řešeními, jako je jenkinse a GitHub pro vylepšený pracovní postup devops. Další informace najdete v tématu jak Puppet funguje.

Naučte se:

Cloud-init

Cloud-init je široce využívaným přístupem k přizpůsobení virtuálního počítače s Linuxem při jeho prvním spuštění. Pomocí cloud-init můžete instalovat balíčky a zapisovat soubory nebo konfigurovat uživatele a zabezpečení. Vzhledem k tomu, že se během procesu prvotního spuštění volá Cloud-init, neexistují žádné další kroky ani nepotřebné agenti pro použití konfigurace. Další informace o tom, jak správně zformátovat #cloud-config soubory, najdete v webu dokumentace k inicializaci Cloud-init. #cloud-config soubory jsou textové soubory kódované v kódování Base64.

Cloud-init navíc funguje v různých distribucích. K instalaci balíčku tak například nepoužijete apt-get install ani yum install. Místo toho můžete definovat seznam balíčků pro instalaci. Cloud-init automaticky použije nativní nástroj pro správu balíčků pro zvolenou distribuci.

Aktivně spolupracujeme s našimi distribuce partnery pro Linux, aby byly k dispozici image s povoleným cloudovým inicializacm v Azure Marketplace. Díky těmto imagím vaše nasazení a konfigurace pro cloudovou inicializaci bez problémů fungují s virtuálními počítači a sadami škálování virtuálních počítačů. Další podrobnosti o cloud-init v Azure:

PowerShell DSC

PowerShell Desired State Configuration (DSC) je platforma pro správu, která definuje konfiguraci cílových počítačů. DSC se dá použít taky na platformě Linux prostřednictvím serveru OMI (Open Management Infrastructure).

Konfigurace DSC definují, co se má nainstalovat na počítač a jak se má nakonfigurovat hostitel. Místní Configuration Manager modul (LCM) běží na každém cílovém uzlu, který zpracovává požadované akce na základě nabízených konfigurací. Server Pull je webová služba, která běží na centrálním hostiteli pro ukládání konfigurací DSC a přidružených prostředků. Server Pull komunikuje s modulem LCM na každém cílovém hostiteli, aby poskytoval požadované konfigurace a sestavu dodržování předpisů.

Naučte se:

Rozšíření Azure Custom Script

rozšíření vlastních skriptů Azure pro Linux nebo Windows stahuje a spouští skripty na virtuálních počítačích Azure. Rozšíření můžete použít při vytváření virtuálního počítače nebo kdykoli po použití virtuálního počítače.

skripty si můžete stáhnout z Azure storage nebo z jakéhokoli veřejného umístění, jako je GitHub úložiště. Pomocí rozšíření vlastních skriptů můžete psát skripty v jakémkoli jazyce, který běží na zdrojovém virtuálním počítači. Tyto skripty lze použít k instalaci aplikací nebo konfiguraci virtuálního počítače podle potřeby. Pro zabezpečení přihlašovacích údajů se můžou citlivé informace, jako jsou hesla, ukládat v chráněné konfiguraci. Tyto přihlašovací údaje se dešifrují jenom uvnitř virtuálního počítače.

Naučte se:

Packeru

Balírna automatizuje proces sestavení při vytvoření vlastní image virtuálního počítače v Azure. Pomocí nástroje Pack můžete definovat operační systém a spouštět skripty po konfiguraci, které přizpůsobí virtuální počítač konkrétním potřebám. Po nakonfigurování se virtuální počítač zachytí jako image spravovaného disku. Balírna automatizuje proces vytvoření zdrojového virtuálního počítače, sítě a prostředků úložiště, spuštění konfiguračních skriptů a vytvoření image virtuálního počítače.

Naučte se:

Terraform

Terraformu je Automatizační nástroj, který umožňuje definovat a vytvořit celou infrastrukturu Azure s jazykem formátu s jedním šablonou – HashiCorp Configuration Language (HCL). Pomocí Terraformu definujete šablony, které automatizují proces vytváření sítě, úložiště a prostředků virtuálních počítačů pro dané řešení aplikace. Stávající šablony Terraformu můžete použít pro jiné platformy s Azure, abyste zajistili konzistenci a zjednodušili nasazení infrastruktury bez nutnosti převádět na šablonu Azure Resource Manager.

Naučte se:

Azure Automation

Azure Automation používá Runbooky ke zpracování sady úloh na virtuálních počítačích, na které cílíte. Azure Automation se používá ke správě stávajících virtuálních počítačů, nikoli k vytváření infrastruktury. Azure Automation může běžet v rámci virtuálních počítačů se systémem Linux i Windows i místních virtuálních nebo fyzických počítačů pomocí procesu hybrid runbook worker. Sady Runbook lze ukládat do úložiště správy zdrojového kódu, jako je například GitHub. Tyto Runbooky pak můžete spustit ručně nebo podle definovaného plánu.

Azure Automation taky poskytuje službu Desired State Configuration (DSC), která umožňuje vytvářet definice pro způsob konfigurace dané sady virtuálních počítačů. DSC pak zajistí, že se požadovaná konfigurace použije a virtuální počítač zůstane konzistentní. Azure Automation DSC běží na počítačích Windows i Linuxu.

Naučte se:

Azure DevOps Services

Azure DevOps Services je sada nástrojů, které vám pomůžou sdílet a sledovat kód, používat automatizované buildy a vytvářet kompletní kanál kontinuální integrace a vývoje (CI/CD). Azure DevOps Services se integruje s Visual Studio a dalšími editory, aby se zjednodušilo používání. Azure DevOps Services můžete také vytvořit a nakonfigurovat virtuální počítače Azure a pak do nich nasadit kód.

Přečtěte si další informace:

Jenkins

Jenkins je server průběžné integrace, který pomáhá nasazovat a testovat aplikace a vytvářet automatizované kanály pro doručování kódu. Existují stovky modulů plug-in, které rozšiřují základní platformu Jenkins, a prostřednictvím webhooků můžete také integrovat s mnoha dalšími produkty a řešeními. Můžete ručně nainstalovat Jenkinse na virtuální počítač Azure, spustit Jenkinse z kontejneru Dockeru nebo použít předem Azure Marketplace image.

Naučte se:

Šablona Azure Resource Manageru

Azure Resource Manager je služba nasazení a správy pro Azure. Poskytuje vrstvu správy, která umožňuje vytvářet, aktualizovat a odstraňovat prostředky ve vašem předplatném Azure. Pomocí funkcí správy, jako jsou řízení přístupu, zámky a značky, můžete zabezpečit a organizovat prostředky po nasazení.

Naučte se:

Další kroky

Existuje mnoho různých možností použití nástrojů pro automatizaci infrastruktury v Azure. Máte volnost používat řešení, které nejlépe vyhovuje vašim potřebám a prostředí. Pokud chcete začít a vyzkoušet některé z nástrojů integrovaných v Azure, podívejte se, jak automatizovat přizpůsobení virtuálního počítače s Linuxem nebo Windows počítače.