Configuración de Private Link para experimentos basados en agente (versión preliminar)
En este artículo se explican los pasos necesarios para configurar Azure Private Link para un experimento basado en agente de Azure Chaos Studio (versión preliminar). La experiencia del usuario actual se basa en la compatibilidad con los puntos de conexión privados habilitados como parte de la versión preliminar pública de la característica de puntos de conexión privados. Espere que esta experiencia evolucione con el tiempo, ya que la característica se ha mejorado a la calidad de disponibilidad general (GA). Actualmente está en versión preliminar.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.
- Defina el experimento basado en agente siguiendo los pasos descritos en Creación de un experimento de Chaos que use un error basado en agente con Azure Portal.
Nota:
Si el recurso de destino se creó mediante Azure Portal, la extensión de máquina virtual (VM) del agente Chaos se instala automáticamente en la máquina virtual host. Si el destino se habilita mediante la CLI de Azure, siga la documentación de Chaos Studio para instalar primero la extensión VM en la máquina virtual. Hasta que finalice la configuración del punto de conexión privado, la extensión de máquina virtual notifica un estado incorrecto. Este comportamiento es normal.
Limitaciones
- Deberá usar nuestra API de REST 2023-10-27-preview para crear y usar un vínculo privado solo para experimentos basados en agente. No hay compatibilidad con vínculo privado para experimentos basados en agentes en nuestra API de REST estable de disponibilidad general hasta la primera mitad de 2024.
- Toda la experiencia de un extremo a otro para este flujo requiere algún uso de la CLI. La experiencia de un extremo a otro actual no se puede realizar desde Azure Portal.
- El tipo de recurso Chaos Studio Private Accesses (CSPA) tiene una asignación estricta de 1 a 1 de Chaos Target:CSPA Resource (abstracción para punto de conexión privado). Solo se permiten cinco recursos de CSPA que se creen por suscripción para mantener la experiencia esperada para todos nuestros clientes.
Creación de un recurso de Chaos Studio Private Access
Para usar puntos de conexión privados para experimentos de Chaos basados en agentes, debe crear un nuevo tipo de recurso denominado Chaos Studio Private Accesses. CSPA es el recurso en el que se crean los puntos de conexión privados.
Actualmente, este recurso solo se puede crear a partir de la CLI. Consulte el código de ejemplo siguiente para obtener información sobre cómo crear este tipo de recurso:
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://centraluseuap.management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>?api-version=2023-10-27-preview" --body '
{
"location": "<resourceLocation>",
"properties": {
"id": "<CSPAResourceName>",
"name": "<CSPAResourceName>",
"location": "<resourceLocation>",
"type": "Microsoft.Chaos/privateAccesses",
"resourceId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAResourceName>"
}
}'
Nombre | Obligatorio | Type | Descripción |
---|---|---|---|
subscriptionID | True | String | GUID que representa un identificador de suscripción de Azure. |
resourceGroupName | True | String | Cadena que representa un grupo de recursos de Azure. |
CSPAResourceName | True | String | Cadena que representa el nombre que desea asignar al recurso de Chaos Studio Private Access. |
resourceLocation | True | String | Ubicación donde quiere que el recurso se hospede (debe ser una región admitida por Chaos Studio). |
Creación de una red virtual, una subred y un punto de conexión privado
Configure la red virtual, la subred y el punto de conexión deseados para el experimento si aún no lo ha hecho.
Asegúrese de asociarlo a la misma red virtual de la máquina virtual. Las capturas de pantalla proporcionan ejemplos de creación de la red virtual, la subred y el punto de conexión privado. Debe establecer Tipo de recurso en Microsoft.Chaos/privateAccesses tal como se muestra en la captura de pantalla.
Asignación de la máquina virtual host del agente al recurso de CSPA
Busque el Resource ID
de destino realizando una llamada a GetTarget
:
GET https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{parentProviderNamespace}/{parentResourceType}/{parentResourceName}/providers/Microsoft.Chaos/targets/{targetName}?api-version=2023-10-27-preview
El comando GET
devuelve una respuesta grande. Anote esta respuesta. Usamos esta respuesta y la modificamos antes de ejecutar un comando PUT Target
para asignar los dos recursos.
Invoque un comando PUT Target
mediante esta respuesta. Debe anexar dos campos más al cuerpo del comando PUT
antes de ejecutarlo.
Estos campos adicionales se muestran aquí:
"privateAccessId": "subscriptions/<subID>/...
"allowPublicAccess": false
},
Este es un bloque de ejemplo del aspecto que debe tener el comando PUT Target
y los campos que tendría que rellenar:
Nota:
Copie el cuerpo del comando anterior GET
. Debe anexar manualmente los campos privateAccessID
y allowPublicAccess
.
az rest --verbose --skip-authorization-header --header "Authorization=Bearer $accessToken" --method PUT --uri "https://management.azure.com/subscriptions/<subscriptionID>/resourceGroups/<resourceGroup>/providers/Microsoft.Compute/virtualMachines/<VMSSname>/providers/Microsoft.Chaos/targets/Microsoft-Agent?api-version=2023-10-27-preview " --body ' {
"id": "/subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/microsoft.compute/virtualmachines/<VMSSName>/providers/Microsoft.Chaos/targets/Microsoft-Agent",
"type": "Microsoft.Chaos/targets",
"name": "Microsoft-Agent",
"location": "<resourceLocation>",
"properties": {
"agentProfileId": "<from target resource>",
"identities": [
{
"type": "AzureManagedIdentity",
"clientId": "<clientID>",
"tenantId": "<tenantID>"
}
],
"agentTenantId": "CHAOSSTUDIO",
"privateAccessId": "subscriptions/<subscriptionID>/resourceGroups/<resourceGroupName>/providers/Microsoft.Chaos/privateAccesses/<CSPAresourceName>",
"allowPublicAccess": false
}} '
Nota:
El valor PrivateAccessID
debe coincidir exactamente con el valor resourceID
que usó para crear el recurso CSPA en la sección anterior Crear un recurso de Acceso privado de Chaos Studio.
Reinicio del servicio de agente de Azure Chaos en la máquina virtual
Después de realizar todos los cambios necesarios en el host, reinicie el servicio de agente de Azure Chaos en la máquina virtual.
Windows
Linux
En Linux, ejecute el siguiente comando desde la CLI:
Systemctl restart azure-chaos-agent
Ejecución del experimento basado en agente mediante puntos de conexión privados
Después del reinicio, el agente de Azure Chaos debe poder comunicarse con el servicio del plano de datos de comunicación del agente y el registro del agente en el plano de datos debe realizarse correctamente. Después del registro correcto, el agente puede indicar su estado con un latido. A continuación, puede continuar para ejecutar los experimentos basados en agente de Azure Chaos mediante puntos de conexión privados.