Configurer Private Link pour les expériences basées sur des agents (préversion)
Cet article explique les étapes nécessaires pour configurer Azure Private Link pour une expérience basée sur un agent Azure Chaos Studio (préversion). L’expérience utilisateur actuelle est basée sur la prise en charge des points de terminaison privés activée dans le cadre de la préversion publique de la fonctionnalité de points de terminaison privés. Attendez-vous à ce que cette expérience évolue avec le temps à mesure que la fonctionnalité est améliorée pour atteindre la qualité de disponibilité générale (GA). Elle est actuellement en version préliminaire.
Prérequis
- Compte Azure avec un abonnement actif. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Définissez votre expérience basée sur un agent en suivant les étapes décrites dans Créer une expérience de chaos qui utilise une erreur basée sur un agent avec le Portail Microsoft Azure.
Remarque
Si la ressource cible a été créée à l’aide du Portail Microsoft Azure, l’extension de machine virtuelle (VM) Chaos Agent est automatiquement installée sur la machine virtuelle hôte. Si la cible est activée à l'aide d'Azure CLI, suivez la documentation de Chaos Studio pour installer d'abord l'extension de VM sur la VM. Jusqu'à ce que vous ayez terminé la configuration du point de terminaison privé, l'extension de VM signale un état défectueux. Il s’agit du comportement attendu.
Limites
- Vous devez utiliser notre API REST 2023-10-27-preview pour créer et utiliser Private Link uniquement pour les expériences basées sur un agent. Il n'y a pas de prise en charge de Private Link pour les expériences basées sur des agents dans notre API REST GA-stable jusqu'au premier semestre 2024.
- L’ensemble de l’expérience de bout en bout de ce flux nécessite une certaine utilisation de l’interface CLI. L’expérience de bout en bout actuelle ne peut pas être réalisée à partir du Portail Microsoft Azure.
- Le type de ressource Chaos Studio Private Accesses (CSPA) a un mappage strict 1 :1 de la ressource Chaos Target :CSPA (abstraction pour le point de terminaison privé). Nous n’autorisez que cinq ressources CSPA à créer par abonnement pour maintenir l’expérience attendue pour tous nos clients.
Créer une ressource d'accès privé à Chaos Studio
Pour utiliser des points de terminaison privés pour des expériences de chaos basées sur des agents, vous devez créer un nouveau type de ressource appelé Chaos Studio Private Accesses. CSPA est la ressource sur laquelle les points de terminaison privés sont créés.
Actuellement, cette ressource ne peut être créée qu’à partir de l’interface CLI. Consultez l'exemple de code suivant pour savoir comment créer ce type de ressource :
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>"
}
}'
Nom | Requise | Type | Description |
---|---|---|---|
subscriptionID | True | Chaîne | GUID qui représente un ID d’abonnement Azure. |
resourceGroupName | True | Chaîne | Chaîne qui représente un groupe de ressources Azure. |
CSPAResourceName | True | Chaîne | Chaîne qui représente le nom que vous souhaitez donner à votre ressource Chaos Studio Private Access. |
resourceLocation | True | Chaîne | Emplacement où vous souhaitez que la ressource soit hébergée (doit être une région prise en charge par Chaos Studio). |
Créez votre réseau virtuel, votre sous-réseau et votre point de terminaison privé
Configurez le réseau virtuel, le sous-réseau et le point de terminaison souhaités pour l'expérience si vous ne l'avez pas déjà fait.
Assurez-vous de l'attacher au réseau virtuel de la même VM. Les captures d'écran fournissent des exemples de création du réseau virtuel, du sous-réseau et du point de terminaison privé. Vous devez définir type de ressource sur Microsoft.Chaos/privateAccesses comme indiqué dans la capture d’écran.
Mapper la machine virtuelle hôte de l’agent à la ressource CSPA
Trouvez la cible Resource ID
en appelant 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
La commande GET
retourne une réponse importante. Notez cette réponse. Nous utilisons cette réponse et la modifions avant d’exécuter une commande PUT Target
pour mapper les deux ressources.
Appelez une commande PUT Target
à l’aide de cette réponse. Vous devez ajouter deux champs supplémentaires au corps de la commande PUT
avant de l’exécuter.
Ces champs supplémentaires sont présentés ici :
"privateAccessId": "subscriptions/<subID>/...
"allowPublicAccess": false
},
Voici un exemple de bloc pour ce que la commande PUT Target
doit ressembler et les champs à remplir :
Remarque
Copiez le corps de la commande GET
précédente. Vous devez ajouter manuellement les champs privateAccessID
et 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
}} '
Remarque
La valeur PrivateAccessID
doit correspondre exactement à la valeur resourceID
que vous avez utilisée pour créer la ressource CSPA dans la section précédente Créer une ressource d’accès privé Chaos Studio.
Redémarrer le service Azure Chaos Agent dans la machine virtuelle
Après avoir apporté toutes les modifications requises à l’hôte, redémarrez le service Azure Chaos Agent dans la machine virtuelle.
Windows
Linux
Pour Linux, exécutez la commande suivante à partir de l’interface CLI :
Systemctl restart azure-chaos-agent
Exécutez votre expérience basée sur un agent en utilisant des points de terminaison privés
Après le redémarrage, Azure Chaos Agent doit être en mesure de communiquer avec le service de plan de données Agent Communication et l’inscription de l’agent au plan de données doit réussir. Après une inscription réussie, l'agent peut indiquer son statut avec un battement de cœur. Vous pouvez ensuite procéder à l’exécution des expériences basées sur Azure Chaos Agent à l’aide de points de terminaison privés.