기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS DevOps Agent CLI 온보딩 가이드
개요
AWS DevOps 에이전트를 사용하면 AWS 인프라를 모니터링하고 관리할 수 있습니다. 이 가이드에서는 AWS 명령줄 인터페이스(AWS CLI)를 사용하여 up AWS DevOps 에이전트를 설정하는 방법을 안내합니다. IAM 역할을 생성하고, 에이전트 공간을 설정하고, AWS 계정을 연결합니다. 또한 운영자 앱을 활성화하고 선택적으로 타사 통합을 연결합니다. 이 안내서를 완료하는 데 약 20분이 걸립니다.
AWS DevOps 에이전트는 미국 동부(버지니아 북부), 미국 서부(오레곤), 아시아 태평양(시드니), 아시아 태평양(도쿄), 유럽(프랑크푸르트) 및 유럽(아일랜드)의 6개 AWS 리전에서 사용할 수 있습니다. 지원되는 리전에 대한 자세한 내용은 섹션을 참조하세요지원되는 리전:.
사전 조건
시작하기 전에 다음 사항을 갖췄는지 확인하세요.
AWS CLI 버전 2 설치 및 구성
AWS 모니터링 계정에 대한 인증
AWS Identity and Access Management(IAM) 역할을 생성하고 정책을 연결할 수 있는 권한
모니터링 AWS 계정으로 사용할 계정
AWS CLI 및 JSON 구문에 대한 지식
이 가이드 전체에서 다음 자리 표시자 값을 사용자의 값으로 바꿉니다.
<MONITORING_ACCOUNT_ID>- 모니터링(기본) AWS 계정의 12자리 계정 ID<EXTERNAL_ACCOUNT_ID>- 모니터링할 보조 AWS 계정의 12자리 계정 ID(4단계에서 사용됨)<REGION>- 에이전트 공간의 AWS 리전 코드(예:us-east-1또는eu-central-1)<AGENT_SPACE_ID>-create-agent-space명령에서 반환되는 에이전트 공간 식별자입니다.
IAM 역할 설정
1. DevOps 에이전트 스페이스 역할 생성
다음 명령을 실행하여 IAM 신뢰 정책을 생성합니다.
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
IAM 역할을 생성합니다.
aws iam create-role \ --region <REGION> \ --role-name DevOpsAgentRole-AgentSpace \ --assume-role-policy-document file://devops-agentspace-trust-policy.json
다음 명령을 실행하여 역할 ARN을 저장합니다.
aws iam get-role --role-name DevOpsAgentRole-AgentSpace --query 'Role.Arn' --output text
AWS 관리형 정책을 연결합니다.
aws iam attach-role-policy \ --role-name DevOpsAgentRole-AgentSpace \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsAgentAccessPolicy
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. 운영자 앱 IAM 역할 생성
다음 명령을 실행하여 IAM 신뢰 정책을 생성합니다.
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
IAM 역할을 생성합니다.
aws iam create-role \ --role-name DevOpsAgentRole-WebappAdmin \ --assume-role-policy-document file://devops-operator-trust-policy.json \ --region <REGION>
다음 명령을 실행하여 역할 ARN을 저장합니다.
aws iam get-role --role-name DevOpsAgentRole-WebappAdmin --query 'Role.Arn' --output text
AWS 관리형 운영자 앱 정책을 연결합니다.
aws iam attach-role-policy \ --role-name DevOpsAgentRole-WebappAdmin \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsOperatorAppAccessPolicy
이 관리형 정책은 운영자 앱에 에이전트 공간 기능에 액세스할 수 있는 권한을 부여합니다. 이러한 기능에는 조사, 권장 사항, 지식 관리, 채팅 및 AWS 지원 통합이 포함됩니다. 이 정책은 aws:PrincipalTag/AgentSpaceId 조건을 사용하여 특정 에이전트 공간에 대한 액세스 범위를 지정합니다. 전체 작업 목록에 대한 자세한 내용은 섹션을 참조하세요DevOps 에이전트 IAM 권한.
온보딩 단계
1. 에이전트 공간 생성
다음 명령을 실행하여 에이전트 공간을 생성합니다.
aws devops-agent create-agent-space \ --name "MyAgentSpace" \ --description "AgentSpace for monitoring my application" \ --region <REGION>
선택적으로 암호화--kms-key-arn에 고객 관리형 AWS KMS 키를 사용하도록를 지정합니다. --tags를 사용하여 리소스 태그를 추가하고 에이전트 응답 --locale 언어를 설정할 수도 있습니다.
응답agentSpaceId에서를 저장합니다(에 위치agentSpace.agentSpaceId).
나중에 에이전트 공간을 나열하려면 다음 명령을 실행합니다.
aws devops-agent list-agent-spaces \ --region <REGION>
2. AWS 계정 연결
AWS 계정을 연결하여 토폴로지 검색을 켭니다. accountType를 다음 값 중 하나로 설정합니다.
monitor- 에이전트 공간이 있는 기본 계정입니다. 이 계정은 에이전트를 호스팅하며 토폴로지 검색에 사용됩니다.source- 에이전트가 모니터링하는 추가 계정입니다. 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. 연산자 앱 활성화
인증 흐름은 IAM, IAM Identity Center(IDC) 또는 외부 ID 제공업체(IdP)를 사용할 수 있습니다. 다음 명령을 실행하여 에이전트 공간에 운영자 앱을 활성화합니다.
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>
IAM Identity Center 인증의 경우 --auth-flow idc를 사용하고를 제공합니다--idc-instance-arn. 외부 자격 증명 공급자의 경우를 --auth-flow idp 사용하고 --issuer-url, 및 --idp-client-id를 제공합니다--idp-client-secret. 자세한 내용은 IAM Identity Center 인증 설정 및 외부 ID 제공업체(IdP) 인증 설정 섹션을 참조하세요.
4. (선택 사항) 추가 소스 계정 연결
AWS DevOps Agent를 사용하여 추가 계정을 모니터링하려면 IAM 교차 계정 역할을 생성합니다.
외부 계정에서 교차 계정 역할 생성
외부 계정으로 전환하고 신뢰 정책을 생성합니다. MONITORING_ACCOUNT_ID는 2단계에서 설정한 에이전트 공간을 호스팅하는 기본 계정입니다. 이 구성을 사용하면 AWS DevOps 에이전트 서비스가 모니터링 계정을 대신하여 보조 소스 계정에서 역할을 수임할 수 있습니다.
다음 명령을 실행하여 신뢰 정책을 생성합니다.
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
교차 계정 IAM 역할을 생성합니다.
aws iam create-role \ --role-name DevOpsAgentCrossAccountRole \ --assume-role-policy-document file://devops-cross-account-trust-policy.json
다음 명령을 실행하여 역할 ARN을 저장합니다.
aws iam get-role --role-name DevOpsAgentCrossAccountRole --query 'Role.Arn' --output text
AWS 관리형 정책을 연결합니다.
aws iam attach-role-policy \ --role-name DevOpsAgentCrossAccountRole \ --policy-arn arn:aws:iam::aws:policy/AIDevOpsAgentAccessPolicy
외부 계정에서 Resource Explorer 서비스 연결 역할을 생성할 수 있도록 인라인 정책을 연결합니다.
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
외부 계정 연결
모니터링 계정으로 다시 전환한 다음 다음 명령을 실행하여 외부 계정을 연결합니다.
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. (선택 사항) GitHub 연결
콘솔을 통해 GitHub를 등록하는 방법에 대한 지침은 섹션을 참조하세요CI/CD 파이프라인에 연결.
등록된 서비스를 나열합니다.
aws devops-agent list-services \ --region <REGION>
serviceType:에 <SERVICE_ID> 대한를 저장합니다github.
콘솔에 GitHub를 등록한 후 다음 명령을 실행하여 GitHub 리포지토리를 연결합니다.
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. (선택 사항) ServiceNow 등록 및 연결
먼저 ServiceNow 서비스를 OAuth 자격 증명으로 등록합니다.
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>
반환된를 저장<SERVICE_ID>한 다음 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. (선택 사항) Dynatrace 등록 및 연결
먼저 Dynatrace 서비스를 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>
반환된를 저장<SERVICE_ID>한 다음 Dynatrace를 연결합니다. 리소스는 선택 사항입니다. 환경은 연결할 Dynatrace 환경을 지정합니다.
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>
응답에는 통합을 위한 웹후크 정보가 포함됩니다. 이 웹후크를 사용하여 Dynatrace에서 조사를 트리거할 수 있습니다. 자세한 내용은 Dynatrace 연결 단원을 참조하십시오.
8. (선택 사항) Splunk 등록 및 연결
먼저 BearerToken 자격 증명으로 Splunk 서비스를 등록합니다.
엔드포인트는 다음 형식을 사용합니다. 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>
반환된를 저장<SERVICE_ID>한 다음 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>
응답에는 통합을 위한 웹후크 정보가 포함됩니다. 이 웹후크를 사용하여 Splunk에서 조사를 트리거할 수 있습니다. 자세한 내용은 Splunk 연결 단원을 참조하십시오.
9. (선택 사항) New Relic 등록 및 연결
먼저 New Relic 서비스를 API 키 자격 증명으로 등록합니다.
리전: US 또는 EU.
선택적 필드: 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>
반환된를 저장<SERVICE_ID>한 다음 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>
응답에는 통합을 위한 웹후크 정보가 포함됩니다. 이 웹후크를 사용하여 New Relic에서 조사를 트리거할 수 있습니다. 자세한 내용은 새 복제본 연결 단원을 참조하십시오.
10. (선택 사항) Datadog 등록 및 연결
CLI를 통해 연결하려면 먼저 OAuth 흐름을 사용하여 AWS DevOps 에이전트 콘솔을 통해 Datadog을 등록해야 합니다. 자세한 내용은 DataDog 연결 단원을 참조하십시오.
등록된 서비스를 나열합니다.
aws devops-agent list-services \ --region <REGION>
serviceType:에 <SERVICE_ID> 대한를 저장합니다mcpserverdatadog.
그런 다음 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>
응답에는 통합을 위한 웹후크 정보가 포함됩니다. 이 웹후크를 사용하여 Datadog에서 조사를 트리거할 수 있습니다. 자세한 내용은 DataDog 연결 단원을 참조하십시오.
11. (선택 사항) 에이전트 공간 삭제
에이전트 공간을 삭제하면 해당 에이전트 공간에 대한 모든 연결, 구성 및 조사 데이터가 제거됩니다. 이 작업은 실행 취소할 수 없습니다.
에이전트 공간을 삭제하려면 다음 명령을 실행합니다.
aws devops-agent delete-agent-space \ --agent-space-id <AGENT_SPACE_ID> \ --region <REGION>
Verification(확인)
설정을 확인하려면 다음 명령을 실행합니다.
# 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>
다음 단계
추가 통합을 연결하려면 섹션을 참조하세요AWS DevOps Agent에 대한 기능 구성.
에이전트 기술 및 기능에 대한 자세한 내용은 섹션을 참조하세요DevOps 에이전트 기술.
연산자 웹 앱을 이해하려면 섹션을 참조하세요DevOps 에이전트 웹 앱이란 무엇입니까?.
참고
<AGENT_SPACE_ID>,<MONITORING_ACCOUNT_ID>,<EXTERNAL_ACCOUNT_ID><REGION>, 등을 실제 값으로 바꿉니다.지원되는 리전 목록은 지원되는 리전: 섹션을 참조하세요.