AWS Cloud Map examples using AWS CLI - AWS Command Line Interface

AWS Cloud Map examples using AWS CLI

次のコード例では、AWS Cloud Map で AWS Command Line Interface を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています。

アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。

各例には完全なソースコードへのリンクが含まれており、コードの設定方法と実行方法に関する手順を確認できます。

トピック

アクション

次の例は、create-private-dns-namespace を使用する方法を説明しています。

AWS CLI

プライベート DNS 名前空間を作成するには

次の create-private-dns-namespace の例では、プライベート DNS 名前空間を作成します。

aws servicediscovery create-private-dns-namespace \ --name example.com \ --vpc vpc-1c56417b

出力:

{ "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd" }

オペレーションが成功したことを確認するには、get-operation を実行します。詳細については、「get-operation」を参照してください。

詳細については、AWS Cloud Map デベロッパーガイドの「名前空間の作成」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「CreatePrivateDnsNamespace」を参照してください。

次のコード例は、create-service を使用する方法を示しています。

AWS CLI

サービスを作成するには

次の create-service の例では、サービスを作成します。

aws servicediscovery create-service \ --name myservice \ --namespace-id ns-ylexjili4cdxy3xm \ --dns-config "NamespaceId=ns-ylexjili4cdxy3xm,RoutingPolicy=MULTIVALUE,DnsRecords=[{Type=A,TTL=60}]"

出力:

{ "Service": { "Id": "srv-p5zdwlg5uvvzjita", "Arn": "arn:aws:servicediscovery:us-west-2:803642222207:service/srv-p5zdwlg5uvvzjita", "Name": "myservice", "NamespaceId": "ns-ylexjili4cdxy3xm", "DnsConfig": { "NamespaceId": "ns-ylexjili4cdxy3xm", "RoutingPolicy": "MULTIVALUE", "DnsRecords": [ { "Type": "A", "TTL": 60 } ] }, "CreateDate": 1587081768.334, "CreatorRequestId": "567c1193-6b00-4308-bd57-ad38a8822d25" } }

詳細については、「AWS Cloud Map デベロッパーガイド」の「サービスの作成」を参照してください。

  • API の詳細については、AWS CLI コマンドリファレンスの「CreateService」を参照してください。

次の例は、delete-namespace を使用する方法を説明しています。

AWS CLI

名前空間を削除するには

次の delete-namespace の例では、名前空間を削除します。

aws servicediscovery delete-namespace \ --id ns-ylexjili4cdxy3xm

出力:

{ "OperationId": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k98y6drk" }

オペレーションが成功したことを確認するには、get-operation を実行します。詳細については、「get-operation」を参照してください。

詳細については、AWS Cloud Map デベロッパーガイドの「名前空間の削除」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteNamespace」を参照してください。

次の例は、delete-service を使用する方法を説明しています。

AWS CLI

サービスを削除する方法

次の delete-service の例では、サービスを削除します。

aws servicediscovery delete-service \ --id srv-p5zdwlg5uvvzjita

このコマンドでは何も出力されません。

詳細については、「AWS Cloud Map デベロッパーガイド」の「サービスの削除」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeleteService」を参照してください。

次のコード例は、deregister-instance を使用する方法を示しています。

AWS CLI

サービスインスタンスの登録を解除するには

次の deregister-instance の例では、サービスインスタンスの登録を解除します。

aws servicediscovery deregister-instance \ --service-id srv-p5zdwlg5uvvzjita \ --instance-id myservice-53

出力:

{ "OperationId": "4yejorelbukcjzpnr6tlmrghsjwpngf4-k98rnaiq" }

オペレーションが成功したことを確認するには、get-operation を実行します。詳細については、「get-operation」を参照してください。

詳細については、「AWS Cloud Map デベロッパーガイド」の「サービスインスタンスの登録解除」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「DeregisterInstance」を参照してください。

次の例は、discover-instances を使用する方法を説明しています。

AWS CLI

登録済みインスタンスを検出するには

次の discover-instances の例では、登録済みインスタンスを検出します。

aws servicediscovery discover-instances \ --namespace-name example.com \ --service-name myservice \ --max-results 10 \ --health-status ALL

出力:

{ "Instances": [ { "InstanceId": "myservice-53", "NamespaceName": "example.com", "ServiceName": "myservice", "HealthStatus": "UNKNOWN", "Attributes": { "AWS_INSTANCE_IPV4": "172.2.1.3", "AWS_INSTANCE_PORT": "808" } } ] }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「DiscoverInstances」を参照してください。

次の例は、get-operation を使用する方法を説明しています。

AWS CLI

オペレーションの結果を取得するには

次の get-operation の例では、オペレーションの結果を取得します。

aws servicediscovery get-operation \ --operation-id gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd

出力:

{ "Operation": { "Id": "gv4g5meo7ndmeh4fqskygvk23d2fijwa-k9302yzd", "Type": "CREATE_NAMESPACE", "Status": "SUCCESS", "CreateDate": 1587055860.121, "UpdateDate": 1587055900.469, "Targets": { "NAMESPACE": "ns-ylexjili4cdxy3xm" } } }
  • API の詳細については、「AWS CLI コマンドリファレンス」の「GetOperation」を参照してください。

次のコード例は、list-instances を使用する方法を示しています。

AWS CLI

サービスインスタンスを一覧表示するには

次の list-instances の例では、サービスインスタンスを一覧表示します。

aws servicediscovery list-instances \ --service-id srv-qzpwvt2tfqcegapy

出力:

{ "Instances": [ { "Id": "i-06bdabbae60f65a4e", "Attributes": { "AWS_INSTANCE_IPV4": "172.2.1.3", "AWS_INSTANCE_PORT": "808" } } ] }

詳細については、「AWS Cloud Map デベロッパーガイド」の「サービスインスタンスのリストを表示する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListInstances」を参照してください。

次のコード例は、list-namespaces を使用する方法を示しています。

AWS CLI

名前空間を一覧表示するには

次の list-namespaces の例では、名前空間を一覧表示します。

aws servicediscovery list-namespaces

出力:

{ "Namespaces": [ { "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-a3ccy2e7e3a7rile", "CreateDate": 1585354387.357, "Id": "ns-a3ccy2e7e3a7rile", "Name": "local", "Properties": { "DnsProperties": { "HostedZoneId": "Z06752353VBUDTC32S84S" }, "HttpProperties": { "HttpName": "local" } }, "Type": "DNS_PRIVATE" }, { "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-pocfyjtrsmwtvcxx", "CreateDate": 1586468974.698, "Description": "My second namespace", "Id": "ns-pocfyjtrsmwtvcxx", "Name": "My-second-namespace", "Properties": { "DnsProperties": {}, "HttpProperties": { "HttpName": "My-second-namespace" } }, "Type": "HTTP" }, { "Arn": "arn:aws:servicediscovery:us-west-2:123456789012:namespace/ns-ylexjili4cdxy3xm", "CreateDate": 1587055896.798, "Id": "ns-ylexjili4cdxy3xm", "Name": "example.com", "Properties": { "DnsProperties": { "HostedZoneId": "Z09983722P0QME1B3KC8I" }, "HttpProperties": { "HttpName": "example.com" } }, "Type": "DNS_PRIVATE" } ] }

詳細については、「AWS Cloud Map デベロッパーガイド」の「名前空間のリストを表示する」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「ListNamespaces」を参照してください。

次の例は、list-services を使用する方法を説明しています。

AWS CLI

サービスを一覧表示するには

次の 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 デベロッパーガイド」の「サービスのリストを表示する」を参照してください。

  • API の詳細については、AWS CLI コマンドリファレンスの「ListServices」を参照してください。

次のコード例は、register-instance を使用する方法を示しています。

AWS CLI

サービスインスタンスを登録するには

次の register-instance の例では、サービスインスタンスを登録します。

aws servicediscovery register-instance \ --service-id srv-p5zdwlg5uvvzjita \ --instance-id myservice-53 \ --attributes=AWS_INSTANCE_IPV4=172.2.1.3,AWS_INSTANCE_PORT=808

出力:

{ "OperationId": "4yejorelbukcjzpnr6tlmrghsjwpngf4-k95yg2u7" }

オペレーションが成功したことを確認するには、get-operation を実行します。詳細については、「get-operation」を参照してください。

詳細については、「AWS Cloud Map デベロッパーガイド」の「インスタンスの登録」を参照してください。

  • API の詳細については、「AWS CLI コマンドリファレンス」の「RegisterInstance」を参照してください。