Ús d’eines d’automatització de la infraestructura amb màquines virtuals de AzureUse infrastructure automation tools with virtual machines in Azure

  • 07/17/2020
  • Temps de lectura: 8 minuts
    • c
    • o

Per a crear i administrar màquines virtuals (VM) d’Azure de manera coherent a escala, sol ser desitjable alguna forma de automatización.To create and manage Azure virtual machines (VMs) in a consistent manner at scale, some form of automation is Typically desired. Hi ha moltes eines i solucions que li permeten automatitzar la implementació de tota la infraestructura d’Azure i el cicle de vida d’administración.There are many tools and solutions that allow you to automate the completi Azure infrastructure deployment and management lifecycle. En aquest article es detallen algunes de les eines d’automatització de la infraestructura que pot usar en Azure.This article introdueixes some of the infrastructure automation tools that you can use in Azure. Aquestes eines s’adapten normalment a algun dels següents enfocaments: These tools commonly fit in to one of the following approaches:

  • Automatització de la configuració de les màquines virtualesAutomate the configuration of VMs

    • Entre les eines s’inclouen ansible, Xef, Puppet i la plantilla de Azure Resource Manager.Tools include ansible, Xef, Puppet, and Azure Resource Manager template.
    • Entre les eines específiques per a la personalització de màquines virtuals s’inclou cloud-init per a màquines virtuals Linux, PowerShell desired State Configuration (DSC) i l’extensió de script personalitzat d’Azure per a totes les màquines virtuals d’Azure. tools specific to VM customization include cloud-init for Linux VMs, PowerShell desired State Configuration (DSC), and the Azure Custom Script Extension for all Azure VMs.
  • Automatització de l’administració de la infraestructuraAutomate infrastructure management

    • Entre les eines s’inclou Packer per automatitzar les compilacions personalitzades d’imatges de màquina virtual, i Terraform per automatitzar el procés de compilació de la infraestructura.Tools include Packer to automate custom VM image builds, and Terraform to automate the infrastructure build process.
    • Azure Automation pot realitzar accions en tota la infraestructura local i de Azure.Azure Automation can perform actions across your Azure and on-premises infrastructure.
  • Automatització de la implementació i lliurament de aplicacionesAutomate application deployment and delivery

    • Alguns exemples són Azure devops Services i Jenkins.Examples include Azure devops Services and Jenkins.

AnsibleAnsible

ansible és un motor d’automatització per a l’administració de configuracions, la creació de màquines virtuals o la implementació d’aplicacions. ansible is an automation engine for configuration management, VM creation, or application deployment. Ansible utilitza un model sense agent, normalment amb claus SSH, per autenticar i administrar les màquines de destino.Ansible facis servir an agent-less model, Typically with SSH keys, to authenticate and manage target machines. Les tasques de configuració es defineixen en quaderns d’estratègies, amb una sèrie de mòduls de ansible disponibles per dur a terme tasques específicas.Configuration tasks are defined in playbooks, with a number of ansible modules available to carry out specific tasks. Per a més informació, consulteu el funcionament de Ansible.For more information, see How ansible works.

Més informació sobre com: Learn how to:

  • Instal·lar i configurar ansible en Linux per al seu ús amb Azure.Install and configure ansible on Linux per a utilitzeu with Azure.
  • Crear una màquina virtual Linux.Create a Linux virtual machine.
  • Gestiona una màquina virtual Linux.Manage a Linux virtual machine.

ChefChef

Xef és una plataforma d’automatització que ajuda a definir com es configura, implementa i administra la infraestructura.Chef is an automation platform that helps defineix how your infrastructure is configured, DEPLOYED, and managed. Entre els components addicionals s’inclou Xef Habitat per a l’automatització de el cicle de vida de l’aplicació més que de la infraestructura, i Xef Inspecció que ajuda a automatitzar el compliment normatiu amb els requisits de seguretat o de directiva.Additional components inclòs Xef Habitat for application lifecycle automation rather than the infrastructure, and Xef Inspecció that helps automate compliance with security and policy requirements.Els clients de Xef s’instal·len a les màquines de destí, amb un o diversos servidors de Xef centrals que emmagatzemen i administren les configuraciones.Chef Clients are installed on target machines, with one or more central Xef Servers that store and manage the configurations. Per a més informació, consulteu la introducció a Chef.For more information, see An Overview of Xef.

Més informació sobre com: Learn how to:

  • Implementar Xef Automate des Azure Marketplace.Deploy Xef Automate from the Azure Marketplace.
  • Instal·lar Xef a Windows i crear màquines virtuals de Azure.Install Xef on Windows and create Azure VMs.

PuppetPuppet

Puppet és una plataforma d’automatització preparada per a l’empresa que controla el procés de lliurament i implementació de la aplicación.Puppet is an enterprise-ready automation platform that handles the application delivery and deployment process. Els agents es troben a les màquines de destinació per permetre Puppet Master executar els manifestos que defineixen la configuració desitjada de la infraestructura i les màquines virtuals de Azure.Agents are installed on target machines to allow Puppet Master to run Manifests that defineix the desired configuration of the Azure infrastructure and VMs. Puppet pot integrar-se amb altres solucions com Jenkins i GitHub per obtenir un flux de treball de devops mejorado.Puppet can Integrate with other solutions such as Jenkins and GitHub for an improved devops workflow. Per a més informació, consulteu el funcionament de Puppet.For more information, see How Puppet works.

Més informació sobre com: Learn how to:

  • Implementar Puppet.Deploy Puppet .

Cloud-InitCloud-init

cloud-init és un enfocament àmpliament usat per a personalitzar una màquina virtual Linux la primera vegada que es arranca.Cloud-init is a widely used approach to customize a Linux VM as it boots for the first time. Feu servir cloud-init per a instal·lar paquets i escriure arxius o per configurar els usuaris i la seguridad.You can use cloud-init to install packages and write files, or to configuri users and security. Atès que es diu a cloud-init durant el procés d’arrencada inicial, no calen passos addicionals ni agents per aplicar la configuración.Because cloud-init is called during the initial boot process, there are no additional steps or required agents to apply your configuration. Per a més informació sobre com donar format correctament als seus arxius #cloud-config, consulteu el lloc de documentació de cloud-init.For more information on how to properly format your #cloud-config files, see the cloud-init documentation site. Els arxius #cloud-config són fitxers de text codificats en base64. #cloud-config files are text files encoded in base64.

cloud -init també funciona entre distribuciones.Cloud-init also works across distributions. Per exemple, no utilitzeu apt-get install o yum install per instal·lar un paquete.For example, you do not use apt-get install or yum install to install a package. En el seu lloc, pot definir una llista de paquets que es van a instalar.Instead you can defineix a list of packages to install. Cloud-init recorrerà automàticament l’eina d’administració de paquets nadius per a la distribució de Linux (distro) que seleccione.Cloud-init automatically facis servir the native package management tool for the distro you select.

Estem treballant activament amb els nostres associats de distribucions de Linux certificades per disposar d’imatges amb cloud-init habilitat en Azure Marketplace.We are actively working with our Endorsed Linux distro partners in order to have cloud-init enabled images available in the Azure Marketplace. Aquestes imatges faran que les implementacions i configuracions de cloud-init funcionin perfectament amb les màquines virtuals i els conjunts d’escalat de màquines virtuales.These images fer el seu cloud-init deployments and configurations work seamlessly with VMs i entorns virtuals machine scale sets.Obtener informació més detallada sobre cloud-init en Azure: Learn more details about cloud-init on Azure:

  • Compatibilitat amb cloud-init per a màquines virtuals Linux en AzureCloud-init support for Linux virtual machines in Azure
  • Consulteu el tutorial sobre configuració automatitzada de màquines virtuals amb cloud-init.Try a tutorial on automated VM configuration using cloud-init.

DSC de PowerShellPowerShell DSC

PowerShell desired State Configuration (DSC) és una plataforma d’administració que es fa servir per definir la configuració de les màquines de destino.PowerShell desired State Configuration (DSC) is a management platform to defineix the configuration of target machines. DSC també es pot utilitzar en Linux mitjançant el servidor d’infraestructura d’administració oberta (OMI).DSC can also be used on Linux through the Open Management Infrastructure (OMI) server.

Les configuracions de DSC defineixen el que s’ha d’instal·lar en una màquina i com configurar el host.DSC configurations defineix what to install on a machine and how to configure the host. Un motor d’administració de configuració local (LCM) s’executa en cada node de destinació que processa les accions requerides en funció de les configuracions insertadas.A Local Configuration Manager (LCM) engine runs on each target node that processes requested actions based on pushed configurations . Un servidor d’extracció és un servei web que s’executa en un host central per emmagatzemar les configuracions de DSC i els recursos asociados.A pull server is a web service that runs on a central host to store the DSC configurations and associated resources. El servidor d’extracció es comunica amb el motor de LCM en cada host de destinació per a proporcionar les configuracions necessàries i informar sobre el cumplimiento.The pull server communicates with the LCM engine on each target host to provide the required configurations and report on compliance.

Més informació sobre com: Learn how to:

  • Crear una configuració bàsica de DSC.Create a basic DSC configuration.
  • Configura un servidor d’extracció de DSC.Configure a DSC pull server.
  • Utilitza DSC per Linux.Use DSC for Linux.

Extensió de script personalitzat de AzureAzure Custom Script Extension

L’extensió de script personalitzat per a Linux o Windows descàrrega i executa scripts en màquines virtuals de Azure.The Azure Custom Script extension for Linux or Windows downloads and executes scripts on Azure VMs. Podeu utilitzar l’extensió a l’crear una màquina virtual o en qualsevol moment després de començar a usarla.You can use the extension when you create a VM, or any time after the VM is in use.

Els scripts es poden descarregar des Azure Storage o des de qualsevol ubicació pública com, per exemple, un repositori de GitHub.Scripts can be downloaded from Azure storage or any public location such as a GitHub repository. Amb l’extensió de script personalitzat, pot escriure scripts en qualsevol llenguatge que es pugui executar a la màquina virtual de origen.With the Custom Script Extension, you can write scripts in any language that runs on the source VM. Aquests scripts es poden usar per a instal·lar aplicacions o configurar la màquina virtual segons sigui necesario.These scripts can be used to install applications or configuri the VM es desired. Per protegir les credencials, la informació confidencial com les contrasenyes es pot emmagatzemar en una configuració protegida.To secure credentials, sensitive information such as passwords can be stored in a protected configuration. Aquestes credencials només es desxifren dins de la màquina virtual.These credentials are only decrypted inside the VM.

Més informació sobre com: Learn how to:

  • Crear una màquina virtual Linux amb la CLI de Azure i usar l’extensió de script personalizado.Create a Linux VM with the Azure CLI and use the Custom script extension.
  • Crear una màquina virtual Windows amb Azure PowerShell i usar l’extensió de script personalizado.Create a Windows VM with Azure PowerShell and use the Custom Script Extension.

PackerPacker

Packer automatitza el procés de compilació quan es crea una imatge personalitzada de la màquina virtual en Azure.Packer Automates the build process when you create a custom VM image in Azure. Feu servir Packer per definir el sistema operatiu i executar scripts posteriors a la configuració que permeten personalitzar la màquina virtual segons les seves necessitats específicas.You faci servir Packer to defineix the US and run post-configuration scripts that customize the VM for your specific needs. Un cop acabada la configuració, la màquina virtual es captura com una imatge de Manage Disks.Once configured, the VM is then Captured es a Managed Disk image. Packer automatitza el procés per crear la màquina virtual d’origen, la xarxa i els recursos d’emmagatzematge, executar les seqüències de configuració i, finalment, crear la imatge de la màquina virtual.Packer Automates the process to create the source VM, network and storage resources, run configuration scripts, and then create the VM image.

Més informació sobre com: Learn how to:

  • Utilitza Packer per crear una imatge de màquina virtual Linux en Azure.Use Packer to create a Linux VM image in Azure.
  • Utilitza Packer per crear una imatge de màquina virtual Windows en Azure.Use Packer to create a Windows VM image in Azure.

TerraformTerraform

Terraform és una eina d’automatització que li permet definir i crear una infraestructura d’Azure completa amb un llenguatge de format de plantilla única: el llenguatge de configuració de HashiCorp (HCL).Terraform is an automation tool that Allows you to defineix and create an entire Azure infrastructure with a single template format language – the HashiCorp Configuration Language (HCL). Amb Terraform, pot definir les plantilles que automatitzen el procés de creació dels recursos de la xarxa, de l’emmagatzematge i de la màquina virtual per a una solució d’aplicació determinada.With Terraform, you defineix templates that automate the process to create network, storage, and VM resources for a given application solution. Podeu utilitzar les plantilles de Terraform existents per a altres plataformes amb Azure per garantir la coherència i simplificar la implementació de la infraestructura sense necessitat de convertir-les a una plantilla de Azure Resource Manager.You can use your existing Terraform templates for other platforms with Azure to ensure consistency and simplify the infrastructure deployment without Needing to convert to an Azure Resource Manager template.

Més informació sobre com: Learn how to:

  • Instal·lar i configurar Terraform amb Azure.Install and configuri Terraform with Azure.
  • Crear una infraestructura de Azure amb Terraform.Create an Azure infrastructure with Terraform.

Azure AutomationAzure Automation

Azure Automation fa servir runbooks per processar un conjunt de tasques en les màquines virtuals de la seva elección.Azure Automation facis servir runbooks to process a set of tasks on the VMs you target. Azure Automation s’usa per administrar les màquines virtuals existents en lloc de per a crear una infraestructura.Azure Automation is used to manage existing VMs rather than to create an infrastructure. Azure Automation pot executar-se en màquines virtuals Linux i Windows, així com en màquines virtuals o físiques locals amb una instància de Hybrid Runbook Worker.Azure Automation can run across both Linux and Windows VMs, as well as on-premises virtual or physical machines with a hybrid runbook worker. Els runbooks es poden emmagatzemar en un repositori de control de codi font com GitHub.Runbooks can be stored in a source control repository, such as GitHub. Aquests runbooks es poden executar manualment o segons una programació definida.These runbooks can then run Manually or on a defined schedule.

Azure Automation també proporciona un servei desired State Configuration (DSC) que li permet crear definicions per configurar un conjunt determinat de màquines virtuales.Azure Automation also provides a desired State Configuration (DSC) service that Allows you to create definitions for how a given set of VMs should be configured. DSC garanteix que s’aplica la configuració necessària i que la màquina virtual segueix sent coherente.DSC then ensures that the required configuration is applied and the VM stays consistent. DSC d’Automatització de Azure es pot executar tant en màquines virtuals Windows com Linux.Azure Automation DSC runs on both Windows and Linux machines.

Més informació sobre com: Learn how to:

  • Crear un runbook de PowerShell.Create a PowerShell runbook.
  • Utilitza Hybrid Runbook Worker per administrar recursos locales.Use Hybrid Runbook Worker to manage on-premises resources.
  • Utilitza DSC d’Automatització de Azure.Use Azure Automation DSC.

Azure devops ServicesAzure devops Services

Azure devops Services és un conjunt d’eines que l’ajudaran a compartir i fer un seguiment de el codi, fer servir compilacions automatitzades i crear una canalització de desenvolupament i integració contínua (CI / CD) completa.Azure devops Services is a suite of tools that help you share and track code, utilitzeu automated builds, and create a completi continuous integration and development (CI / CD) pipeline. Azure devops Services s’integra amb Visual Studio i altres editors per facilitar el uso.Azure devops Services integrates with Visual Studio and other editors to simplify usage. Azure devops Services també pot crear i configurar màquines virtuals d’Azure i implementar codi en ellas.Azure devops Services can also create and configuri Azure VMs and then deploy code to them.

Més informació sobre: Learn more about:

  • Azure devops Services.Azure devops Services.

JenkinsJenkins

Jenkins és un servidor d’integració contínua que ajuda a implementar i provar aplicacions, ia crear canalitzacions automatitzades per al lliurament de código.Jenkins is a continuous integration server that helps deploy and test applications, and create automated pipelines for code delivery. Hi ha centenars de complements per ampliar la plataforma principal de Jenkins i també ho pot integrar amb molts altres productes i solucions mitjançant els webhooks.There are hundreds of connectors to extend the core Jenkins platform, and you can also Integrate with many other products and solutions through webhooks.Podeu instal·lar Jenkins manualment en una màquina virtual de Azure, executar Jenkins des de dins d’un contenidor d’Docker o utilitzar una imatge d’Azure Marketplace que s’hagi creat previamente.You can Manually install Jenkins on an Azure VM, run Jenkins from within a docker contenidor, or use a pre-built Azure Marketplace image.

Més informació sobre com: Learn how to:

  • Crear una infraestructura de desenvolupament en una màquina virtual Linux en Azure amb Jenkins, GitHub i Docker.Create a development infrastructure on a Linux VM in Azure with Jenkins, GitHub, and Docker.

Plantilla de l’Administrador de recursos d’AzureAzure Resource Manager template

Azure Resource Manager és el servei d’implementació i administració per Azure.Azure Resource Manager is the deployment and management service for Azure. Proporciona una capa d’administració que li permet crear, actualitzar i eliminar recursos de la subscripció a la Azure.It provides a management layer that Enables you to create, update, and delete resources in your Azure subscription. S’usen les característiques d’administració, com el control d’accés, l’auditoria i les etiquetes, per protegir i organitzar els recursos després de la implementación.You faci servir management features, like access control, locks, and tags, to secure and organize your resources after deployment.

Més informació sobre com: Learn how to:

  • Implementar màquines virtuals d’Espot mitjançant una plantilla de Resource Manager.Deploy Spot VMs using a Resource Manager template.
  • Crear una màquina virtual Windows amb una plantilla de Resource Manager.Create a Windows virtual machine from a Resource Manager template.
  • Descarregar la plantilla per a una màquina virtual.Download the template for a VM.
  • Crear una plantilla de Azure Image Builder.Create an Azure Image Builder template.

Hi ha moltes opcions diferents per utilitzar eines d’automatització d’infraestructura en Azure.There are many different options to use infrastructure automation tools in Azure. És lliure de triar la solució que millor s’adapti a les seves necessitats i entorno.You have the freedom to use the solution that best fits your needs and environment. Per començar a treballar i provar algunes de les eines integrades en Azure, vegi com automatitzar la personalització d’una màquina virtual Linux o Windows.To get started and try some of the tools predefinit to Azure, see how to automate the customization of a Linux or Windows VM.

Deixa un comentari

L'adreça electrònica no es publicarà. Els camps necessaris estan marcats amb *