Deploying a Wildcard Azure Application Gateway using Powershell
Jorrit Meijer
Follow
Oct 19, 2020 – 7 min read
Azure Application Gateway esiste ormai da diversi anni. Negli ultimi anni, lo abbiamo visto cambiare dallo Standard originale (V1) senza alcuna funzionalità Web Application Firewall al più recente Standard (V2) con o senza funzionalità WAF. La versione v2 è stata rilasciata il 30 aprile 2019 quindi probabilmente ha già sostituito la maggior parte delle vostre V1 (o se volete iniziare da capo, la V2 è probabilmente la strada da seguire)
Come funziona un Application Gateway?
Solo per ricordare, come funziona esattamente un Azure Application Gateway:
Azure Application Gateway
Come illustrato nell’immagine qui sopra, è possibile posizionare un Azure Application Gateway tra i (web)client – per esempio gli utenti che vogliono connettersi al tuo sito web – e i tuoi server backend. I bilanciatori di carico tradizionali operano a livello di trasporto (livello OSI 4 – TCP e UDP) e instradano il traffico in base all’indirizzo IP sorgente e alla porta, verso un indirizzo IP e una porta di destinazione.
Application Gateway può prendere decisioni di routing basate su attributi aggiuntivi di una richiesta HTTP, per esempio il percorso URI o gli header dell’host. Per esempio, è possibile instradare il traffico in base all’URL in entrata. Così, se /images è nell’URL in arrivo, è possibile instradare il traffico a un insieme specifico di server (noto come pool) configurato per le immagini. Se /video è nell’URL, quel traffico viene instradato a un altro pool ottimizzato per i video.
Questo tipo di routing è noto come bilanciamento del carico a livello di applicazione (OSI layer 7). Azure Application Gateway può fare il routing basato su URL e altro ancora. Se vuoi saperne di più su tutte le caratteristiche di un’applicazione, controlla questo sito
Ora introducendo: Wildcard Application Gateway
Quindi, per quelli di voi che hanno distribuito Application Gateway in passato, sia attraverso l’uso di modelli ARM, Azure CLI o Powershell, probabilmente sapranno che il processo di distribuzione di un AGW è piuttosto complicato, soprattutto quando si desidera definire più ascoltatori e/o impostazioni HTTP di backend. Personalmente, in passato ho distribuito Application Gateway che consistevano in 15 ascoltatori e successive impostazioni di backend, tutti terminanti sullo stesso domainname. Per esempio: www.contoso.com; Contoso.com; My.contoso.com; Etc.
Il problema con una configurazione come questa è che era un bel po’ di lavoro creare gli ascoltatori, associarli a una regola che a sua volta è associata a un backend e alle impostazioni HTTP. E bisognava farlo per ogni singolo hostname che si voleva configurare, nonostante il fatto che tutti condividessero lo stesso dominio.
Ma dal 20 luglio 2020, Microsoft ha annunciato che ora supporterà anche la possibilità di definire gli hostname jolly in un listener multisito. Ed è possibile utilizzare fino a 5 nomi host unici per ascoltatore. Non è fantastico?
Come funziona esattamente è illustrato di seguito:
Leave a Reply