Executar um servidor Jenkins no AzureRun a Jenkins server on Azure

Este cenário mostra como implantar e operar um servidor Jenkins de nível corporativo escalonável no Azure protegido com SSO (logon único).This scenario shows how to deploy and operate a scalable, enterprise-grade Jenkins server on Azure secured with single sign-on (SSO). A arquitetura também usa o Azure Monitor para monitorar o estado do servidor Jenkins.The architecture also uses Azure Monitor to monitor the state of the Jenkins server. Implantar esta solução.Deploy this solution.

Servidor Jenkins em execução no Azure

Baixe o arquivo Visio que contém esse diagrama de arquitetura.Download a Visio file that contains this architecture diagram.

Essa arquitetura dá suporte à recuperação de desastres com os serviços do Azure, mas não abrange cenários de expansão mais avançados que envolvem vários primários ou alta disponibilidade sem tempo de inatividade.This architecture supports disaster recovery with Azure services but does not cover more advanced scale-out scenarios involving multiple primaries or high availability (HA) with no downtime. Para obter informações gerais sobre os vários componentes do Azure, incluindo um tutorial passo a passo sobre como criar um pipeline de CI/CD no Azure, consulte Jenkins no Azure.For general insights about the various Azure components, including a step-by-step tutorial about building out a CI/CD pipeline on Azure, see Jenkins on Azure.

Este documento tem como foco as principais operações do Azure que são necessárias para dar suporte ao Jenkins, incluindo o uso do Armazenamento do Microsoft Azure para manter os artefatos de compilação, os itens de segurança necessários para logon único, outros serviços que podem ser integrados e a escalabilidade para o pipeline.The focus of this document is on the core Azure operations needed to support Jenkins, including the use of Azure Storage to maintain build artifacts, the security items needed for SSO, other services that can be integrated, and scalability for the pipeline. A arquitetura é projetada para funcionar com um repositório de controle do código-fonte existente.The architecture is designed to work with an existing source control repository. Por exemplo, é comum iniciar trabalhos do Jenkins com base nas confirmações do GitHub.For example, a common scenario is to start Jenkins jobs based on GitHub commits.

ArquiteturaArchitecture

Essa arquitetura consiste nos seguintes componentes:The architecture consists of the following components:

  • Grupo de recursos.Resource group. Um grupo de recursos agrupa os ativos do Azure para que eles possam ser gerenciados por tempo de vida, proprietário e outros critérios.A resource group is used to group Azure assets so they can be managed by lifetime, owner, and other criteria. Use grupos de recursos para implantar e monitorar ativos do Azure como um grupo e controlar custos de cobrança por grupo de recursos.Use resource groups to deploy and monitor Azure assets as a group and track billing costs by resource group. Também é possível excluir recursos como um conjunto, o que é muito útil para implantações de teste.You can also delete resources as a set, which is very useful for test deployments.

  • Servidor Jenkins.Jenkins server. Uma máquina virtual é implantada para executar o Jenkins como um servidor de automação e serve como Jenkins primário.A virtual machine is deployed to run Jenkins as an automation server and serves as Jenkins Primary. Para implantar essa VM, use o modelo de solução para Jenkins no Azure.To deploy this VM, use the solution template for Jenkins on Azure. Há outras ofertas de Jenkins disponíveis no Azure Marketplace.Other Jenkins offerings are available in the Azure Marketplace.

    Observação

    O Nginx é instalado na máquina virtual para servir como um proxy reverso para o Jenkins.Nginx is installed on the VM to act as a reverse proxy to Jenkins. Você pode configurar o Nginx para habilitar o SSL para o servidor Jenkins.You can configure Nginx to enable SSL for the Jenkins server.

  • Rede virtual.Virtual network. Uma rede virtual conecta os recursos do Azure entre si e fornece isolamento lógico.A virtual network connects Azure resources to each other and provides logical isolation. Nessa arquitetura, o servidor do Jenkins é executado em uma rede virtual.In this architecture, the Jenkins server runs in a virtual network.

  • Sub-redes.Subnets. O servidor Jenkins está isolado em uma sub-rede para facilitar o gerenciamento e a segregação do tráfego de rede sem afetar o desempenho.The Jenkins server is isolated in a subnet to make it easier to manage and segregate network traffic without affecting performance.

  • Grupos de segurança de rede.Network security groups. Use grupos de segurança de rede para restringir o tráfego de rede da Internet para a sub-rede de uma rede virtual.Use network security groups to restrict network traffic from the Internet to the subnet of a virtual network.

  • Managed disks.Managed disks. Um disco gerenciado é um VHD (disco rígido virtual) persistente usado para armazenar aplicativos, manter o estado do servidor do Jenkins e fornecer recuperação de desastres.A managed disk is a persistent virtual hard disk (VHD) used for application storage and also to maintain the state of the Jenkins server and provide disaster recovery. Os discos de dados são armazenados no Armazenamento do Microsoft Azure.Data disks are stored in Azure Storage. Para o alto desempenho, é recomendado o armazenamento premium.For high performance, premium storage is recommended.

  • Armazenamento de BLOBs do Azure.Azure Blob storage. O plug-in de armazenamento do Windows Azure usa o armazenamento de BLOBs do Azure para armazenar os artefatos de compilação criados e compartilhados com outras compilações do Jenkins.The Windows Azure Storage plugin uses Azure Blob storage to store the build artifacts that are created and shared with other Jenkins builds.

  • Azure Active Directory (AD do Azure).Azure Active Directory (Azure AD). O Azure AD dá suporte à autenticação de usuário, permitindo que você configure o recurso de logon único.Azure AD supports user authentication, allowing you to set up SSO. As entidades de serviço do Azure AD definem a política e as permissões para cada autorização de função no fluxo de trabalho usando o RBAC (controle de acesso baseado em função).Azure AD service principals define the policy and permissions for each role authorization in the workflow, using role-based access control (RBAC). Toda entidade de serviço está associada a um trabalho Jenkins.Each service principal is associated with a Jenkins job.

  • Azure Key Vault.Azure Key Vault. Para gerenciar segredos e chaves criptográficas usadas para provisionar recursos do Azure quando segredos são necessários, essa arquitetura usa Azure Key Vault.To manage secrets and cryptographic keys used to provision Azure resources when secrets are required, this architecture uses Azure Key Vault. Para obter mais ajuda com o armazenamento de segredos associados ao aplicativo no pipeline, consulte também o plug-in das Credenciais do Azure para o Jenkins.For added help storing secrets associated with the application in the pipeline, see also the Azure Credentials plugin for Jenkins.

  • Serviços de monitoramento do Azure.Azure monitoring services. Esse serviço monitora a máquina virtual do Azure que hospeda o Jenkins.This service monitors the Azure virtual machine hosting Jenkins. Essa implantação monitora o status da máquina virtual e a utilização da CPU e envia alertas.This deployment monitors the virtual machine status and CPU utilization and sends alerts.

RecomendaçõesRecommendations

As seguintes recomendações aplicam-se à maioria dos cenários.The following recommendations apply for most scenarios. Siga estas recomendações, a menos que você tenha um requisito específico que as substitua.Follow these recommendations unless you have a specific requirement that overrides them.

AD do AzureAzure AD

O locatário do Azure AD referente à sua assinatura é usado para habilitar o logon único para usuários do Jenkins e configurar entidades de serviço que permitem aos trabalhos do Jenkins acessar os recursos do Azure.The Azure AD tenant for your Azure subscription is used to enable SSO for Jenkins users and set up service principals that enable Jenkins jobs to access Azure resources.

A autenticação e a autorização do logon único são implementadas pelo plug-in do Microsoft Azure Active Directory, instalado no servidor Jenkins.SSO authentication and authorization are implemented by the Azure AD plugin installed on the Jenkins server. O logon único permite que você se autentique usando as credenciais de organização do Microsoft Azure Active Directory ao fazer logon no servidor Jenkins.SSO allows you to authenticate using your organization credentials from Azure AD when logging on to the Jenkins server. Ao configurar o plug-in do Azure AD, você pode especificar o nível de acesso autorizado de um usuário ao servidor Jenkins.When configuring the Azure AD plugin, you can specify the level of a user's authorized access to the Jenkins server.

Para fornecer aos trabalhos Jenkins acesso aos recursos do Azure, um administrador do Microsoft Azure Active Directory cria entidades de serviço.To provide Jenkins jobs with access to Azure resources, an Azure AD administrator creates service principals. Essas entidades concedem aos aplicativos — neste caso, os trabalhos do Jenkins — acesso autenticado e autorizado aos recursos do Azure.These grant applications — in this case, the Jenkins jobs — authenticated, authorized access to Azure resources.

O RBAC define e controla o acesso aos recursos do Azure para usuários ou entidades de serviço por meio da função que lhes foi atribuída.RBAC further defines and controls access to Azure resources for users or service principals through their assigned role. Há suporte para as funções internas e personalizadas.Both built-in and custom roles are supported. As funções também ajudam a proteger o pipeline e a garantir que as responsabilidades de um usuário ou de um agente sejam atribuídas e autorizadas corretamente.Roles also help secure the pipeline and ensure that a user's or agent's responsibilities are assigned and authorized correctly. Além disso, você pode configurar o RBAC para limitar o acesso aos ativos do Azure.In addition, RBAC can be set up to limit access to Azure assets. Por exemplo, um usuário pode ser limitado a trabalhar apenas com os ativos em um determinado grupo de recursos.For example, a user can be limited to working with only the assets in a particular resource group.

ArmazenamentoStorage

Use o plug-in do Armazenamento do Microsoft Azure do Jenkins, que é instalado por meio do Azure Marketplace, para armazenar os artefatos de compilação que podem ser compartilhados com testes e outras compilações.Use the Jenkins Windows Azure Storage plugin, which is installed from the Azure Marketplace, to store build artifacts that can be shared with other builds and tests. É preciso haver uma conta configurada do Armazenamento do Microsoft Azure para esse plug-in ser usado por trabalhos do Jenkins.An Azure Storage account must be configured before this plugin can be used by the Jenkins jobs.

Plug-ins do Azure para o JenkinsJenkins Azure plugins

O modelo de solução para o Jenkins no Azure instala vários plug-ins do Azure.The solution template for Jenkins on Azure installs several Azure plugins. A equipe do Azure DevOps cria e mantém o modelo de solução e os seguintes plugins, que funcionam com outras ofertas de Jenkins no Azure Marketplace, bem como qualquer Jenkins primário configurado no local:The Azure DevOps Team builds and maintains the solution template and the following plugins, which work with other Jenkins offerings in Azure Marketplace as well as any Jenkins primary set up on premises:

Também recomendamos que confira a lista crescente de todos os plug-ins do Azure disponíveis que funcionam com os recursos do Azure.We also recommend reviewing the growing list of all available Azure plugins that work with Azure resources. Para ver a lista mais recente, visite Índice de plug-in do Jenkins e pesquise por Azure.To see all the latest list, visit Jenkins Plugin Index and search for Azure. Por exemplo, os seguintes plug-ins estão disponíveis para implantação:For example, the following plugins are available for deployment:

Considerações sobre escalabilidadeScalability considerations

O Jenkins pode ser dimensionado para suportar cargas de trabalho muito grandes.Jenkins can scale to support very large workloads. Para compilações elásticas, não execute compilações no servidor primário Jenkins.For elastic builds, do not run builds on the Jenkins primary server. Em vez disso, descarregue tarefas de compilação nos agentes Jenkins, que podem ser reduzidos e expandidos de forma elástica conforme necessário.Instead, offload build tasks to Jenkins agents, which can be elastically scaled in and out as need. Considere duas opções para o dimensionamento de agentes:Consider two options for scaling agents:

O dimensionamento das máquinas virtuais geralmente é mais caro que o dos contêineres.Virtual machines generally cost more to scale than containers. Para usar os contêineres para o dimensionamento, no entanto, o processo de compilação deve executar com os contêineres.To use containers for scaling, however, your build process must run with containers.

Além disso, use o Armazenamento do Microsoft Azure para compartilhar artefatos de compilação que podem ser usados no próximo estágio do pipeline por outros agentes de compilação.Also, use Azure Storage to share build artifacts that may be used in the next stage of the pipeline by other build agents.

Dimensionamento do servidor JenkinsScaling the Jenkins server

Você pode dimensionar a VM de servidor Jenkins vertical ou horizontalmente alterando o tamanho da VM.You can scale the Jenkins server VM up or down by changing the VM size. O modelo de solução para Jenkins no Azure especifica o tamanho de DS2 v2 (com duas CPUs, 7 GB) por padrão.The solution template for Jenkins on Azure specifies the DS2 v2 size (with two CPUs, 7 GB) by default. Esse tamanho lida com uma carga de trabalho de equipe pequena a média.This size handles a small to medium team workload. Altere o tamanho da VM escolhendo uma opção diferente na criação do servidor.Change the VM size by choosing a different option when building out the server.

A seleção do tamanho de servidor correto depende do tamanho da carga de trabalho esperada.Selecting the correct server size depends on the size of the expected workload. A comunidade Jenkins mantém um guia de seleção para ajudar a identificar a configuração que melhor atenda às suas necessidades.The Jenkins community maintains a selection guide to help identify the configuration that best meets your requirements. O Azure oferece muitos tamanhos de VMs do Linux de modo que todos os requisitos sejam atendidos.Azure offers many sizes for Linux VMs to meet any requirements. Para obter mais informações sobre como dimensionar o primário Jenkins, consulte a Comunidade Jenkins de práticas recomendadas, que também inclui detalhes sobre o dimensionamento de Jenkins.For more information about scaling the Jenkins primary, refer to the Jenkins community of best practices, which also includes details about scaling Jenkins.

Considerações sobre disponibilidadeAvailability considerations

Disponibilidade no contexto de um servidor Jenkins significa ser capaz de recuperar as informações do estado associadas a seu fluxo de trabalho, como os resultados do teste, bibliotecas criadas ou outros artefatos.Availability in the context of a Jenkins server means being able to recover any state information associated with your workflow, such as test results, libraries you have created, or other artifacts. O estado do fluxo de trabalho crítico ou artefatos devem ser mantidos para recuperar o fluxo de trabalho, caso o servidor Jenkins falhe.Critical workflow state or artifacts must be maintained to recover the workflow if the Jenkins server goes down. Para avaliar seus requisitos de disponibilidade, considere duas métricas comuns:To assess your availability requirements, consider two common metrics:

  • O RTO (Objetivo de Tempo de Recuperação) especifica quanto tempo você pode prosseguir sem o Jenkins.Recovery Time Objective (RTO) specifies how long you can go without Jenkins.

  • O RPO (Objetivo de Ponto de Recuperação) indica a quantidade de dados que você pode perder caso uma interrupção no serviço afete o Jenkins.Recovery Point Objective (RPO) indicates how much data you can afford to lose if a disruption in service affects Jenkins.

Na prática, o RTO e o RPO implicam redundância e backup.In practice, RTO and RPO imply redundancy and backup. A disponibilidade não é uma questão de recuperação de hardware — que faz parte do Azure — mas sim de garantir que você mantenha o estado do servidor Jenkins.Availability is not a question of hardware recovery — that is part of Azure — but rather ensuring you maintain the state of your Jenkins server. A Microsoft oferece um contrato de nível de serviço (SLA) para as instâncias únicas da VM.Microsoft offers a service level agreement (SLA) for single VM instances. Se esse SLA não atender aos seus requisitos de tempo de atividade, verifique se você tem um plano de recuperação de desastres ou considere o uso de uma implantação de servidor Jenkins de vários primários (não abordada neste documento).If this SLA doesn't meet your uptime requirements, make sure you have a plan for disaster recovery, or consider using a multi-primary Jenkins server deployment (not covered in this document).

Considere o uso de scripts da recuperação de desastres na etapa 7 da implantação para criar uma conta de Armazenamento do Microsoft Azure com discos gerenciados para armazenar o estado do servidor Jenkins.Consider using the disaster recovery scripts in step 7 of the deployment to create an Azure Storage account with managed disks to store the Jenkins server state. Se o Jenkins falhar, poderá ser restaurado para o estado armazenado nesta conta de armazenamento separada.If Jenkins goes down, it can be restored to the state stored in this separate storage account.

Considerações de segurançaSecurity considerations

Use as seguintes abordagens para ajudar a bloquear a segurança em um servidor Jenkins básico, já que em seu estado básico ele não é seguro.Use the following approaches to help lock down security on a basic Jenkins server, since in its basic state, it is not secure.

  • Configure uma maneira segura de fazer logon no servidor Jenkins.Set up a secure way to log into the Jenkins server. Essa arquitetura usa HTTP e tem um IP público, mas o HTTP não é seguro por padrão.This architecture uses HTTP and has a public IP, but HTTP is not secure by default. Considere a configuração de HTTPS no servidor Nginx que está sendo usado para um logon seguro.Consider setting up HTTPS on the Nginx server being used for a secure logon.

    Observação

    Ao adicionar SSL ao servidor, crie uma regra de grupo de segurança de rede para que a sub-rede Jenkins Abra a porta 443.When adding SSL to your server, create a network security group rule for the Jenkins subnet to open port 443. Para obter mais informações, consulte Como abrir portas em uma máquina virtual com o portal do Azure.For more information, see How to open ports to a virtual machine with the Azure portal.

  • Garanta que a configuração Jenkins impeça a solicitação intersite forjada (Gerenciar Jenkins > Configurar a segurança Global).Ensure that the Jenkins configuration prevents cross site request forgery (Manage Jenkins > Configure Global Security). Esse é o padrão para o Servidor Jenkins da Microsoft.This is the default for Microsoft Jenkins Server.

  • Configure o acesso somente leitura ao painel Jenkins usando o plug-in de estratégia de autorização de matriz.Configure read-only access to the Jenkins dashboard by using the Matrix Authorization Strategy Plugin.

  • Instale o plug-in das Credenciais do Azure para usar o Key Vault para lidar com segredos dos ativos do Azure, com os agentes no pipeline e com os componentes de terceiros.Install the Azure Credentials plugin to use Key Vault to handle secrets for the Azure assets, the agents in the pipeline, and third-party components.

  • Use o RBAC para restringir o acesso da entidade de serviço para o mínimo necessário para executar os trabalhos.Use RBAC to restrict the access of the service principal to the minimum required to run the jobs. Isso ajuda a limitar o escopo de danos de um trabalho invasor.This helps limit the scope of damage from a rogue job.

Os trabalhos Jenkins geralmente requerem segredos para acessar os serviços do Azure que exigem autorização, como o Serviço de Contêiner do Azure.Jenkins jobs often require secrets to access Azure services that require authorization, such as Azure Container Service. Use o Key Vault juntamente com o plug-in de Credencial do Azure para gerenciar esses segredos com segurança.Use Key Vault along with the Azure Credential plugin to manage these secrets securely. Use o Key Vault para armazenar credenciais da entidade de serviço, senhas, tokens e outros segredos.Use Key Vault to store service principal credentials, passwords, tokens, and other secrets.

Use a Central de Segurança do Azure para obter uma exibição central do estado da segurança de seus recursos do Azure.To get a central view of the security state of your Azure resources, use Azure Security Center. A Central de Segurança monitora problemas de segurança potenciais e fornece uma visão abrangente da integridade de segurança de sua implantação.Security Center monitors potential security issues and provides a comprehensive picture of the security health of your deployment. A Central de Segurança é configurada por assinatura do Azure.Security Center is configured per Azure subscription. Habilite a coleta de dados de segurança, conforme descrito no Guia de início rápido da Central de Segurança do Azure.Enable security data collection as described in the Azure Security Center quick start guide. Depois que a coleta de dados for habilitada, a Central de Segurança examinará automaticamente todas as máquinas virtuais criadas nessa assinatura.When data collection is enabled, Security Center automatically scans any virtual machines created under that subscription.

O servidor Jenkins tem seu próprio sistema de gerenciamento de usuário, e a comunidade Jenkins fornece as práticas recomendadas para a proteção de uma instância Jenkins no Azure.The Jenkins server has its own user management system, and the Jenkins community provides best practices for securing a Jenkins instance on Azure. O modelo de solução para Jenkins no Azure implementa essas práticas recomendadas.The solution template for Jenkins on Azure implements these best practices.

Considerações sobre capacidade de gerenciamentoManageability considerations

Use grupos de recursos para organizar os recursos do Azure implantados.Use resource groups to organize the Azure resources that are deployed. Implante ambientes de produção e ambientes de desenvolvimento/teste em grupos de recursos separados, para que você possa monitorar os recursos de cada ambiente e acumular os custos de cobrança por grupo de recursos.Deploy production environments and development/test environments in separate resource groups, so that you can monitor each environment's resources and roll up billing costs by resource group. Também é possível excluir recursos como um conjunto, o que é muito útil para implantações de teste.You can also delete resources as a set, which is very useful for test deployments.

O Azure fornece vários recursos para monitoramento e diagnóstico da infraestrutura geral.Azure provides several features for monitoring and diagnostics of the overall infrastructure. Para monitorar o uso da CPU, essa arquitetura implanta o Azure Monitor.To monitor CPU usage, this architecture deploys Azure Monitor. Por exemplo, você pode usar o Azure Monitor para monitorar a utilização da CPU e enviar uma notificação se o uso da CPU exceder os 80 por cento.For example, you can use Azure Monitor to monitor CPU utilization, and send a notification if CPU usage exceeds 80 percent. (Alto uso da CPU indica que você talvez queira escalar verticalmente a VM do servidor Jenkins.) Você também pode notificar um usuário designado se a VM falhar ou ficar indisponível.(High CPU usage indicates that you might want to scale up the Jenkins server VM.) You can also notify a designated user if the VM fails or becomes unavailable.

ComunidadesCommunities

As comunidades podem responder a perguntas e ajudá-lo a configurar uma implantação bem-sucedida.Communities can answer questions and help you set up a successful deployment. Considere o seguinte:Consider the following:

Para mais práticas recomendadas da comunidade Jenkins, visite Práticas recomendadas Jenkins.For more best practices from the Jenkins community, visit Jenkins best practices.

Implantar a soluçãoDeploy the solution

Para implantar essa arquitetura, siga as etapas abaixo para instalar o modelo de solução para o Jenkins no Azure. Em seguida, instale os scripts que configuram o monitoramento e a recuperação de desastres nas etapas abaixo.To deploy this architecture, follow the steps below to install the solution template for Jenkins on Azure, then install the scripts that set up monitoring and disaster recovery in the steps below.

Pré-requisitosPrerequisites

  • Essa arquitetura de referência requer uma assinatura do Azure.This reference architecture requires an Azure subscription.
  • Para criar uma entidade de serviço do Azure, você deve ter direitos de administrador para o locatário do Microsoft Azure Active Directory que está associado ao servidor Jenkins implantado.To create an Azure service principal, you must have admin rights to the Azure AD tenant that is associated with the deployed Jenkins server.
  • Essas instruções pressupõem que o administrador Jenkins também é um usuário do Azure com, pelo menos, privilégios de Colaborador.These instructions assume that the Jenkins administrator is also an Azure user with at least Contributor privileges.

Etapa 1: Implantar o servidor JenkinsStep 1: Deploy the Jenkins server

  1. Abra a imagem do Azure Marketplace para Jenkins no navegador da Web e selecione obter agora no lado esquerdo da página.Open the Azure Marketplace image for Jenkins in your web browser and select GET IT NOW from the left side of the page.

  2. Examine os detalhes de preços e selecione Continuar. Em seguida, selecione Criar para configurar o servidor Jenkins no portal do Azure.Review the pricing details and select Continue, then select Create to configure the Jenkins server in the Azure portal.

Para obter instruções detalhadas, consulte Criar um servidor Jenkins em uma VM Linux do Azure no portal do Azure.For detailed instructions, see Create a Jenkins server on an Azure Linux VM from the Azure portal. Para essa arquitetura de referência, executar o servidor com o logon de administrador é suficiente.For this reference architecture, it is sufficient to get the server up and running with the admin logon. Em seguida, você poderá provisioná-lo para usar vários outros serviços.Then you can provision it to use various other services.

Etapa 2: Configurar o logon únicoStep 2: Set up SSO

A etapa é executada pelo administrador do Jenkins, que também deve ter uma conta de usuário no diretório do Azure AD da assinatura e deve ser atribuída à função de colaborador.The step is run by the Jenkins administrator, who must also have a user account in the subscription's Azure AD directory and must be assigned the Contributor role.

Use o Plug-in do Azure AD no Centro de Atualização Jenkins no servidor Jenkins e siga as instruções para configurar o SSO.Use the Azure AD Plugin from the Jenkins Update Center in the Jenkins server and follow the instructions to set up SSO.

Etapa 3: Provisionar ao servidor Jenkins um plug-in do Agente de VM do AzureStep 3: Provision Jenkins server with Azure VM Agent plugin

O administrador do Jenkins executa a etapa para configurar o plug-in do agente de VM do Azure, que já está instalado.The step is run by the Jenkins administrator to set up the Azure VM Agent plugin, which is already installed.

Siga estas etapas para configurar o plug-in.Follow these steps to configure the plugin. Para obter um tutorial sobre como configurar as entidades de serviço para o plug-in, consulte dimensionar suas implantações do Jenkins para atender à demanda com os agentes de VM do Azure.For a tutorial about setting up service principals for the plugin, see Scale your Jenkins deployments to meet demand with Azure VM agents.

Etapa 4: Provisionar ao servidor Jenkins um Armazenamento do Microsoft AzureStep 4: Provision Jenkins server with Azure Storage

O administrador do Jenkins executa a etapa, que configura o plug-in do Armazenamento do Microsoft Azure, que já está instalado.The step is run by the Jenkins administrator, who sets up the Windows Azure Storage Plugin, which is already installed.

Siga estas etapas para configurar o plug-in.Follow these steps to configure the plugin.

Etapa 5: Provisionar ao servidor Jenkins um plug-in de Credencial do AzureStep 5: Provision Jenkins server with Azure Credential plugin

O administrador do Jenkins executa a etapa para configurar o plug-in do agente de Credencial do Azure, que já está instalado.The step is run by the Jenkins administrator to set up the Azure Credential plugin, which is already installed.

Siga estas etapas para configurar o plug-in.Follow these steps to configure the plugin.

Etapa 6: Provisione o servidor Jenkins para o monitoramento pelo Serviço do Azure MonitorStep 6: Provision Jenkins server for monitoring by the Azure Monitor Service

Para configurar o monitoramento para seu servidor Jenkins, siga as instruções em Criar alertas de métrica no Azure Monitor para os serviços do Azure.To set up monitoring for your Jenkins server, follow the instructions in Create metric alerts in Azure Monitor for Azure services.

Etapa 7: provisionar o Jenkins Server com Managed disks para recuperação de desastreStep 7: Provision Jenkins server with managed disks for disaster recovery

O grupo do produtos Microsoft Jenkins criou scripts de recuperação de desastres que compilam um disco gerenciado usado para salvar o estado de Jenkins.The Microsoft Jenkins product group has created disaster recovery scripts that build a managed disk used to save the Jenkins state. Se o servidor desligar, poderá ser restaurado a seu último estado.If the server goes down, it can be restored to its latest state.

Baixe e execute os scripts de recuperação de desastres do GitHub.Download and run the disaster recovery scripts from GitHub.

Talvez você queira examinar o seguinte cenário de exemplo do Azure que demonstra as soluções específicas usando algumas das mesmas tecnologias:You may wish to review the following Azure example scenario that demonstrates specific solutions using some of the same technologies: