Esercitazione: Connettere un'app del servizio Azure Kubernetes al database SQL di Azure (anteprima)
Questa esercitazione illustra come connettere un'applicazione distribuita al servizio Azure Kubernetes a un database SQL di Azure usando Connettore di servizi (anteprima). Completare le attività seguenti:
- Creare una risorsa del database SQL di Azure
- Creare una connessione tra il cluster del servizio Azure Kubernetes e il database con Connettore di servizi.
- Aggiorna contenitore
- Aggiornare il codice dell'applicazione
- Pulisci risorse di Azure.
Prerequisiti
- Un account Azure con una sottoscrizione attiva. Creare un account gratuitamente.
- Un'applicazione distribuita nel servizio Azure Kubernetes.
-
Usare l'ambiente Bash in Azure Cloud Shell. Per altre informazioni, vedere Avvio rapido su Bash in Azure Cloud Shell.
Se si preferisce eseguire i comandi di riferimento dell'interfaccia della riga di comando in locale, installare l'interfaccia della riga di comando di Azure. Per l'esecuzione in Windows o macOS, è consigliabile eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker. Per altre informazioni, vedere Come eseguire l'interfaccia della riga di comando di Azure in un contenitore Docker.
Se si usa un'installazione locale, accedere all'interfaccia della riga di comando di Azure con il comando az login. Per completare il processo di autenticazione, seguire la procedura visualizzata nel terminale. Per altre opzioni di accesso, vedere Accedere tramite l'interfaccia della riga di comando di Azure.
Quando richiesto, al primo utilizzo installare l'estensione dell'interfaccia della riga di comando di Azure. Per altre informazioni sulle estensioni, vedere Usare le estensioni con l'interfaccia della riga di comando di Azure.
Eseguire az version per trovare la versione e le librerie dipendenti installate. Per eseguire l'aggiornamento alla versione più recente, eseguire az upgrade.
Creare un database SQL di Azure
Creare un gruppo di risorse per archiviare le risorse di Azure create in questa esercitazione usando il comando
az group create
.az group create \ --name $RESOURCE_GROUP \ --location eastus
Seguire le istruzioni per creare un database SQL di Azure nel gruppo di risorse creato nel passaggio precedente. Prendere nota del nome del server, del nome del database e delle credenziali del database da usare in questa esercitazione.
Creare una connessione al servizio nel servizio Azure Kubernetes con connettore di servizi (anteprima)
Registrare il connettore di servizi e i provider di risorse di configurazione Kubernetes
Registrare i provider di risorse Connettore di servizi e Configurazione Kubernetes usando il comando az provider register
.
az provider register --namespace Microsoft.ServiceLinker
az provider register --namespace Microsoft.KubernetesConfiguration
Suggerimento
È possibile verificare se questi provider di risorse sono già registrati usando i comandi az provider show --namespace "Microsoft.ServiceLinker" --query registrationState
e az provider show --namespace "Microsoft.KubernetesConfiguration" --query registrationState
. Se l'output è Registered
, il provider di servizi è già registrato.
Creare una nuova connessione
Creare una connessione al servizio tra il cluster del servizio Azure Kubernetes e il database SQL usando ID dei carichi di lavoro di Microsoft Entra
Nel portale di Azure andare alla risorsa del cluster del servizio Azure Kubernetes.
Selezionare Impostazioni>Connettore di servizi (anteprima)>Crea.
Configurare i valori seguenti nella scheda Informazioni di base:
- Spazio dei nomi Kubernetes: selezionare predefinito.
- Tipo di servizio selezionare Database SQL.
- Nome connessione: usare il nome della connessione fornito dal connettore di servizi o immettere il proprio nome di connessione.
- Sottoscrizione: selezionare la sottoscrizione che include il servizio Database SQL di Azure.
- SQL Server: selezionare l'SQL Server.
- Database SQL: selezionare il database SQL.
- Tipo di client: linguaggio di codice o framework usato per connettersi al servizio di destinazione, ad esempio Python.
Al termine, selezionare Avanti: Autenticazione. Nella scheda Autenticazione selezionare Identità del carico di lavoro e scegliere un'identità gestita assegnata dall'utente.
Selezionare Avanti: Rete>successiva: Rivedi e crea crea>in Cloud Shell.
Cloud Shell verrà avviato ed eseguirà i comandi per creare una connessione. Potrebbe essere necessario confermare alcune modifiche di configurazione durante l'elaborazione del comando. Una volta eseguito correttamente, il comando visualizzerà le informazioni di connessione ed è possibile fare clic sul pulsante Aggiorna nel riquadro Connettore di servizi per visualizzare il risultato più recente.
Avviso
Microsoft consiglia di usare il flusso di autenticazione più sicuro disponibile. Il flusso di autenticazione descritto in questa procedura richiede un livello di attendibilità molto elevato nell'applicazione e comporta rischi che non sono presenti in altri flussi. Si consiglia di usare questo flusso solo quando altri flussi più sicuri, come le identità gestite, non sono validi. Selezionare il metodo di autenticazione ID dei carichi di lavoro (scelta consigliata).
Creare una connessione al servizio tra il cluster del servizio Azure Kubernetes e il database SQL usando un stringa di connessione
Nel portale di Azure andare alla risorsa del cluster del servizio Azure Kubernetes.
Selezionare Impostazioni>Connettore di servizi (anteprima)>Crea.
Configurare i valori seguenti nella scheda Informazioni di base:
- Spazio dei nomi Kubernetes: selezionare predefinito.
- Tipo di servizio selezionare Database SQL.
- Nome connessione: usare il nome della connessione fornito dal connettore di servizi o immettere il proprio nome di connessione.
- Sottoscrizione: selezionare la sottoscrizione che include il servizio Database SQL di Azure.
- SQL Server: selezionare l'SQL Server.
- Database SQL: selezionare il database SQL.
- Tipo di client: linguaggio di codice o framework usato per connettersi al servizio di destinazione, ad esempio Python.
Al termine, selezionare Avanti: Autenticazione. Nella scheda Autenticazione immettere il nome utente e la password del database.
Selezionare Avanti: Networking>Avanti: Rivedi + crea>Crea.
Al termine della distribuzione, è possibile visualizzare le informazioni sulla nuova connessione nel riquadro Connettore di servizi.
Aggiorna contenitore
Dopo aver creato una connessione tra il cluster del servizio Azure Kubernetes e il database, è necessario recuperare i segreti di connessione e distribuirli nel contenitore.
Nel portale di Azure, passare alla risorsa del cluster del servizio Azure Kubernetes. In Impostazioni selezionare Service Connector (anteprima).
Selezionare la connessione appena creata quindi selezionare Frammento YAML. Questa azione apre un pannello che visualizza un file YAML di esempio generato da Connettore di servizi.
Per impostare i segreti di connessione come variabili di ambiente nel contenitore, sono disponibili due opzioni:
Creare direttamente una distribuzione usando il frammento di codice di esempio YAML fornito. Il frammento di codice include sezioni evidenziate che mostrano l'oggetto segreto che verrà inserito come variabili di ambiente. Selezionare Applica per procedere con questo metodo.
In alternativa, in tipo di risorsaselezionare Carico di lavoro Kubernetes, quindi selezionare un carico di lavoro Kubernetes esistente. Questa azione imposta l'oggetto segreto della nuova connessione come variabili di ambiente per il carico di lavoro selezionato. Dopo aver selezionato il carico di lavoro, selezionare Applica.
Aggiornare il codice dell'applicazione
Come passaggio finale, aggiornare il codice dell'applicazione per usare le variabili di ambiente seguendo queste istruzioni.
Pulire le risorse
Se non sono più necessarie le risorse create quando si segue questa esercitazione, è possibile rimuoverle eliminando il gruppo di risorse di Azure.
Eliminare il gruppo di risorse usando il comando az group delete
.
az group delete --resource-group $RESOURCE_GROUP
Contenuto correlato
Leggere gli articoli seguenti per altre informazioni sui concetti di connettore di servizi e su come consente al servizio Azure Kubernetes di connettersi ai servizi di Azure: