Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
O Ansible 2.7 (ou posterior) é necessário para executar os guias estratégicos de exemplo neste artigo.
O Serviço de Aplicativo do Azure permite que você crie e hospede código. Esse código pode estar na forma de aplicativos Web, back-ends móveis e APIs RESTful. Usando o Serviço de Aplicativo, você pode desenvolver seu código usando a linguagem de programação de sua escolha sem gerenciar a infraestrutura. O Serviço de Aplicativo dá suporte ao Windows e ao Linux. Há suporte para implantações automatizadas de qualquer repositório Git, incluindo o GitHub e o Azure DevOps.
Neste artigo, você aprenderá a:
- Obter informações de um plano existente do App Service
- Escalar verticalmente o plano do Serviço de Aplicativo para S2 com três trabalhadores
Pré-requisitos
- Assinatura do Azure: Se você não tiver uma assinatura do Azure, crie uma conta gratuita antes de começar.
Instalar o Ansible: execute uma das seguintes opções:
- Instalar e configurar o Ansible em uma máquina virtual linux
- Configure o Azure Cloud Shell e, se você não tiver acesso a uma máquina virtual linux, crie uma máquina virtual com o Ansible.
- Aplicativo do Serviço de Aplicativo do Azure – se você não tiver um aplicativo do Serviço de Aplicativo do Azure, configure um aplicativo no Serviço de Aplicativo do Azure usando o Ansible.
Escalar verticalmente um aplicativo
Há dois fluxos de trabalho para dimensionamento: dimensionar verticalmente e dimensionar horizontalmente.
Escalar verticalmente: Escalar verticalmente significa adquirir mais recursos. Esses recursos incluem CPU, memória, espaço em disco, VMs e muito mais. Você escala verticalmente um aplicativo alterando o tipo de preço do plano do Serviço de Aplicativo ao qual o aplicativo pertence. Escalar horizontalmente: Escalar horizontalmente significa aumentar o número de instâncias de VM que executam seu aplicativo. Dependendo do tipo de preço do plano do Serviço de Aplicativo, você pode escalar horizontalmente para até 20 instâncias. O dimensionamento automático permite dimensionar a contagem de instâncias automaticamente com base em regras e agendamentos predefinidos.
O código do guia estratégico nesta seção define a seguinte operação:
- Obter dados de um plano existente do App Service
- Atualizar o plano do serviço de aplicativo para S2 com três trabalhadores
Salve o guia estratégico a seguir como webapp_scaleup.yml:
- hosts: localhost
connection: local
vars:
resource_group: myResourceGroup
plan_name: myAppServicePlan
location: eastus
tasks:
- name: Get facts of existing App service plan
azure_rm_appserviceplan_facts:
resource_group: "{{ resource_group }}"
name: "{{ plan_name }}"
register: facts
- debug:
var: facts.appserviceplans[0].sku
- name: Scale up the App service plan
azure_rm_appserviceplan:
resource_group: "{{ resource_group }}"
name: "{{ plan_name }}"
is_linux: true
sku: S2
number_of_workers: 3
- name: Get facts
azure_rm_appserviceplan_facts:
resource_group: "{{ resource_group }}"
name: "{{ plan_name }}"
register: facts
- debug:
var: facts.appserviceplans[0].sku
Executar o playbook usando ansible-playbook
ansible-playbook webapp_scaleup.yml
Depois de executar o guia estratégico, você verá uma saída semelhante aos seguintes resultados:
PLAY [localhost]
TASK [Gathering Facts]
ok: [localhost]
TASK [Get facts of existing App service plan]
[WARNING]: Azure API profile latest does not define an entry for WebSiteManagementClient
ok: [localhost]
TASK [debug]
ok: [localhost] => {
"facts.appserviceplans[0].sku": {
"capacity": 1,
"family": "S",
"name": "S1",
"size": "S1",
"tier": "Standard"
}
}
TASK [Scale up the App service plan]
changed: [localhost]
TASK [Get facts]
ok: [localhost]
TASK [debug]
ok: [localhost] => {
"facts.appserviceplans[0].sku": {
"capacity": 3,
"family": "S",
"name": "S2",
"size": "S2",
"tier": "Standard"
}
}
PLAY RECAP
localhost : ok=6 changed=1 unreachable=0 failed=0