Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
AWS DevOps Guide d'intégration de l'Agent CLI
Présentation de
Avec AWS DevOps Agent, vous pouvez surveiller et gérer votre AWS infrastructure. Ce guide explique comment configurer l' AWS DevOps agent à l'aide de l'interface de ligne de AWS commande (AWS CLI). Vous créez des rôles IAM, configurez un espace d'agent et associez votre AWS compte. Vous activez également l'application opérateur et connectez éventuellement des intégrations tierces. Il faut environ 20 minutes pour compléter ce guide.
AWS DevOps L'agent est disponible dans six AWS régions : États-Unis Est (Virginie du Nord), États-Unis Ouest (Oregon), Asie-Pacifique (Sydney), Asie-Pacifique (Tokyo), Europe (Francfort) et Europe (Irlande). Pour plus d'informations sur les régions prises en charge, consultezRégions prises en charge.
Conditions préalables
Avant de commencer, assurez-vous de disposer des éléments suivants :
AWS CLI version 2 installée et configurée
Authentification auprès de votre compte AWS de surveillance
Autorisations permettant de créer des rôles AWS Identity and Access Management (IAM) et d'associer des politiques
Un AWS compte à utiliser comme compte de surveillance
Connaissance de la AWS CLI et de la syntaxe JSON
Tout au long de ce guide, remplacez les valeurs d'espace réservé suivantes par les vôtres :
<MONITORING_ACCOUNT_ID>— Votre identifiant de AWS compte à 12 chiffres pour le compte de surveillance (principal)<EXTERNAL_ACCOUNT_ID>— L'identifiant de AWS compte à 12 chiffres du compte secondaire à surveiller (utilisé à l'étape 4)<REGION>— Le code de AWS région de votre espace d'agent (par exemple,us-east-1oueu-central-1)<AGENT_SPACE_ID>— L'identifiant de l'espace agent renvoyé par lacreate-agent-spacecommande
Configuration des rôles IAM
1. Création du rôle DevOps d'espace Agent
Créez la politique de confiance IAM en exécutant la commande suivante :
cat > devops-agentspace-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "<MONITORING_ACCOUNT_ID>" }, "ArnLike": { "aws:SourceArn": "arn:aws:aidevops:<REGION>:<MONITORING_ACCOUNT_ID>:agentspace/*" } } } ] } EOF
Créez le rôle IAM :
aws iam create-role \ --region <REGION> \ --role-name DevOpsAgentRole-AgentSpace \ --assume-role-policy-document file://devops-agentspace-trust-policy.json
Enregistrez l'ARN du rôle en exécutant la commande suivante :
aws iam get-role --role-name DevOpsAgentRole-AgentSpace --query 'Role.Arn' --output text
Joignez la politique AWS gérée :
aws iam attach-role-policy \ --role-name DevOpsAgentRole-AgentSpace \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsAgentAccessPolicy
Créez et attachez une politique en ligne pour autoriser la création du rôle lié au service Resource Explorer :
cat > devops-agentspace-additional-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateServiceLinkedRoles", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::<MONITORING_ACCOUNT_ID>:role/aws-service-role/resource-explorer-2.amazonaws.com/AWSServiceRoleForResourceExplorer" ] } ] } EOF aws iam put-role-policy \ --role-name DevOpsAgentRole-AgentSpace \ --policy-name AllowCreateServiceLinkedRoles \ --policy-document file://devops-agentspace-additional-policy.json
2. Création du rôle IAM de l'application opérateur
Créez la politique de confiance IAM en exécutant la commande suivante :
cat > devops-operator-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:TagSession" ], "Condition": { "StringEquals": { "aws:SourceAccount": "<MONITORING_ACCOUNT_ID>" }, "ArnLike": { "aws:SourceArn": "arn:aws:aidevops:<REGION>:<MONITORING_ACCOUNT_ID>:agentspace/*" } } } ] } EOF
Créez le rôle IAM :
aws iam create-role \ --role-name DevOpsAgentRole-WebappAdmin \ --assume-role-policy-document file://devops-operator-trust-policy.json \ --region <REGION>
Enregistrez l'ARN du rôle en exécutant la commande suivante :
aws iam get-role --role-name DevOpsAgentRole-WebappAdmin --query 'Role.Arn' --output text
Joignez la politique de l'application AWS gérée pour les opérateurs :
aws iam attach-role-policy \ --role-name DevOpsAgentRole-WebappAdmin \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsOperatorAppAccessPolicy
Cette politique gérée accorde à l'application de l'opérateur les autorisations nécessaires pour accéder aux fonctionnalités de l'espace agent. Ces fonctionnalités incluent les enquêtes, les recommandations, la gestion des connaissances, le chat et l'intégration du AWS Support. La politique définit l'accès à l'espace d'agent spécifique en utilisant la aws:PrincipalTag/AgentSpaceId condition. Pour plus d'informations sur la liste complète des actions, consultezDevOps Autorisations IAM de l'agent.
Étapes d'intégration
1. Création d'un espace d'agent
Exécutez la commande suivante pour créer un espace d'agent :
aws devops-agent create-agent-space \ --name "MyAgentSpace" \ --description "AgentSpace for monitoring my application" \ --region <REGION>
Spécifiez éventuellement --kms-key-arn l'utilisation d'une clé AWS KMS gérée par le client pour le chiffrement. Vous pouvez également les utiliser --tags pour ajouter des balises de ressources et --locale définir la langue des réponses des agents.
Enregistrez le agentSpaceId depuis la réponse (située à l'adresseagentSpace.agentSpaceId).
Pour répertorier vos espaces d'agent ultérieurement, exécutez la commande suivante :
aws devops-agent list-agent-spaces \ --region <REGION>
2. Associez votre AWS compte
Associez votre AWS compte pour activer la découverte de topologies. Définissez accountType l'une des valeurs suivantes :
monitor— Le compte principal sur lequel se trouve l'espace agent. Ce compte héberge l'agent et est utilisé pour la découverte de la topologie.source— Un compte supplémentaire surveillé par l'agent. Utilisez ce type lorsque vous associez des comptes externes à l'étape 4.
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id aws \ --configuration '{ "aws": { "assumableRoleArn": "arn:aws:iam::<MONITORING_ACCOUNT_ID>:role/DevOpsAgentRole-AgentSpace", "accountId": "<MONITORING_ACCOUNT_ID>", "accountType": "monitor" } }' \ --region <REGION>
3. Activez l'application pour opérateurs
Les flux d'authentification peuvent utiliser IAM, IAM Identity Center (IDC) ou un fournisseur d'identité externe (IdP). Exécutez la commande suivante pour activer l'application opérateur pour votre espace agent :
aws devops-agent enable-operator-app \ --agent-space-id <AGENT_SPACE_ID> \ --auth-flow iam \ --operator-app-role-arn "arn:aws:iam::<MONITORING_ACCOUNT_ID>:role/DevOpsAgentRole-WebappAdmin" \ --region <REGION>
Pour l'authentification IAM Identity Center, utilisez --auth-flow idc et fournissez--idc-instance-arn. Pour un fournisseur d'identité externe, utilisez --auth-flow idp et fournissez --issuer-url--idp-client-id, et--idp-client-secret. Pour plus d’informations, consultez Configuration de l'authentification IAM Identity Center et Configuration de l'authentification par fournisseur d'identité externe (IdP).
4. (Facultatif) Associer des comptes sources supplémentaires
Pour surveiller des comptes supplémentaires avec AWS DevOps l'Agent, créez un rôle multi-comptes IAM.
Création du rôle multi-comptes dans le compte externe
Passez au compte externe et créez la politique de confiance. MONITORING_ACCOUNT_IDIl s'agit du compte principal qui héberge l'espace d'agent que vous avez configuré à l'étape 2. Cette configuration permet au service AWS DevOps Agent d'assumer un rôle dans les comptes sources secondaires au nom du compte de surveillance.
Exécutez la commande suivante pour créer la politique de confiance :
cat > devops-cross-account-trust-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "aidevops.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "<MONITORING_ACCOUNT_ID>", "sts:ExternalId": "arn:aws:aidevops:<REGION>:<MONITORING_ACCOUNT_ID>:agentspace/<AGENT_SPACE_ID>" } } } ] } EOF
Créez le rôle IAM entre comptes :
aws iam create-role \ --role-name DevOpsAgentCrossAccountRole \ --assume-role-policy-document file://devops-cross-account-trust-policy.json
Enregistrez l'ARN du rôle en exécutant la commande suivante :
aws iam get-role --role-name DevOpsAgentCrossAccountRole --query 'Role.Arn' --output text
Joignez la politique AWS gérée :
aws iam attach-role-policy \ --role-name DevOpsAgentCrossAccountRole \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsAgentAccessPolicy
Joignez la politique intégrée pour autoriser la création du rôle lié au service Resource Explorer dans le compte externe :
cat > devops-cross-account-additional-policy.json << 'EOF' { "Version": "2012-10-17", "Statement": [ { "Sid": "AllowCreateServiceLinkedRoles", "Effect": "Allow", "Action": [ "iam:CreateServiceLinkedRole" ], "Resource": [ "arn:aws:iam::<EXTERNAL_ACCOUNT_ID>:role/aws-service-role/resource-explorer-2.amazonaws.com/AWSServiceRoleForResourceExplorer" ] } ] } EOF aws iam put-role-policy \ --role-name DevOpsAgentCrossAccountRole \ --policy-name AllowCreateServiceLinkedRoles \ --policy-document file://devops-cross-account-additional-policy.json
Associer le compte externe
Revenez à votre compte de surveillance, puis exécutez la commande suivante pour associer le compte externe :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id aws \ --configuration '{ "sourceAws": { "accountId": "<EXTERNAL_ACCOUNT_ID>", "accountType": "source", "assumableRoleArn": "arn:aws:iam::<EXTERNAL_ACCOUNT_ID>:role/DevOpsAgentCrossAccountRole" } }' \ --region <REGION>
5. (Facultatif) Associer GitHub
Pour obtenir des instructions sur l'enregistrement GitHub via la console, consultezRaccordement aux CI/CD pipelines.
Répertoriez les services enregistrés :
aws devops-agent list-services \ --region <REGION>
Enregistrez le <SERVICE_ID> pour github ServiceType :.
Après vous être enregistré GitHub dans la console, associez GitHub des référentiels en exécutant la commande suivante :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "github": { "repoName": "<GITHUB_REPO_NAME>", "repoId": "<GITHUB_REPO_ID>", "owner": "<GITHUB_OWNER>", "ownerType": "organization" } }' \ --region <REGION>
6. (Facultatif) Inscrivez-vous et associez-vous ServiceNow
Tout d'abord, enregistrez le ServiceNow service avec des OAuth informations d'identification :
aws devops-agent register-service \ --service servicenow \ --service-details '{ "servicenow": { "instanceUrl": "<SERVICENOW_INSTANCE_URL>", "authorizationConfig": { "oAuthClientCredentials": { "clientName": "<SERVICENOW_CLIENT_NAME>", "clientId": "<SERVICENOW_CLIENT_ID>", "clientSecret": "<SERVICENOW_CLIENT_SECRET>" } } } }' \ --region <REGION>
Enregistrez le résultat<SERVICE_ID>, puis associez ServiceNow :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "servicenow": { "instanceUrl": "<SERVICENOW_INSTANCE_URL>" } }' \ --region <REGION>
7. (Facultatif) Enregistrez et associez Dynatrace
Tout d'abord, enregistrez le service Dynatrace avec des informations d'identification : OAuth
aws devops-agent register-service \ --service dynatrace \ --service-details '{ "dynatrace": { "accountUrn": "<DYNATRACE_ACCOUNT_URN>", "authorizationConfig": { "oAuthClientCredentials": { "clientName": "<DYNATRACE_CLIENT_NAME>", "clientId": "<DYNATRACE_CLIENT_ID>", "clientSecret": "<DYNATRACE_CLIENT_SECRET>" } } } }' \ --region <REGION>
Enregistrez le résultat<SERVICE_ID>, puis associez Dynatrace. Les ressources sont facultatives. L'environnement indique à quel environnement Dynatrace doit être associé.
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "dynatrace": { "envId": "<DYNATRACE_ENVIRONMENT_ID>", "resources": [ "<DYNATRACE_RESOURCE_1>", "<DYNATRACE_RESOURCE_2>" ] } }' \ --region <REGION>
La réponse inclut des informations sur le webhook pour l'intégration. Vous pouvez utiliser ce webhook pour déclencher une enquête auprès de Dynatrace. Pour de plus amples informations, veuillez consulter Connecter Dynatrace.
8. (Facultatif) Enregistrez et associez Splunk
Enregistrez d'abord le service Splunk avec des BearerToken informations d'identification.
Le point de terminaison utilise le format suivant : https://<XXX>.api.scs.splunk.com/<XXX>/mcp/v1/
aws devops-agent register-service \ --service mcpserversplunk \ --service-details '{ "mcpserversplunk": { "name": "<SPLUNK_NAME>", "endpoint": "<SPLUNK_ENDPOINT>", "authorizationConfig": { "bearerToken": { "tokenName": "<SPLUNK_TOKEN_NAME>", "tokenValue": "<SPLUNK_TOKEN_VALUE>" } } } }' \ --region <REGION>
Enregistrez le résultat<SERVICE_ID>, puis associez Splunk :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "mcpserversplunk": { "name": "<SPLUNK_NAME>", "endpoint": "<SPLUNK_ENDPOINT>" } }' \ --region <REGION>
La réponse inclut des informations sur le webhook pour l'intégration. Vous pouvez utiliser ce webhook pour déclencher une enquête depuis Splunk. Pour de plus amples informations, veuillez consulter Connecter Splunk.
9. (Facultatif) Enregistrez et associez New Relic
Enregistrez d'abord le service New Relic avec les informations d'identification clés de l'API.
Région : L'un US ou l'autreEU.
Champs facultatifs :applicationIds,entityGuids, alertPolicyIds
aws devops-agent register-service \ --service mcpservernewrelic \ --service-details '{ "mcpservernewrelic": { "authorizationConfig": { "apiKey": { "apiKey": "<YOUR_NEW_RELIC_API_KEY>", "accountId": "<YOUR_ACCOUNT_ID>", "region": "US", "applicationIds": ["<APP_ID_1>", "<APP_ID_2>"], "entityGuids": ["<ENTITY_GUID_1>"], "alertPolicyIds": ["<POLICY_ID_1>"] } } } }' \ --region <REGION>
Enregistrez le résultat<SERVICE_ID>, puis associez New Relic :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "mcpservernewrelic": { "accountId": "<YOUR_ACCOUNT_ID>", "endpoint": "https://mcp.newrelic.com/mcp/" } }' \ --region <REGION>
La réponse inclut des informations sur le webhook pour l'intégration. Vous pouvez utiliser ce webhook pour lancer une enquête auprès de New Relic. Pour de plus amples informations, veuillez consulter Connecter New Relic.
10. (Facultatif) Enregistrez et associez Datadog
Vous devez d'abord enregistrer Datadog via la console de l' AWS DevOps Agent en utilisant le OAuth flux avant de pouvoir l'associer via la CLI. Pour de plus amples informations, veuillez consulter Connecter DataDog.
Répertoriez les services enregistrés :
aws devops-agent list-services \ --region <REGION>
Enregistrez le <SERVICE_ID> pour mcpserverdatadog ServiceType :.
Associez ensuite Datadog :
aws devops-agent associate-service \ --agent-space-id <AGENT_SPACE_ID> \ --service-id <SERVICE_ID> \ --configuration '{ "mcpserverdatadog": { "name": "Datadog-MCP-Server", "endpoint": "<DATADOG_MCP_ENDPOINT>" } }' \ --region <REGION>
La réponse inclut des informations sur le webhook pour l'intégration. Vous pouvez utiliser ce webhook pour déclencher une enquête depuis Datadog. Pour de plus amples informations, veuillez consulter Connecter DataDog.
11. (Facultatif) Supprimer un espace d'agent
La suppression d'un espace d'agent entraîne la suppression de toutes les associations, configurations et données d'investigation associées à cet espace d'agent. Cette action ne peut être annulée.
Pour supprimer un espace d'agent, exécutez la commande suivante :
aws devops-agent delete-agent-space \ --agent-space-id <AGENT_SPACE_ID> \ --region <REGION>
Vérification
Pour vérifier votre configuration, exécutez les commandes suivantes :
# List your agent spaces aws devops-agent list-agent-spaces \ --region <REGION> # Get details of a specific agent space aws devops-agent get-agent-space \ --agent-space-id <AGENT_SPACE_ID> \ --region <REGION> # List associations for an agent space aws devops-agent list-associations \ --agent-space-id <AGENT_SPACE_ID> \ --region <REGION>
Étapes suivantes
Pour connecter des intégrations supplémentaires, voirConfiguration des fonctionnalités de AWS DevOps l'agent.
Pour en savoir plus sur les compétences et les capacités des agents, voirDevOps Compétences des agents.
Pour comprendre l'application Web destinée aux opérateurs, voirQu'est-ce qu'une application Web pour DevOps agents ?.
Remarques
Remplacez
<AGENT_SPACE_ID><MONITORING_ACCOUNT_ID>,<EXTERNAL_ACCOUNT_ID>,<REGION>, et ainsi de suite par vos valeurs réelles.Pour obtenir une liste des régions prises en charge, consultez Régions prises en charge.