Pianificazione della capacità per i ruoli del server del servizio app nell'hub di Azure Stack

Per configurare una distribuzione pronta per la produzione di Servizio app di Azure nell'hub di Azure Stack, è necessario pianificare la capacità che si prevede debba essere supportata dal sistema.

Questo articolo fornisce indicazioni per il numero minimo di istanze di calcolo e SKU di calcolo da usare per qualsiasi distribuzione di produzione.

Nota

Le indicazioni sullo SKU di calcolo consigliato per i ruoli sono state aggiornate con la versione 2020.Q2 di Servizio app di Azure nell'hub di Azure Stack per portare le distribuzioni standard in linea con le distribuzioni di Azure.

È possibile pianificare la strategia per la capacità di Servizio app usando queste linee guida.

Ruolo dei server Servizio app Numero minimo consigliato di istanze SKU di calcolo consigliato
Controller 2 A4v2
Front-end 2 A4_v2
Gestione 2 D3_v2
Publisher 2 A2_v2
Web worker - condiviso 2 A4_v2
Web Worker - dedicati - piccoli 2 per livello A1_v2
Web Worker - dedicati - medi 2 per livello A2_v2
Web Worker - dedicati - grandi 2 per livello A4_v2

Ruolo controller

Minimo consigliato: due istanze di A4v2

Il controller di Servizio app di Azure ha in genere un basso consumo di CPU, memoria e risorse di rete. Per la disponibilità elevata, è tuttavia necessario disporre di due controller, che sono anche il numero massimo di controller consentiti. È possibile creare il secondo controller di siti Web direttamente dal programma di installazione durante la distribuzione.

Ruolo front-end

Minimo consigliato: due istanze di A4v_2

Il front-end instrada le richieste ai Web worker a seconda della loro disponibilità. Per la disponibilità elevata, è necessario disporre di più di un front-end ed è possibile disporne di più di due. Ai fini della pianificazione della capacità, si consideri che tramite ciascun core è possibile gestire circa 100 richieste al secondo.

Ruolo di gestione

Minimo consigliato: due istanze di D3v2

Il ruolo modello di distribuzione classico di app Azure è responsabile di Azure Resource Manager di Servizio app e degli endpoint API, delle estensioni del portale (amministratore, tenant, portale di Funzioni) e del servizio dati. Per il ruolo server di gestione sono necessari in genere solo 4 GB di RAM in un ambiente di produzione. Tuttavia, è possibile sperimentare livelli di CPU superiori qualora vengano eseguite più attività di gestione, ad esempio la creazione di siti Web. Per la disponibilità elevata, è necessario assegnare a questo ruolo più di un server e almeno due core per server.

Ruolo Server di pubblicazione

Minimo consigliato: due istanze di A2v2

Se molti utenti pubblicano simultaneamente, il ruolo server di pubblicazione può sperimentare utilizzi di CPU elevati. Per la disponibilità elevata, assicurarsi che sia disponibile più di un ruolo server di pubblicazione. Il server di pubblicazione gestisce solo il traffico FTP/FTPS.

Ruolo Web worker

Minimo consigliato: due istanze di A4_v2

Per la disponibilità elevata, è necessario disporre di almeno quattro ruoli Web worker: due per la modalità sito Web condiviso e due per ogni livello di lavoro dedicato che si prevede di offrire. Le modalità di calcolo condivisa e dedicata offrono livelli diversi di servizio ai tenant. Potrebbe essere necessario usare più Web worker se molti dei clienti:

  • Usano livelli di ruolo di lavoro in modalità di calcolo dedicata (che sono a elevato utilizzo di risorse).
  • Eseguono in modalità di calcolo condivisa.

Dopo che un utente ha creato un piano di servizio app per uno SKU di modalità di calcolo dedicata, il numero di Web worker specificati in tale piano non è più disponibile per gli utenti.

Per fornire Funzioni di Azure agli utenti nel modello di piano di consumo, è necessario distribuire Web worker condivisi.

Per decidere il numero di ruoli Web worker condivisi da usare, esaminare queste considerazioni:

  • Memoria: la memoria è la risorsa più critica per un ruolo Web worker. Una memoria insufficiente influisce sulle prestazioni del sito Web durante lo scambio tra memoria virtuale e disco. Ogni server richiede circa 1,2 GB di RAM per il sistema operativo. La RAM sopra questa soglia può essere usata per eseguire siti Web.

  • Percentuale di siti Web attivi: in genere è attivo il 5 percento di app in una distribuzione di Servizio app di Azure nell'hub di Azure Stack. La percentuale di app che può essere attiva in un dato momento può tuttavia essere superiore o inferiore. Con un tasso di app attive pari al 5%, il numero massimo di app da inserire in una distribuzione di Servizio app di Azure nell'hub di Azure Stack deve essere inferiore a 20 volte il numero di siti Web attivi (5 x 20 = 100).

  • Footprint della memoria medio: il footprint medio della memoria per le app osservato negli ambienti di produzione è di circa 70 MB. Usando questo footprint, la memoria allocata in tutti i computer o le macchine virtuali del ruolo di lavoro Web viene calcolata come segue:

    Number of provisioned applications * 70 MB * 5% - (number of web worker roles * 1044 MB)

    Ad esempio, se sono presenti 5.000 app in un ambiente che esegue 10 ruoli di lavoro Web, ogni macchina virtuale del ruolo di lavoro Web deve avere 7060 MB di RAM:

    5,000 * 70 * 0.05 - (10 * 1044) = 7060 (= about 7 GB)

    Per informazioni sull'aggiunta di altre istanze di lavoro, vedi Aggiunta di altri ruoli di lavoro.

Considerazioni aggiuntive per i lavoratori dedicati durante l'aggiornamento e la manutenzione

Durante l'aggiornamento e la manutenzione dei ruoli di lavoro, Servizio app di Azure nell'hub di Azure Stack eseguirà la manutenzione sul 20% di ogni livello di lavoro in qualsiasi momento. Pertanto, gli amministratori cloud devono sempre mantenere un pool del 20% di ruoli di lavoro non allocati per ogni livello di lavoro per garantire che i tenant non subisca alcuna perdita di servizio durante l'aggiornamento e la manutenzione. Ad esempio, se si dispone di 10 ruoli di lavoro in un livello di lavoro, è necessario assicurarsi che 2 non siano allocati per consentire l'aggiornamento e la manutenzione. Se vengono allocati 10 ruoli di lavoro completi, è necessario ridimensionare il livello di lavoro per mantenere un pool di ruoli di lavoro non allocati.

Durante l'aggiornamento e la manutenzione, Servizio app di Azure sposta i carichi di lavoro in ruoli di lavoro non allocati per garantire che i carichi di lavoro continuino a funzionare. Tuttavia, se non sono disponibili ruoli di lavoro non allocati durante l'aggiornamento, è possibile che si verifichi un tempo di inattività del carico di lavoro del tenant. Per quanto riguarda i ruoli di lavoro condivisi, i clienti non devono effettuare il provisioning di ruoli di lavoro aggiuntivi perché il servizio allocherà automaticamente le app tenant all'interno dei ruoli di lavoro disponibili. Per la disponibilità elevata, è necessario un requisito minimo di due ruoli di lavoro in questo livello.

Gli amministratori cloud possono monitorare l'allocazione del livello di lavoro nell'area di amministrazione servizio app nel portale di amministrazione dell'hub di Azure Stack. Passare a servizio app e quindi selezionare Livelli di lavoro nel riquadro a sinistra. La tabella Livelli di lavoro mostra il nome del livello di lavoro, le dimensioni, l'immagine usata, il numero di ruoli di lavoro disponibili (non allocato), il numero totale di ruoli di lavoro in ogni livello e lo stato complessivo del livello di lavoro.

amministrazione servizio app - Livelli di lavoro

Ruolo file server

Per il ruolo file server, è possibile usare il file server autonomo per lo sviluppo e il test. Ad esempio, quando si distribuisce Servizio app di Azure in Azure Stack Development Kit (ASDK) è possibile usare questo modello. Ai fini della produzione, è necessario usare un file server Windows preconfigurato o un file server non Windows preconfigurato.

Negli ambienti di produzione, il ruolo file server sperimenta un elevato numero di operazioni di I/O su disco. Poiché ospita tutti i file di contenuto e app per i siti Web degli utenti, è necessario preconfigurare una delle risorse seguenti per questo ruolo:

  • File server Windows
  • Cluster di file server Windows
  • File server non Windows
  • Cluster di file server non Windows
  • Dispositivo NAS (Network Attached Storage)

Per altre informazioni, vedere Effettuare il provisioning di un file server.

Passaggi successivi

Prerequisiti per la distribuzione del servizio app nell'hub di Azure Stack