Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Importante
Ansible 2.7 (o versione successiva) è necessario per eseguire i playbook di esempio in questo articolo.
Il servizio app di Azure consente di compilare e ospitare codice. Questo codice può essere sotto forma di app Web, back-end per dispositivi mobili e API RESTful. Usando il servizio app, è possibile sviluppare codice usando il linguaggio di programmazione preferito senza gestire l'infrastruttura. Il servizio app supporta sia Windows che Linux. Sono supportate distribuzioni automatizzate da qualsiasi repository Git, tra cui GitHub e Azure DevOps.
In questo articolo vengono illustrate le operazioni seguenti:
- Ottenere informazioni su un piano di servizio app esistente
- Aumentare il piano di servizio App a S2 con tre istanze di lavoro
Prerequisiti
- Sottoscrizione di Azure: se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Installare Ansible: eseguire una delle opzioni seguenti:
- Installare e configurare Ansible in una macchina virtuale Linux
- Configurare Azure Cloud Shell e, se non si ha accesso a una macchina virtuale Linux, creare una macchina virtuale con Ansible.
- App del servizio app di Azure : se non si ha un'app del servizio app di Azure, configurare un'app nel servizio app di Azure usando Ansible.
Aumentare le prestazioni di un'app
Sono disponibili due flussi di lavoro per la scalabilità: aumentare la capacità e espandere orizzontalmente.
Aumentare le prestazioni: Per aumentare le prestazioni significa acquisire più risorse. Queste risorse includono CPU, memoria, spazio su disco, macchine virtuali e altro ancora. È possibile aumentare le prestazioni di un'app modificando il piano tariffario del piano di servizio app a cui appartiene l'app. Scale out: Per "scale out" si intende aumentare il numero di istanze di macchine virtuali che eseguono l'applicazione. A seconda del piano tariffario del piano App Service, è possibile aumentare il numero di istanze fino a 20. La scalabilità automatica consente di ridimensionare automaticamente il numero di istanze in base a regole e pianificazioni predefinite.
Il codice del playbook in questa sezione definisce l'operazione seguente:
- Ottenere informazioni su un piano di servizio app esistente
- Aggiornare il piano di servizio app a S2 con tre ruoli di lavoro
Salva il playbook seguente come 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
Eseguire il playbook usando ansible-playbook
ansible-playbook webapp_scaleup.yml
Dopo aver eseguito il playbook, viene visualizzato un output simile ai risultati seguenti:
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