Tutorial: Conexión de una aplicación de AKS a Azure SQL Database (versión preliminar)
En este tutorial, aprenderá a conectar una aplicación implementada a AKS, a una instancia de Azure SQL Database, mediante el conector de servicio (versión preliminar). Debe realizar las siguientes tareas:
- Creación de un recurso de Azure SQL Database
- Cree una conexión entre el clúster de AKS y la base de datos con Service Connector.
- Actualización del contenedor
- Actualizar el código de la aplicación
- Limpie los recursos de Azure.
Advertencia
Microsoft recomienda usar el flujo de autenticación más seguro disponible. El flujo de autenticación que se describe en este procedimiento requiere un alto grado de confianza en la aplicación y conlleva riesgos que no están presentes en otros flujos. Solo debe usar este flujo cuando otros flujos más seguros, como las identidades administradas, no sean viables. Consulte el tutorial utilizando una identidad administrada.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Una aplicación implementada en AKS.
-
Use el entorno de Bash en Azure Cloud Shell. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
En caso de que se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
Crear una instancia de Azure SQL Database
Cree un grupo de recursos para almacenar los recursos de Azure que cree en este tutorial mediante el comando
az group create
.az group create \ --name $RESOURCE_GROUP \ --location eastus
Siga las instrucciones para crear una base de datos Azure SQL en el grupo de recursos que creó en el paso anterior. Anote el nombre del servidor, el nombre de la base de datos y las credenciales de base de datos para su uso en este tutorial.
Creación de una conexión de servicio en AKS con Service Connector (versión preliminar)
Registro de los proveedores de recursos de Service Connector y Configuración de Kubernetes
Registre los proveedores de recursos de Service Connector y Configuración de Kubernetes mediante el comando az provider register
.
az provider register --namespace Microsoft.ServiceLinker
az provider register --namespace Microsoft.KubernetesConfiguration
Sugerencia
Puede comprobar si estos proveedores de recursos ya están registrados mediante los comandos az provider show --namespace "Microsoft.ServiceLinker" --query registrationState
y az provider show --namespace "Microsoft.KubernetesConfiguration" --query registrationState
. Si la salida es Registered
, el proveedor de servicios ya está registrado.
Crear una nueva conexión
Cree una conexión de servicio entre el clúster de AKS y la base de datos SQL en Azure Portal o la CLI de Azure.
En el Azure Portal, vaya al recurso de clúster de AKS.
Seleccione Configuración>Service Connector (versión preliminar)>Crear.
En la pestaña Información básica, configure los siguientes valores:
- Espacio de nombres de Kubernetes: Seleccione Predeterminado.
- Tipo de servicio: Seleccione SQL Database.
- Nombre de conexión: Use el nombre de conexión proporcionado por Service Connector o escriba su propio nombre de conexión.
- Suscripción: Seleccione la suscripción que incluye el servicio Azure SQL Database.
- SQL Server: Seleccione el servidor SQL Server.
- Base de datos SQL: Seleccione la base de datos SQL.
- Tipo de cliente: El lenguaje de código o el marco que se usa para conectarse al servicio de destino, como Python.
Seleccione Siguiente: Autenticación. En la pestaña Autenticación, escriba el nombre de usuario y la contraseña de la base de datos.
Seleccione Siguiente: Redes>Siguiente: Revisar y crear>Crear.
Una vez que la implementación se realiza correctamente, puede ver información sobre la nueva conexión en el panel Service Connector.
Actualización del contenedor
Ahora que ha creado una conexión entre el clúster de AKS y la base de datos, debe recuperar los secretos de conexión e implementarlos en el contenedor.
En Azure Portal, vaya al recurso de clúster de AKS y seleccione Service Connector (versión preliminar).
Seleccione la conexión recién creada y, a continuación, seleccione Fragmento de código YAML. Esta acción abre un panel que muestra un archivo YAML de ejemplo generado por Service Connector.
Para establecer los secretos de conexión como variables de entorno en el contenedor, tiene dos opciones:
Cree directamente una implementación mediante el fragmento de código de ejemplo de YAML proporcionado. El fragmento de código incluye secciones resaltadas que muestran el objeto secreto que se insertará como variables de entorno. Seleccione Aplicar para continuar con este método.
Como alternativa, en Tipo de recurso, seleccione Carga de trabajo de Kubernetes, y a continuación, seleccione una carga de trabajo de Kubernetes existente. Esta acción establece el objeto secreto de la nueva conexión como variables de entorno para la carga de trabajo seleccionada. Después de seleccionar la carga de trabajo, seleccione Aplicar.
Actualizar el código de la aplicación
Como último paso, actualice el código de la aplicación para usar las variables de entorno siguiendo estas instrucciones.
Limpieza de recursos
Si ya no necesita los recursos que creó al seguir este tutorial, puede quitarlos eliminando el grupo de recursos de Azure.
Elimine el grupo de recursos mediante el comando az group delete
.
az group delete --resource-group $RESOURCE_GROUP
Contenido relacionado
Lea los artículos siguientes para obtener más información sobre los conceptos de Service Connector y cómo ayuda a AKS a conectarse a los servicios de Azure: