이 문서는 AWS CLI의 버전 1에만 해당합니다.
곧 AWS CLI 버전 1에 대한 지원이 종료될 예정임을 알려드립니다. AWS CLI 버전 2로 마이그레이션하는 것이 좋습니다. 마이그레이션 날짜, 추가 세부 정보 및 방법에 대한 자세한 내용은 공지 사항
AWS CLI를 사용한 AWS Cloud Map 예시
다음 코드 예시는 AWS Cloud Map과 함께 AWS Command Line Interface를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.
작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.
각 예시에는 전체 소스 코드에 대한 링크가 포함되어 있으며, 여기에서 컨텍스트에 맞춰 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있습니다.
주제
작업
다음 코드 예시는 create-http-namespace의 사용 방법을 보여줍니다.
- AWS CLI
-
HTTP 네임스페이스 생성
다음
create-http-namespace예시에서는 HTTP 네임스페이스example.com을 생성합니다.aws servicediscovery create-http-namespace \ --nameexample.com\ --creator-request-idexample-request-id출력:
{ "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.네임스페이스 생성에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 애플리케이션 서비스를 그룹화하기 위한 AWS Cloud Map 네임스페이스 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateHttpNamespace
를 참조하세요.
-
다음 코드 예시는 create-private-dns-namespace의 사용 방법을 보여줍니다.
- AWS CLI
-
프라이빗 DNS 네임스페이스 생성
다음
create-private-dns-namespace예시에서는 프라이빗 DNS 네임스페이스를 생성합니다.aws servicediscovery create-private-dns-namespace \ --nameexample.com\ --vpcvpc-1c56417b출력:
{ "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.자세한 내용은 AWS Cloud Map 개발자 안내서의 네임스페이스 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreatePrivateDnsNamespace
를 참조하세요.
-
다음 코드 예시는 create-public-dns-namespace의 사용 방법을 보여줍니다.
- AWS CLI
-
퍼블릭 DNS 네임스페이스 생성
다음
create-public-dns-namespace예시에서는 퍼블릭 DNS 네임스페이스example.com을 생성합니다.aws servicediscovery create-public-dns-namespace \ --nameexample-public-dns.com\ --creator-request-idexample-public-request-id\ --propertiesDnsProperties={SOA={TTL=60}}출력:
{ "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd" }작업이 성공했는지 확인하려면
get-operation을 실행합니다.네임스페이스 생성에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 애플리케이션 서비스를 그룹화하기 위한 AWS Cloud Map 네임스페이스 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreatePublicDnsNamespace
를 참조하세요.
-
다음 코드 예시는 create-service의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 네임스페이스 ID를 사용하여 서비스 생성
다음
create-service예시에서는 서비스를 생성합니다.aws servicediscovery create-service \ --namemyservice\ --namespace-idns-ylexjili4cdxy3xm\ --dns-config"RoutingPolicy=MULTIVALUE,DnsRecords=[{Type=A,TTL=60}]"출력:
{ "Service": { "Id": "srv-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "myservice", "NamespaceId": "ns-abcd1234xmpl5678", "DnsConfig": { "NamespaceId": "ns-abcd1234xmpl5678", "RoutingPolicy": "MULTIVALUE", "DnsRecords": [ { "Type": "A", "TTL": 60 } ] }, "Type": "DNS_HTTP", "CreateDate": "2025-08-18T13:45:31.023000-05:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678", "CreatedByAccount": "123456789012" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 애플리케이션 구성 요소를 위한 AWS Cloud Map 서비스 생성을 참조하세요.
예제 2: 네임스페이스 ARN을 사용하여 서비스 생성
다음
create-service예제에서는 네임스페이스 ID 대신 네임스페이스 ARN을 사용하여 서비스를 생성합니다. 공유 네임스페이스에서 서비스를 생성할 때는 네임스페이스 ARN을 지정해야 합니다.aws servicediscovery create-service \ --namemyservice-arn\ --namespace-idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678\ --dns-config"RoutingPolicy=MULTIVALUE,DnsRecords=[{Type=A,TTL=60}]"출력:
{ "Service": { "Id": "srv-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "myservice-arn", "NamespaceId": "ns-abcd1234xmpl5678", "DnsConfig": { "NamespaceId": "ns-abcd1234xmpl5678", "RoutingPolicy": "MULTIVALUE", "DnsRecords": [ { "Type": "A", "TTL": 60 } ] }, "Type": "DNS_HTTP", "CreateDate": "2025-08-18T13:45:31.023000-05:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678", "CreatedByAccount": "123456789012" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 CreateService
를 참조하세요.
-
다음 코드 예시는 delete-namespace의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 네임스페이스 삭제
다음
delete-namespace예시에서는 네임스페이스를 삭제합니다.aws servicediscovery delete-namespace \ --idns-abcd1234xmpl5678출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스 삭제를 참조하세요.
예제 2: 네임스페이스 ARN을 사용하여 네임스페이스 삭제
다음
delete-namespace예제에서는 ARN을 사용하여 네임스페이스를 삭제합니다.aws servicediscovery delete-namespace \ --idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteNamespace
섹션을 참조하세요.
-
다음 코드 예시는 delete-service-attributes의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 속성 삭제
다음
delete-service-attributes예시에서는 지정된 서비스와 연결된Port키가 있는 서비스 속성을 삭제합니다.aws servicediscovery delete-service-attributes \ --service-idsrv-abcd1234xmpl5678\ --attributesPort이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스를 참조하세요.
예제 2: ARN을 사용하여 서비스 속성 삭제
다음
delete-service-attributes예제에서는 서비스 ARN을 사용하여 서비스 속성을 삭제합니다. 계정과 공유된 네임스페이스에서 생성된 서비스와 연결된 속성을 삭제하려면 ARN을 지정해야 합니다.aws servicediscovery delete-service-attributes \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678\ --attributesPort이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteServiceAttributes
를 참조하세요.
-
다음 코드 예시는 delete-service의 사용 방법을 보여 줍니다.
- AWS CLI
-
예시 1: 서비스 삭제
다음
delete-service예시에서는 서비스를 삭제합니다.aws servicediscovery delete-service \ --idsrv-abcd1234xmpl5678이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 삭제를 참조하세요.
예제 2: ARN을 사용하여 서비스 삭제
다음
delete-service예제에서는 ARN을 사용하여 서비스를 삭제합니다.aws servicediscovery delete-service \ --idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 삭제를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeleteService
를 참조하세요.
-
다음 코드 예시는 deregister-instance의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 인스턴스 등록 취소
다음
deregister-instance예시에서는 서비스 인스턴스의 등록을 취소합니다.aws servicediscovery deregister-instance \ --service-idsrv-p5zdwlg5uvvzjita\ --instance-idmyservice-53출력:
{ "OperationId": "4yejorelbukcjzpnr6tlmrghsjwpngf4-k98rnaiq" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.자세한 내용은 AWS Cloud Map 개발자 안내서의 서비스 인스턴스 등록 취소를 참조하세요.
예제 2: 공유 네임스페이스에 대한 서비스 ARN을 사용하여 서비스 인스턴스 등록 취소
다음
deregister-instance예제에서는 서비스 ID 대신 서비스 ARN을 사용하여 서비스 인스턴스의 등록을 취소합니다. 계정과 공유되는 네임스페이스에서 생성된 서비스에서 인스턴스를 등록 취소할 때 ARN을 지정해야 합니다.aws servicediscovery deregister-instance \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita\ --instance-idweb-server-01출력:
{ "OperationId": "gv4g5meo7ndmkqjrhpn39wk42xmpl" }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스 및 AWS Cloud Map 서비스 인스턴스 등록 취소를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DeregisterInstance
섹션을 참조하세요.
-
다음 코드 예시는 discover-instances-revision의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 인스턴스 개정 검색
다음
discover-instances-revision예시에서는 인스턴스의 증가 개정을 검색합니다.aws servicediscovery discover-instances-revision \ --namespace-nameexample.com\ --service-namemyservice출력:
{ "InstancesRevision": 123456 }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스를 참조하세요.
예제 2: 특정 소유자 계정에서 인스턴스의 개정 검색
다음
discover-instances-revision예제에서는 특정 소유자 계정에서 인스턴스의 개정을 검색합니다. 소유자 계정 파라미터는 계정과 공유되는 네임스페이스의 인스턴스에 필요합니다.aws servicediscovery discover-instances-revision \ --namespace-nameshared-namespace\ --service-nameshared-service\ --owner-account123456789111출력:
{ "InstancesRevision": 1234567890 }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스 및 AWS Cloud Map 서비스 인스턴스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DiscoverInstancesRevision
을 참조하세요.
-
다음 코드 예시는 discover-instances의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 등록된 인스턴스 검색
다음
discover-instances예시에서는 등록된 인스턴스를 검색합니다.aws servicediscovery discover-instances \ --namespace-nameexample.com\ --service-namemyservice\ --max-results10\ --health-statusALL출력:
{ "Instances": [ { "InstanceId": "myservice-53", "NamespaceName": "example.com", "ServiceName": "myservice", "HealthStatus": "UNKNOWN", "Attributes": { "AWS_INSTANCE_IPV4": "172.2.1.3", "AWS_INSTANCE_PORT": "808" } } ], "InstancesRevision": 85648075627387284 }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스를 참조하세요.
예제 2: 특정 소유자 계정에서 인스턴스 검색
다음
discover-instances예제에서는 특정 소유자 계정에서 등록된 인스턴스를 검색합니다. 이 파라미터는 계정과 공유되는 네임스페이스에서 인스턴스를 검색하는 데 필요합니다.aws servicediscovery discover-instances \ --namespace-nameshared-namespace\ --service-nameshared-service\ --owner-account123456789111출력:
{ "Instances": [ { "InstanceId": "shared-instance-1234", "NamespaceName": "shared-namespace", "ServiceName": "shared-service", "HealthStatus": "HEALTHY", "Attributes": { "AWS_INSTANCE_IPV4": "203.0.113.75", "AWS_INSTANCE_PORT": "80" } } ], "InstancesRevision": 1234567890 }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스 및 AWS Cloud Map 서비스 인스턴스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DiscoverInstances
를 참조하세요.
-
다음 코드 예시는 get-instance의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 인스턴스 세부 정보 가져오기
다음
get-instance예시에서는 서비스의 속성을 가져옵니다.aws servicediscovery get-instance \ --service-idsrv-e4anhexample0004--instance-idi-abcd1234출력:
{ "ResourceOwner": "123456789012", "Instance": { "Id": "arn:aws:servicediscovery:us-west-2:111122223333;:service/srv-e4anhexample0004", "Attributes": { "AWS_INSTANCE_IPV4": "192.0.2.44", "AWS_INSTANCE_PORT": "80", "color": "green", "region": "us-west-2", "stage": "beta" }, "CreatedByAccount": "123456789012" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스를 참조하세요.
예제 2: 공유 네임스페이스에 대한 서비스 ARN을 사용하여 인스턴스의 세부 정보 가져오기
다음
get-instance예제에서는 서비스 ID 대신 서비스 ARN을 사용하여 인스턴스의 속성을 가져옵니다. 계정과 공유되는 네임스페이스와 연결된 인스턴스의 세부 정보를 가져올 때 ARN을 지정해야 합니다. 이 예제에서 반환된 인스턴스는 계정123456789012가 소유한 네임스페이스에 계정123456789111이 등록했습니다.aws servicediscovery get-instance \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita\ --instance-idweb-server-01출력:
{ "ResourceOwner": "123456789012", "Instance": { "Id": "web-server-01", "Attributes": { "AWS_INSTANCE_IPV4": "203.0.113.15", "AWS_INSTANCE_PORT": "80" }, "CreatedByAccount": "123456789111" } }교차 계정 네임스페이스 공유에 대한 자세한 내용은 AWS 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetInstance
섹션을 참조하세요.
-
다음 코드 예시는 get-instances-health-status의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스와 연결된 인스턴스의 상태 가져오기
다음
get-instances-health-status예시에서는 지정된 서비스와 연결된 인스턴스의 상태를 가져옵니다.aws servicediscovery get-instances-health-status \ --service-idsrv-e4anhexample0004출력:
{ "Status": { "i-abcd1234": "HEALTHY", "i-abcd1235": "UNHEALTHY" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스를 참조하세요.
예제 2: 공유 네임스페이스에 대한 서비스 ARN을 사용하여 인스턴스 상태 가져오기
다음
get-instances-health-status예제에서는 서비스 ID 대신 서비스 ARN을 사용하여 인스턴스의 상태를 가져옵니다. 요청자의 계정과 공유되는 네임스페이스와 연결된 인스턴스의 상태를 가져올 때 ARN을 지정해야 합니다.aws servicediscovery get-instances-health-status \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita출력:
{ "Status": { "web-server-01": "HEALTHY", "web-server-02": "UNHEALTHY" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetInstancesHealthStatus
를 참조하세요.
-
다음 코드 예시는 get-namespace의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 네임스페이스 세부 정보 가져오기
다음
get-namespace예시에서는 지정된 네임스페이스에 대한 정보를 검색합니다.aws servicediscovery get-namespace \ --idns-abcd1234xmpl5678출력:
{ "Namespace": { "Id": "ns-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "example-http.com", "Type": "HTTP", "Description": "Example.com AWS Cloud Map HTTP Namespace", "Properties": { "DnsProperties": {}, "HttpProperties": { "HttpName": "example-http.com" } }, "CreateDate": "2024-02-23T13:35:21.874000-06:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
예제 2: ARN을 사용하여 네임스페이스 세부 정보 가져오기
다음
get-namespace예제에서는 ARN을 사용하여 지정된 네임스페이스에 대한 정보를 검색합니다. 계정과 공유된 네임스페이스의 세부 정보를 검색하려면 ARN을 지정해야 합니다.aws servicediscovery get-namespace \ --idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678출력:
{ "Namespace": { "Id": "ns-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "example-http.com", "Type": "HTTP", "Description": "Example.com AWS Cloud Map HTTP Namespace", "Properties": { "DnsProperties": {}, "HttpProperties": { "HttpName": "example-http.com" } }, "CreateDate": "2024-02-23T13:35:21.874000-06:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetNamespace
를 참조하세요.
-
다음 코드 예시는 get-operation의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 작업 결과 가져오기
다음
get-operation예시에서는 네임스페이스 생성 작업의 결과를 가져옵니다.aws servicediscovery get-operation \ --operation-idabcd1234xmpl5678abcd1234xmpl5678-abcd1234출력:
{ "Operation": { "Id": "abcd1234xmpl5678abcd1234xmpl5678-abcd1234", "Type": "CREATE_NAMESPACE", "Status": "SUCCESS", "CreateDate": "2025-01-13T13:35:21.874000-06:00", "UpdateDate": "2025-01-13T13:36:02.469000-06:00", "Targets": { "NAMESPACE": "ns-abcd1234xmpl5678" } } }자세한 내용은 AWS Cloud Map 개발자 안내서의 애플리케이션 서비스를 그룹화하기 위한 AWS Cloud Map 네임스페이스 생성을 참조하세요.
예제 2: 특정 소유자 계정에서 작업 가져오기
다음
get-operation예제에서는 특정 네임스페이스 소유자 계정과 연결된 작업의 결과를 가져옵니다. 이 파라미터는 계정과 공유된 네임스페이스와 연결된 작업의 결과를 가져오는 데 필요합니다.aws servicediscovery get-operation \ --operation-idabcd1234xmpl5678abcd1234xmpl5678-abcd1234\ --owner-account123456789111출력:
{ "Operation": { "Id": "abcd1234xmpl5678abcd1234xmpl5678-abcd1234", "OwnerAccount": "123456789111", "Type": "CREATE_NAMESPACE", "Status": "SUCCESS", "CreateDate": "2025-01-13T13:35:21.874000-06:00", "UpdateDate": "2025-01-13T13:36:02.469000-06:00", "Targets": { "NAMESPACE": "ns-abcd1234xmpl5678" } } }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetOperation
섹션을 참조하세요.
-
다음 코드 예시는 get-service-attributes의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 속성 가져오기
다음
get-service-attributes예시에서는 서비스의 속성을 가져옵니다.aws servicediscovery get-service-attributes \ --service-idsrv-abcd1234xmpl5678출력:
{ "ServiceAttributes": { "ServiceArn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Attributes": { "Port": "80" } } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스를 참조하세요.
예제 2: ARN을 사용하여 서비스의 속성 가져오기
다음
get-service-attributes예제에서는 ARN을 사용하여 서비스의 속성을 가져옵니다. 계정과 공유된 네임스페이스에서 생성된 서비스의 속성을 가져오려면 ARN을 지정해야 합니다.aws servicediscovery get-service-attributes \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678출력:
{ "ServiceAttributes": { "ServiceArn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Attributes": { "Port": "80" } } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetServiceAttributes
를 참조하세요.
-
다음 코드 예시는 get-service의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 설정 가져오기
다음
get-service예시에서는 지정된 서비스의 설정을 가져옵니다.aws servicediscovery get-service \ --idsrv-abcd1234xmpl5678출력:
{ "Service": { "Id": "srv-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "test-service", "NamespaceId": "ns-abcd1234xmpl5678", "DnsConfig": {}, "Type": "HTTP", "CreateDate": "2025-08-18T13:53:02.775000-05:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678", "CreatedByAccount": "123456789012" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스를 참조하세요.
예제 2: ARN을 사용하여 서비스의 설정 가져오기
다음
get-service예제에서는 ARN을 사용하여 지정된 서비스의 설정을 가져옵니다. 계정과 공유되는 네임스페이스에서 생성된 서비스에 대한 정보를 검색할 때 ARN을 지정해야 합니다. 호출자 계정123456789111은 계정123456789012에서 공유하는 네임스페이스에 서비스를 생성했습니다.aws servicediscovery get-service \ --idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678출력:
{ "Service": { "Id": "srv-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "test-service", "NamespaceId": "ns-abcd1234xmpl5678", "DnsConfig": {}, "Type": "HTTP", "CreateDate": "2025-08-18T13:53:02.775000-05:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678", "CreatedByAccount": "123456789111" } }자세한 내용은 AWS Cloud Map 개발자 안내서의 애플리케이션 구성 요소를 위한 AWS Cloud Map 서비스 생성 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GetService
를 참조하세요.
-
다음 코드 예시는 list-instances의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 인스턴스 나열
다음
list-instances예시에서는 서비스 인스턴스를 나열합니다.aws servicediscovery list-instances \ --service-idsrv-qzpwvt2tfqcegapy출력:
{ "Instances": [ { "Id": "i-06bdabbae60f65a4e", "Attributes": { "AWS_INSTANCE_IPV4": "172.2.1.3", "AWS_INSTANCE_PORT": "808" }, "CreatedByAccount": "123456789012" } ], "ResourceOwner": "123456789012" }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 인스턴스 목록을 참조하세요.
예제 2: 서비스 ARN을 사용하여 서비스 인스턴스 나열
다음
list-instances예제에서는 서비스 ID 대신 서비스 ARN을 사용하여 서비스 인스턴스를 나열합니다. 계정과 공유되는 네임스페이스와 연결된 인스턴스를 나열할 때 ARN을 지정해야 합니다.aws servicediscovery list-instances \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita출력:
{ "ResourceOwner": "123456789012", "Instances": [ { "Id": "web-server-01", "Attributes": { "AWS_INSTANCE_IPV4": "203.0.113.15", "AWS_INSTANCE_PORT": "80" }, "CreatedByAccount": "123456789012" }, { "Id": "web-server-02", "Attributes": { "AWS_INSTANCE_IPV4": "203.0.113.16", "AWS_INSTANCE_PORT": "80" }, "CreatedByAccount": "123456789012" } ] }교차 계정 네임스페이스 공유에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스 및 AWS Cloud Map 서비스 인스턴스 목록을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListInstances
섹션을 참조하세요.
-
다음 코드 예시는 list-namespaces의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 네임스페이스 나열
다음
list-namespaces예시에서는 네임스페이스를 나열합니다.aws servicediscovery list-namespaces출력:
{ "Namespaces": [ { "Id": "ns-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678", "ResourceOwner": "123456789012", "Name": "local", "Type": "DNS_PRIVATE", "Properties": { "DnsProperties": { "HostedZoneId": "Z06752353VBUDTC32S84S", "SOA": {} }, "HttpProperties": { "HttpName": "local" } }, "CreateDate": "2023-07-17T13:37:27.872000-05:00" }, { "Id": "ns-abcd1234xmpl9012", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl9012", "ResourceOwner": "123456789012", "Name": "My-second-namespace", "Type": "HTTP", "Description": "My second namespace", "Properties": { "DnsProperties": { "SOA": {} }, "HttpProperties": { "HttpName": "My-second-namespace" } }, "CreateDate": "2023-11-14T10:35:47.840000-06:00" } ] }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스 목록을 참조하세요.
예제 2: 다른 계정에서 공유하는 네임스페이스 나열
다음
list-namespaces예제에서는RESOURCE_OWNER필터를 사용하여 다른 AWS 계정에서 호출자 계정과 공유하는 네임스페이스를 나열합니다.aws servicediscovery list-namespaces \ --filtersName=RESOURCE_OWNER,Values=OTHER_ACCOUNTS,Condition=EQ출력:
{ "Namespaces": [ { "Id": "ns-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789111:namespace/ns-abcd1234xmpl5678", "ResourceOwner": "123456789111", "Name": "shared-namespace", "Type": "HTTP", "Description": "Namespace shared from another account", "Properties": { "DnsProperties": { "SOA": {} }, "HttpProperties": { "HttpName": "shared-namespace" } }, "CreateDate": "2025-01-13T13:35:21.874000-06:00" } ] }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListNamespaces
를 참조하세요.
-
다음 코드 예시는 list-operations의 사용 방법을 보여줍니다.
- AWS CLI
-
지정된 기준을 충족하는 작업 나열
다음
list-operations예시에서는PENDING또는SUCCESS상태의 작업을 나열합니다.aws servicediscovery list-operations \ --service-idsrv-e4anhexample0004\ --filtersName=STATUS,Condition=IN,Values=PENDING,SUCCESS출력:
{ "Operations": [ { "Id": "76yy8ovhpdz0plmjzbsnqgnrqvpv2qdt-kexample", "Status": "SUCCESS" }, { "Id": "prysnyzpji3u2ciy45nke83x2zanl7yk-dexample", "Status": "SUCCESS" }, { "Id": "ko4ekftir7kzlbechsh7xvcdgcpk66gh-7example", "Status": "PENDING" } ] }자세한 내용은 AWS Cloud Map 개발자 안내서에 있는 AWS Cloud Map이란 무엇인가요?를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListOperations
섹션을 참조하세요.
-
다음 코드 예시는 list-services의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 나열
다음
list-services예시에서는 서비스를 나열합니다.aws servicediscovery list-services출력:
{ "Services": [ { "Id": "srv-p5zdwlg5uvvzjita", "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita", "Name": "myservice", "DnsConfig": { "RoutingPolicy": "MULTIVALUE", "DnsRecords": [ { "Type": "A", "TTL": 60 } ] }, "CreateDate": 1587081768.334 } ] }자세한 내용은 AWS Cloud Map 개발자 안내서의 네임스페이스의 AWS Cloud Map 서비스 목록을 참조하세요.
예제 2: 공유 네임스페이스에서 생성된 서비스 나열
다음
list-services예제에서는RESOURCE_OWNER필터를 사용하여 다른 AWS 계정에서 호출자 계정123456789012와 공유하는 네임스페이스를 나열합니다.aws servicediscovery list-services \ --filtersName=RESOURCE_OWNER,Values=OTHER_ACCOUNTS,Condition=EQ출력:
{ "Services": [ { "Id": "srv-abcd1234xmpl5678", "Arn": "arn:aws:servicediscovery:us-west-2:123456789111:service/srv-abcd1234xmpl5678", "ResourceOwner": "123456789111", "Name": "shared-service", "NamespaceId": "ns-abcd1234xmpl5678", "Type": "HTTP", "Description": "Service in shared namespace", "DnsConfig": {}, "CreateDate": "2025-01-13T13:35:21.874000-06:00", "CreatorRequestId": "abcd1234-5678-90ab-cdef-xmpl12345678", "CreatedByAccount": "123456789012" } ] }자세한 내용은 AWS Cloud Map 개발자 안내서의 공유 AWS Cloud Map 네임스페이스 및 네임스페이스의 AWS Cloud Map 서비스 목록을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListServices
를 참조하세요.
-
다음 코드 예시는 list-tags-for-resource의 사용 방법을 보여줍니다.
- AWS CLI
-
지정된 리소스와 연결된 태그 나열
다음
list-tags-for-resource예시에서는 지정된 리소스의 태그를 나열합니다.aws servicediscovery list-tags-for-resource \ --resource-arnarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-e4anhexample0004출력:
{ "Tags": [ { "Key": "Project", "Value": "Zeta" }, { "Key": "Department", "Value": "Engineering" } ] }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 리소스 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 ListTagsForResource
를 참조하세요.
-
다음 코드 예시는 register-instance의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 ID를 사용하여 서비스 인스턴스 등록
다음
register-instance예시에서는 서비스 인스턴스를 등록합니다.aws servicediscovery register-instance \ --service-idsrv-p5zdwlg5uvvzjita\ --instance-idmyservice-53\ --attributes=AWS_INSTANCE_IPV4=172.2.1.3,AWS_INSTANCE_PORT=808출력:
{ "OperationId": "4yejorelbukcjzpnr6tlmrghsjwpngf4-k95yg2u7" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.인스턴스 등록에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 리소스를 AWS Cloud Map 서비스 인스턴스로 등록을 참조하세요.
예제 2: 서비스 ARN을 사용하여 서비스 인스턴스 등록
다음
register-instance예제에서는 서비스 ARN을 사용하여 서비스 인스턴스를 등록합니다. 계정과 공유되는 서비스에 인스턴스를 등록할 때 ARN을 지정해야 합니다.aws servicediscovery register-instance \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita\ --instance-idweb-server-01\ --attributes=AWS_INSTANCE_IPV4=203.0.113.15,AWS_INSTANCE_PORT=80출력:
{ "OperationId": "gv4g5meo7ndmkqjrhpn39wk42xmpl" }교차 계정 네임스페이스 공유에 대한 자세한 내용은 AWS 개발자 안내서의 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 RegisterInstance
를 참조하세요.
-
다음 코드 예시는 tag-resource의 사용 방법을 보여줍니다.
- AWS CLI
-
지정된 리소스와 태그 연결
다음
tag-resource예시에서는 지정된 네임스페이스가 있고 값이Engineering인Department태그를 연결합니다.aws servicediscovery tag-resource \ --resource-arnarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-e4anhexample0004\ --tagsKey=Department,Value=Engineering이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 리소스 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 TagResource
를 참조하세요.
-
다음 코드 예시는 untag-resource의 사용 방법을 보여줍니다.
- AWS CLI
-
지정된 리소스에서 태그 제거
다음
untag-resource예시에서는 지정된 네임스페이스에서Department태그를 제거합니다.aws servicediscovery untag-resource \ --resource-arnarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-e4anhexample0004\ --tagsKey=Department,Value=Engineering이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 리소스 태그 지정을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UntagResource
를 참조하세요.
-
다음 코드 예시는 update-http-namespace의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: HTTP 네임스페이스 업데이트
다음
update-http-namespace예시에서는 지정된 HTTP 네임스페이스의 설명을 업데이트합니다.aws servicediscovery update-http-namespace \ --idns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }작업이 성공했는지 확인하려면
get-operation을 실행합니다. 자세한 내용은 get-operation을 참조하세요.자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
예제 2: ARN을 사용하여 HTTP 네임스페이스 업데이트
다음
update-http-namespace예제에서는 ARN을 사용하여 지정된 HTTP 네임스페이스를 업데이트합니다.aws servicediscovery update-http-namespace \ --idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateHttpNamespace
를 참조하세요.
-
다음 코드 예시는 update-instance-custom-health-status의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 사용자 지정 상태 확인 업데이트
다음
update-instance-custom-health-status예시에서는 지정된 서비스 및 예시 서비스 인스턴스에 대한 사용자 지정 상태 확인의 상태를HEALTHY로 업데이트합니다.aws servicediscovery update-instance-custom-health-status \ --service-idsrv-e4anhexample0004\ --instance-idexample\ --statusHEALTHY이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 상태 확인 구성을 참조하세요.
예제 2: 서비스 ARN을 사용하여 사용자 지정 상태 확인 업데이트
다음
update-instance-custom-health-status예제에서는 서비스 ARN을 사용하여 사용자 지정 상태 확인의 상태를 업데이트합니다. 계정과 공유되는 네임스페이스와 연결된 인스턴스의 상태를 업데이트할 때 ARN이 필요합니다.aws servicediscovery update-instance-custom-health-status \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-p5zdwlg5uvvzjita\ --instance-idweb-server-01\ --statusHEALTHY이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 상태 확인 구성 및 교차 계정 AWS Cloud Map 네임스페이스 공유를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateInstanceCustomHealthStatus
를 참조하세요.
-
다음 코드 예시는 update-private-dns-namespace의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: ID를 사용하여 프라이빗 DNS 네임스페이스 업데이트
다음
update-private-dns-namespace예제에서는 네임스페이스 ID를 사용하여 프라이빗 DNS 네임스페이스의 설명을 업데이트합니다.aws servicediscovery update-private-dns-namespace \ --idns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }작업이 성공했는지 확인하려면
get-operation을 실행합니다.자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
예제 2: ARN을 사용하여 프라이빗 DNS 네임스페이스 업데이트
다음
update-private-dns-namespace예제에서는 ARN을 사용하여 프라이빗 DNS 네임스페이스를 업데이트합니다.aws servicediscovery update-private-dns-namespace \ --idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdatePrivateDnsNamespace
를 참조하세요.
-
다음 코드 예시는 update-public-dns-namespace의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: ID를 사용하여 퍼블릭 DNS 네임스페이스 업데이트
다음
update-public-dns-namespace예제에서는 ID를 사용하여 퍼블릭 DNS 네임스페이스의 설명을 업데이트합니다.aws servicediscovery update-public-dns-namespace \ --idns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }작업이 성공했는지 확인하려면
get-operation을 실행합니다.자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
예제 2: ARN을 사용하여 퍼블릭 DNS 네임스페이스 업데이트
다음
update-public-dns-namespace예제에서는 ARN을 사용하여 퍼블릭 DNS 네임스페이스를 업데이트합니다.aws servicediscovery update-public-dns-namespace \ --idarn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-abcd1234xmpl5678\ --updater-request-idabcd1234-5678-90ab-cdef-xmpl12345678\ --namespace Description="The updated namespace description."출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdatePublicDnsNamespace
를 참조하세요.
-
다음 코드 예시는 update-service-attributes의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 속성을 추가하도록 서비스 업데이트
다음
update-service-attributes예시에서는 지정된 서비스를 업데이트하여Port키와80값이 있는 서비스 속성을 추가합니다.aws servicediscovery update-service-attributes \ --service-idsrv-abcd1234xmpl5678\ --attributesPort=80이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스를 참조하세요.
예제 2: ARN을 사용하여 서비스 속성 업데이트
다음
update-service-attributes예제에서는 ARN을 사용하여 서비스를 업데이트하여 서비스 속성을 추가합니다. 계정과 공유된 네임스페이스에서 생성된 서비스에 속성을 추가하려면 ARN을 지정해야 합니다.aws servicediscovery update-service-attributes \ --service-idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678\ --attributesPort=80이 명령은 출력을 생성하지 않습니다.
자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateServiceAttributes
를 참조하세요.
-
다음 코드 예시는 update-service의 사용 방법을 보여 줍니다.
- AWS CLI
-
예제 1: 서비스 업데이트
다음
update-service예시에서는 서비스를 업데이트하여DnsConfig및HealthCheckConfig설정을 업데이트합니다.aws servicediscovery update-service \ --idsrv-abcd1234xmpl5678\ --service"DnsConfig={DnsRecords=[{Type=A,TTL=60}]},HealthCheckConfig={Type=HTTP,ResourcePath=/,FailureThreshold=2}"출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }작업이 성공했는지 확인하려면
get-operation을 실행합니다.서비스 업데이트에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 업데이트를 참조하세요.
예제 2: ARN을 사용하여 서비스 업데이트
다음
update-service예제에서는 ARN을 사용하여 서비스를 업데이트합니다. 계정과 공유된 네임스페이스에서 생성된 서비스에 대해 ARN을 지정해야 합니다.aws servicediscovery update-service \ --idarn:aws:servicediscovery:us-west-2:123456789012:service/srv-abcd1234xmpl5678\ --service"DnsConfig={DnsRecords=[{Type=A,TTL=60}]},HealthCheckConfig={Type=HTTP,ResourcePath=/,FailureThreshold=2}"출력:
{ "OperationId": "abcd1234-5678-90ab-cdef-xmpl12345678" }서비스 업데이트에 대한 자세한 내용은 AWS Cloud Map 개발자 안내서의 AWS Cloud Map 서비스 업데이트 및 공유 AWS Cloud Map 네임스페이스를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 UpdateService
를 참조하세요.
-