Ada lebih banyak AWS SDK contoh yang tersedia di GitHub repo SDKContoh AWS Dokumen
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Contoh App Mesh menggunakan AWS CLI
Contoh kode berikut menunjukkan cara melakukan tindakan dan menerapkan skenario umum dengan menggunakan App Mesh AWS Command Line Interface with.
Tindakan adalah kutipan kode dari program yang lebih besar dan harus dijalankan dalam konteks. Sementara tindakan menunjukkan cara memanggil fungsi layanan individual, Anda dapat melihat tindakan dalam konteks dalam skenario terkait.
Setiap contoh menyertakan tautan ke kode sumber lengkap, di mana Anda dapat menemukan instruksi tentang cara mengatur dan menjalankan kode dalam konteks.
Topik
Tindakan
Contoh kode berikut menunjukkan cara menggunakancreate-mesh
.
- AWS CLI
-
Contoh 1: Untuk membuat mesh layanan baru
create-mesh
Contoh berikut membuat mesh layanan.aws appmesh create-mesh \ --mesh-name
app1
Output:
{ "mesh":{ "meshName":"app1", "metadata":{ "arn":"arn:aws:appmesh:us-east-1:123456789012:mesh/app1", "createdAt":1563809909.282, "lastUpdatedAt":1563809909.282, "uid":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version":1 }, "spec":{}, "status":{ "status":"ACTIVE" } } }
Contoh 2: Untuk membuat mesh layanan baru dengan beberapa tag
create-mesh
Contoh berikut membuat mesh layanan dengan beberapa tag.aws appmesh create-mesh \ --mesh-name
app2
\ --tagskey=key1,value=value1
key=key2,value=value2
key=key3,value=value3
Output:
{ "mesh":{ "meshName":"app2", "metadata":{ "arn":"arn:aws:appmesh:us-east-1:123456789012:mesh/app2", "createdAt":1563822121.877, "lastUpdatedAt":1563822121.877, "uid":"a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version":1 }, "spec":{}, "status":{ "status":"ACTIVE" } } }
Untuk informasi selengkapnya, lihat Service Meshes di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat CreateMesh
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-route
.
- AWS CLI
-
Untuk membuat RPC rute g baru
create-route
Contoh berikut menggunakan file JSON input untuk membuat RPC rute g. GRPClalu lintas yang memiliki metadata yang dimulai dengan 123 dirutekan ke node virtual bernama. serviceBgrpc Jika ada g tertentuRPC,HTTP, atau TCP kegagalan saat mencoba berkomunikasi dengan target rute, rute dicoba ulang tiga kali. Ada penundaan 15 detik antara setiap upaya coba lagi.aws appmesh create-route \ --cli-input-json
file://create-route-grpc.json
Isi dari
create-route-grpc.json
:{ "meshName" : "apps", "routeName" : "grpcRoute", "spec" : { "grpcRoute" : { "action" : { "weightedTargets" : [ { "virtualNode" : "serviceBgrpc", "weight" : 100 } ] }, "match" : { "metadata" : [ { "invert" : false, "match" : { "prefix" : "123" }, "name" : "myMetadata" } ], "methodName" : "GetColor", "serviceName" : "com.amazonaws.services.ColorService" }, "retryPolicy" : { "grpcRetryEvents" : [ "deadline-exceeded" ], "httpRetryEvents" : [ "server-error", "gateway-error" ], "maxRetries" : 3, "perRetryTimeout" : { "unit" : "s", "value" : 15 }, "tcpRetryEvents" : [ "connection-error" ] } }, "priority" : 100 }, "virtualRouterName" : "serviceBgrpc" }
Output:
{ "route": { "meshName": "apps", "metadata": { "arn": "arn:aws:appmesh:us-west-2:123456789012:mesh/apps/virtualRouter/serviceBgrpc/route/grpcRoute", "createdAt": 1572010806.008, "lastUpdatedAt": 1572010806.008, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "routeName": "grpcRoute", "spec": { "grpcRoute": { "action": { "weightedTargets": [ { "virtualNode": "serviceBgrpc", "weight": 100 } ] }, "match": { "metadata": [ { "invert": false, "match": { "prefix": "123" }, "name": "mymetadata" } ], "methodName": "GetColor", "serviceName": "com.amazonaws.services.ColorService" }, "retryPolicy": { "grpcRetryEvents": [ "deadline-exceeded" ], "httpRetryEvents": [ "server-error", "gateway-error" ], "maxRetries": 3, "perRetryTimeout": { "unit": "s", "value": 15 }, "tcpRetryEvents": [ "connection-error" ] } }, "priority": 100 }, "status": { "status": "ACTIVE" }, "virtualRouterName": "serviceBgrpc" } }
Untuk membuat rute baru HTTP atau HTTP /2
create-route
Contoh berikut menggunakan file JSON input untuk membuat rute HTTP /2. Untuk membuat HTTP rute, ganti http2Route dengan httpRoute spesifikasi di bawah. Semua lalu lintas HTTP /2 yang ditujukan ke URL awalan apa pun yang memiliki nilai header yang dimulai dengan 123 dirutekan ke node virtual bernama 2. serviceBhttp Jika ada spesifik HTTP atau TCP kegagalan saat mencoba berkomunikasi dengan target rute, rute dicoba ulang tiga kali. Ada penundaan 15 detik antara setiap upaya coba lagi.aws appmesh create-route \ --cli-input-json
file://create-route-http2.json
Isi dari
create-route-http2.json
:{ "meshName": "apps", "routeName": "http2Route", "spec": { "http2Route": { "action": { "weightedTargets": [ { "virtualNode": "serviceBhttp2", "weight": 100 } ] }, "match": { "headers": [ { "invert": false, "match": { "prefix": "123" }, "name": "clientRequestId" } ], "method": "POST", "prefix": "/", "scheme": "http" }, "retryPolicy": { "httpRetryEvents": [ "server-error", "gateway-error" ], "maxRetries": 3, "perRetryTimeout": { "unit": "s", "value": 15 }, "tcpRetryEvents": [ "connection-error" ] } }, "priority": 200 }, "virtualRouterName": "serviceBhttp2" }
Output:
{ "route": { "meshName": "apps", "metadata": { "arn": "arn:aws:appmesh:us-west-2:123456789012:mesh/apps/virtualRouter/serviceBhttp2/route/http2Route", "createdAt": 1572011008.352, "lastUpdatedAt": 1572011008.352, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "routeName": "http2Route", "spec": { "http2Route": { "action": { "weightedTargets": [ { "virtualNode": "serviceBhttp2", "weight": 100 } ] }, "match": { "headers": [ { "invert": false, "match": { "prefix": "123" }, "name": "clientRequestId" } ], "method": "POST", "prefix": "/", "scheme": "http" }, "retryPolicy": { "httpRetryEvents": [ "server-error", "gateway-error" ], "maxRetries": 3, "perRetryTimeout": { "unit": "s", "value": 15 }, "tcpRetryEvents": [ "connection-error" ] } }, "priority": 200 }, "status": { "status": "ACTIVE" }, "virtualRouterName": "serviceBhttp2" } }
Untuk membuat TCP rute baru
create-route
Contoh berikut menggunakan file JSON input untuk membuat TCP rute. 75 persen lalu lintas dirutekan ke node virtual bernamaserviceBtcp, dan 25 persen lalu lintas dirutekan ke node virtual bernama serviceBv 2tcp. Menentukan bobot yang berbeda untuk target yang berbeda adalah cara yang efektif untuk melakukan penerapan versi baru aplikasi. Anda dapat menyesuaikan bobot sehingga pada akhirnya, 100 persen dari semua lalu lintas diarahkan ke target yang memiliki versi baru aplikasi.aws appmesh create-route \ --cli-input-json
file://create-route-tcp.json
Isi dari create-route-tcp .json:
{ "meshName": "apps", "routeName": "tcpRoute", "spec": { "priority": 300, "tcpRoute": { "action": { "weightedTargets": [ { "virtualNode": "serviceBtcp", "weight": 75 }, { "virtualNode": "serviceBv2tcp", "weight": 25 } ] } } }, "virtualRouterName": "serviceBtcp" }
Output:
{ "route": { "meshName": "apps", "metadata": { "arn": "arn:aws:appmesh:us-west-2:123456789012:mesh/apps/virtualRouter/serviceBtcp/route/tcpRoute", "createdAt": 1572011436.26, "lastUpdatedAt": 1572011436.26, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "routeName": "tcpRoute", "spec": { "priority": 300, "tcpRoute": { "action": { "weightedTargets": [ { "virtualNode": "serviceBtcp", "weight": 75 }, { "virtualNode": "serviceBv2tcp", "weight": 25 } ] } } }, "status": { "status": "ACTIVE" }, "virtualRouterName": "serviceBtcp" } }
Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat CreateRoute
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-virtual-gateway
.
- AWS CLI
-
Untuk membuat gateway virtual baru
create-virtual-gateway
Contoh berikut menggunakan file JSON input untuk membuat gateway virtual dengan pendengar untuk HTTP menggunakan port 9080.aws appmesh create-virtual-gateway \ --mesh-name
meshName
\ --virtual-gateway-namevirtualGatewayName
\ --cli-input-jsonfile://create-virtual-gateway.json
Isi dari
create-virtual-gateway.json
:{ "spec": { "listeners": [ { "portMapping": { "port": 9080, "protocol": "http" } } ] } }
Output:
{ "virtualGateway": { "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:us-west-2:123456789012:mesh/meshName/virtualGateway/virtualGatewayName", "createdAt": "2022-04-06T10:42:42.015000-05:00", "lastUpdatedAt": "2022-04-06T10:42:42.015000-05:00", "meshOwner": "123456789012", "resourceOwner": "123456789012", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "listeners": [ { "portMapping": { "port": 9080, "protocol": "http" } } ] }, "status": { "status": "ACTIVE" }, "virtualGatewayName": "virtualGatewayName" } }
Untuk informasi selengkapnya, lihat Gateway Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat CreateVirtualGateway
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-virtual-node
.
- AWS CLI
-
Contoh 1: Untuk membuat node virtual baru yang digunakan DNS untuk penemuan
create-virtual-node
Contoh berikut menggunakan file JSON input untuk membuat node virtual yang digunakan DNS untuk penemuan layanan.aws appmesh create-virtual-node \ --cli-input-json
file://create-virtual-node-dns.json
Isi dari
create-virtual-node-dns.json
:{ "meshName": "app1", "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv1.svc.cluster.local" } } }, "virtualNodeName": "vnServiceBv1" }
Output:
{ "virtualNode": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv1", "createdAt": 1563810019.874, "lastUpdatedAt": 1563810019.874, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv1.svc.cluster.local" } } }, "status": { "status": "ACTIVE" }, "virtualNodeName": "vnServiceBv1" } }
Contoh 2: Untuk membuat node virtual baru yang menggunakan AWS Cloud Map untuk penemuan
create-virtual-node
Contoh berikut menggunakan file JSON input untuk membuat node virtual yang menggunakan AWS Cloud Map untuk penemuan layanan.aws appmesh create-virtual-node \ --cli-input-json
file://create-virtual-node-cloud-map.json
Isi dari
create-virtual-node-cloud-map.json
:{ "meshName": "app1", "spec": { "backends": [ { "virtualService": { "virtualServiceName": "serviceA.svc.cluster.local" } } ], "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "awsCloudMap": { "attributes": [ { "key": "Environment", "value": "Testing" } ], "namespaceName": "namespace1", "serviceName": "serviceA" } } }, "virtualNodeName": "vnServiceA" }
Output:
{ "virtualNode": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceA", "createdAt": 1563810859.465, "lastUpdatedAt": 1563810859.465, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "backends": [ { "virtualService": { "virtualServiceName": "serviceA.svc.cluster.local" } } ], "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "awsCloudMap": { "attributes": [ { "key": "Environment", "value": "Testing" } ], "namespaceName": "namespace1", "serviceName": "serviceA" } } }, "status": { "status": "ACTIVE" }, "virtualNodeName": "vnServiceA" } }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat CreateVirtualNode
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-virtual-router
.
- AWS CLI
-
Untuk membuat router virtual baru
create-virtual-router
Contoh berikut menggunakan file JSON input untuk membuat router virtual dengan pendengar untuk HTTP menggunakan port 80.aws appmesh create-virtual-router \ --cli-input-json
file://create-virtual-router.json
Isi dari
create-virtual-router.json
:{ "meshName": "app1", "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ] }, "virtualRouterName": "vrServiceB" }
Output:
{ "virtualRouter": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB", "createdAt": 1563810546.59, "lastUpdatedAt": 1563810546.59, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ] }, "status": { "status": "ACTIVE" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Router Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat CreateVirtualRouter
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakancreate-virtual-service
.
- AWS CLI
-
Contoh 1: Untuk membuat layanan virtual baru dengan penyedia node virtual
create-virtual-service
Contoh berikut menggunakan file JSON input untuk membuat layanan virtual dengan penyedia node virtual.aws appmesh create-virtual-service \ --cli-input-json
file://create-virtual-service-virtual-node.json
Isi dari
create-virtual-service-virtual-node.json
:{ "meshName": "app1", "spec": { "provider": { "virtualNode": { "virtualNodeName": "vnServiceA" } } }, "virtualServiceName": "serviceA.svc.cluster.local" }
Output:
{ "virtualService": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceA.svc.cluster.local", "createdAt": 1563810859.474, "lastUpdatedAt": 1563810967.179, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "provider": { "virtualNode": { "virtualNodeName": "vnServiceA" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceA.svc.cluster.local" } }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
Contoh 2: Untuk membuat layanan virtual baru dengan penyedia router virtual
create-virtual-service
Contoh berikut menggunakan file JSON input untuk membuat layanan virtual dengan penyedia router virtual.aws appmesh create-virtual-service \ --cli-input-json
file://create-virtual-service-virtual-router.json
Isi dari
create-virtual-service-virtual-router.json
:{ "meshName": "app1", "spec": { "provider": { "virtualRouter": { "virtualRouterName": "vrServiceB" } } }, "virtualServiceName": "serviceB.svc.cluster.local" }
Output:
{ "virtualService": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceB.svc.cluster.local", "createdAt": 1563908363.999, "lastUpdatedAt": 1563908363.999, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "provider": { "virtualRouter": { "virtualRouterName": "vrServiceB" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceB.svc.cluster.local" } }
Untuk informasi selengkapnya, lihat Layanan Virtual < https://docs.aws.amazon.com/app-mesh/ latest/userguide/virtual _services.html> di Panduan Pengguna App Mesh AWS
-
Untuk API detailnya, lihat CreateVirtualService
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-mesh
.
- AWS CLI
-
Untuk menghapus mesh layanan
delete-mesh
Contoh berikut menghapus mesh layanan yang ditentukan.aws appmesh delete-mesh \ --mesh-name
app1
Output:
{ "mesh": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1", "createdAt": 1563809909.282, "lastUpdatedAt": 1563824981.248, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "egressFilter": { "type": "ALLOW_ALL" } }, "status": { "status": "DELETED" } } }
Untuk informasi selengkapnya, lihat Service Meshes di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DeleteMesh
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-route
.
- AWS CLI
-
Untuk menghapus rute
delete-route
Contoh berikut menghapus rute yang ditentukan.aws appmesh delete-route \ --mesh-name
app1
\ --virtual-router-namevrServiceB
\ --route-nametoVnServiceB-weighted
Output:
{ "route": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB/route/toVnServiceB-weighted", "createdAt": 1563811384.015, "lastUpdatedAt": 1563823915.936, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 3 }, "routeName": "toVnServiceB-weighted", "spec": { "httpRoute": { "action": { "weightedTargets": [ { "virtualNode": "vnServiceBv1", "weight": 80 }, { "virtualNode": "vnServiceBv2", "weight": 20 } ] }, "match": { "prefix": "/" } } }, "status": { "status": "DELETED" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DeleteRoute
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-virtual-node
.
- AWS CLI
-
Untuk menghapus node virtual
delete-virtual-node
Contoh berikut menghapus node virtual yang ditentukan.aws appmesh delete-virtual-node \ --mesh-name
app1
\ --virtual-node-namevnServiceBv2
Output:
{ "virtualNode": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv2", "createdAt": 1563810117.297, "lastUpdatedAt": 1563824700.678, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "backends": [], "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv2.svc.cluster.local" } } }, "status": { "status": "DELETED" }, "virtualNodeName": "vnServiceBv2" } }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DeleteVirtualNode
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-virtual-router
.
- AWS CLI
-
Untuk menghapus router virtual
delete-virtual-router
Contoh berikut menghapus router virtual yang ditentukan.aws appmesh delete-virtual-router \ --mesh-name
app1
\ --virtual-router-namevrServiceB
Output:
{ "virtualRouter": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB", "createdAt": 1563810546.59, "lastUpdatedAt": 1563824253.467, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 3 }, "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ] }, "status": { "status": "DELETED" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Router Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DeleteVirtualRouter
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandelete-virtual-service
.
- AWS CLI
-
Untuk menghapus layanan virtual
delete-virtual-service
Contoh berikut menghapus layanan virtual yang ditentukan.aws appmesh delete-virtual-service \ --mesh-name
app1
\ --virtual-service-nameserviceB.svc.cluster.local
Output:
{ "virtualService": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceB.svc.cluster.local", "createdAt": 1563908363.999, "lastUpdatedAt": 1563913940.866, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 3 }, "spec": {}, "status": { "status": "DELETED" }, "virtualServiceName": "serviceB.svc.cluster.local" } }
Untuk informasi selengkapnya, lihat Layanan Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DeleteVirtualService
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-mesh
.
- AWS CLI
-
Untuk menggambarkan mesh layanan
describe-mesh
Contoh berikut mengembalikan rincian tentang mesh layanan tertentu.aws appmesh describe-mesh \ --mesh-name
app1
Output:
{ "mesh": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1", "createdAt": 1563809909.282, "lastUpdatedAt": 1563809909.282, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": {}, "status": { "status": "ACTIVE" } } }
Untuk informasi selengkapnya, lihat Service Meshes di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DescribeMesh
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-route
.
- AWS CLI
-
Untuk menggambarkan rute
describe-route
Contoh berikut mengembalikan rincian tentang rute yang ditentukan.aws appmesh describe-route \ --mesh-name
app1
\ --virtual-router-namevrServiceB
\ --route-nametoVnServiceB-weighted
Output:
{ "route": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB/route/toVnServiceB-weighted", "createdAt": 1563811384.015, "lastUpdatedAt": 1563811384.015, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "routeName": "toVnServiceB-weighted", "spec": { "httpRoute": { "action": { "weightedTargets": [ { "virtualNode": "vnServiceBv1", "weight": 90 }, { "virtualNode": "vnServiceBv2", "weight": 10 } ] }, "match": { "prefix": "/" } } }, "status": { "status": "ACTIVE" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DescribeRoute
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-virtual-node
.
- AWS CLI
-
Untuk menggambarkan simpul virtual
describe-virtual-node
Contoh berikut mengembalikan rincian tentang node virtual tertentu.aws appmesh describe-virtual-node \ --mesh-name
app1
\ --virtual-node-namevnServiceBv1
Output:
{ "virtualNode": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv1", "createdAt": 1563810019.874, "lastUpdatedAt": 1563810019.874, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "backends": [], "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv1.svc.cluster.local" } } }, "status": { "status": "ACTIVE" }, "virtualNodeName": "vnServiceBv1" } }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DescribeVirtualNode
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-virtual-router
.
- AWS CLI
-
Untuk menggambarkan router virtual
describe-virtual-router
Contoh berikut mengembalikan rincian tentang router virtual yang ditentukan.aws appmesh describe-virtual-router \ --mesh-name
app1
\ --virtual-router-namevrServiceB
Output:
{ "virtualRouter": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB", "createdAt": 1563810546.59, "lastUpdatedAt": 1563810546.59, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "listeners": [ { "portMapping": { "port": 80, "protocol": "http" } } ] }, "status": { "status": "ACTIVE" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Router Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DescribeVirtualRouter
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakandescribe-virtual-service
.
- AWS CLI
-
Untuk menggambarkan layanan virtual
describe-virtual-service
Contoh berikut mengembalikan rincian tentang layanan virtual yang ditentukan.aws appmesh describe-virtual-service \ --mesh-name
app1
\ --virtual-service-nameserviceB.svc.cluster.local
Output:
{ "virtualService": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceB.svc.cluster.local", "createdAt": 1563908363.999, "lastUpdatedAt": 1563908363.999, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "provider": { "virtualRouter": { "virtualRouterName": "vrServiceB" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceB.svc.cluster.local" } }
Untuk informasi selengkapnya, lihat Layanan Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat DescribeVirtualService
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-meshes
.
- AWS CLI
-
Untuk membuat daftar jerat layanan
list-meshes
Contoh berikut mencantumkan semua jerat layanan di AWS Wilayah saat ini.aws appmesh list-meshes
Output:
{ "meshes": [ { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1", "meshName": "app1" } ] }
Untuk informasi selengkapnya, lihat Service Meshes di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat ListMeshes
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-routes
.
- AWS CLI
-
Untuk daftar rute
list-routes
Contoh berikut mencantumkan semua rute untuk router virtual yang ditentukan.aws appmesh list-routes \ --mesh-name
app1
\ --virtual-router-namevrServiceB
Output:
{ "routes": [ { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB/route/toVnServiceB", "meshName": "app1", "routeName": "toVnServiceB-weighted", "virtualRouterName": "vrServiceB" } ] }
Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat ListRoutes
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-tags-for-resource
.
- AWS CLI
-
Untuk membuat daftar tag untuk sumber daya
list-tags-for-resource
Contoh berikut mencantumkan semua tag yang ditetapkan ke sumber daya yang ditentukan.aws appmesh list-tags-for-resource \ --resource-arn
arn:aws:appmesh:us-east-1:123456789012:mesh/app1
Output:
{ "tags": [ { "key": "key1", "value": "value1" }, { "key": "key2", "value": "value2" }, { "key": "key3", "value": "value3" } ] }
-
Untuk API detailnya, lihat ListTagsForResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-virtual-nodes
.
- AWS CLI
-
Untuk daftar node virtual
list-virtual-nodes
Contoh berikut mencantumkan semua node virtual di mesh layanan yang ditentukan.aws appmesh list-virtual-nodes \ --mesh-name
app1
Output:
{ "virtualNodes": [ { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv1", "meshName": "app1", "virtualNodeName": "vnServiceBv1" }, { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv2", "meshName": "app1", "virtualNodeName": "vnServiceBv2" } ] }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat ListVirtualNodes
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-virtual-routers
.
- AWS CLI
-
Untuk daftar router virtual
list-virtual-routers
Contoh berikut mencantumkan semua router virtual di mesh layanan yang ditentukan.aws appmesh list-virtual-routers \ --mesh-name
app1
Output:
{ "virtualRouters": [ { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB", "meshName": "app1", "virtualRouterName": "vrServiceB" } ] }
Untuk informasi selengkapnya, lihat Router Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat ListVirtualRouters
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanlist-virtual-services
.
- AWS CLI
-
Untuk daftar layanan virtual
list-virtual-services
Contoh berikut mencantumkan semua layanan virtual di mesh layanan yang ditentukan.aws appmesh list-virtual-services \ --mesh-name
app1
Output:
{ "virtualServices": [ { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceA.svc.cluster.local", "meshName": "app1", "virtualServiceName": "serviceA.svc.cluster.local" }, { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceB.svc.cluster.local", "meshName": "app1", "virtualServiceName": "serviceB.svc.cluster.local" } ] }
Untuk informasi selengkapnya, lihat Layanan Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat ListVirtualServices
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakantag-resource
.
- AWS CLI
-
Untuk menandai sumber daya
tag-resource
Contoh berikut menambahkan tagkey1
dengan nilaivalue1
ke sumber daya yang ditentukan.aws appmesh tag-resource \ --resource-arn
arn:aws:appmesh:us-east-1:123456789012:mesh/app1
\ --tagskey=key1,value=value1
Perintah ini tidak menghasilkan output.
-
Untuk API detailnya, lihat TagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanuntag-resource
.
- AWS CLI
-
Untuk menghapus tag sumber daya
untag-resource
Contoh berikut menghapus tag dengan kuncikey1
dari sumber daya yang ditentukan.aws appmesh untag-resource \ --resource-arn
arn:aws:appmesh:us-east-1:123456789012:mesh/app1
\ --tag-keyskey1
Perintah ini tidak menghasilkan output.
-
Untuk API detailnya, lihat UntagResource
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-mesh
.
- AWS CLI
-
Untuk memperbarui mesh layanan
update-mesh
Contoh berikut menggunakan file JSON input untuk memperbarui mesh layanan untuk memungkinkan semua lalu lintas keluar eksternal diteruskan melalui proxy Envoy yang tidak tersentuh.aws appmesh update-mesh \ --cli-input-json
file://update-mesh.json
Isi dari
update-mesh.json
:{ "meshName": "app1", "spec": { "egressFilter": { "type": "ALLOW_ALL" } } }
Output:
{ "mesh": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1", "createdAt": 1563809909.282, "lastUpdatedAt": 1563812829.687, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "egressFilter": { "type": "ALLOW_ALL" } }, "status": { "status": "ACTIVE" } } }
Untuk informasi selengkapnya, lihat Service Meshes di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat UpdateMesh
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-route
.
- AWS CLI
-
Untuk memperbarui rute
update-route
Contoh berikut menggunakan file JSON input untuk memperbarui bobot untuk rute.aws appmesh update-route \ --cli-input-json
file://update-route-weighted.json
Isi dari
update-route-weighted.json
:{ "meshName": "app1", "routeName": "toVnServiceB-weighted", "spec": { "httpRoute": { "action": { "weightedTargets": [ { "virtualNode": "vnServiceBv1", "weight": 80 }, { "virtualNode": "vnServiceBv2", "weight": 20 } ] }, "match": { "prefix": "/" } } }, "virtualRouterName": "vrServiceB" }
Output:
{ "route": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB/route/toVnServiceB-weighted", "createdAt": 1563811384.015, "lastUpdatedAt": 1563819600.022, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "routeName": "toVnServiceB-weighted", "spec": { "httpRoute": { "action": { "weightedTargets": [ { "virtualNode": "vnServiceBv1", "weight": 80 }, { "virtualNode": "vnServiceBv2", "weight": 20 } ] }, "match": { "prefix": "/" } } }, "status": { "status": "ACTIVE" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Rute di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat UpdateRoute
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-virtual-node
.
- AWS CLI
-
Untuk memperbarui node virtual
update-virtual-node
Contoh berikut menggunakan file JSON input untuk menambahkan pemeriksaan kesehatan ke node virtual.aws appmesh update-virtual-node \ --cli-input-json
file://update-virtual-node.json
Isi dari
update-virtual-node.json
:{ "clientToken": "500", "meshName": "app1", "spec": { "listeners": [ { "healthCheck": { "healthyThreshold": 5, "intervalMillis": 10000, "path": "/", "port": 80, "protocol": "http", "timeoutMillis": 3000, "unhealthyThreshold": 3 }, "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv1.svc.cluster.local" } } }, "virtualNodeName": "vnServiceBv1" }
Output:
{ "virtualNode": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualNode/vnServiceBv1", "createdAt": 1563810019.874, "lastUpdatedAt": 1563819234.825, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "listeners": [ { "healthCheck": { "healthyThreshold": 5, "intervalMillis": 10000, "path": "/", "port": 80, "protocol": "http", "timeoutMillis": 3000, "unhealthyThreshold": 3 }, "portMapping": { "port": 80, "protocol": "http" } } ], "serviceDiscovery": { "dns": { "hostname": "serviceBv1.svc.cluster.local" } } }, "status": { "status": "ACTIVE" }, "virtualNodeName": "vnServiceBv1" } }
Untuk informasi selengkapnya, lihat Node Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat UpdateVirtualNode
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-virtual-router
.
- AWS CLI
-
Untuk memperbarui router virtual
update-virtual-router
Contoh berikut menggunakan file JSON input untuk memperbarui port pendengar router virtual.aws appmesh update-virtual-router \ --cli-input-json
file://update-virtual-router.json
Isi dari
update-virtual-router.json
:{ "meshName": "app1", "spec": { "listeners": [ { "portMapping": { "port": 8080, "protocol": "http" } } ] }, "virtualRouterName": "vrServiceB" }
Output:
{ "virtualRouter": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualRouter/vrServiceB", "createdAt": 1563810546.59, "lastUpdatedAt": 1563819431.352, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "listeners": [ { "portMapping": { "port": 8080, "protocol": "http" } } ] }, "status": { "status": "ACTIVE" }, "virtualRouterName": "vrServiceB" } }
Untuk informasi selengkapnya, lihat Router Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat UpdateVirtualRouter
di Referensi AWS CLI Perintah.
-
Contoh kode berikut menunjukkan cara menggunakanupdate-virtual-service
.
- AWS CLI
-
Untuk memperbarui layanan virtual
update-virtual-service
Contoh berikut menggunakan file JSON input untuk memperbarui layanan virtual untuk menggunakan penyedia router virtual.aws appmesh update-virtual-service \ --cli-input-json
file://update-virtual-service.json
Isi dari
update-virtual-service.json
:{ "meshName": "app1", "spec": { "provider": { "virtualRouter": { "virtualRouterName": "vrServiceA" } } }, "virtualServiceName": "serviceA.svc.cluster.local" }
Output:
{ "virtualService": { "meshName": "app1", "metadata": { "arn": "arn:aws:appmesh:us-east-1:123456789012:mesh/app1/virtualService/serviceA.svc.cluster.local", "createdAt": 1563810859.474, "lastUpdatedAt": 1563820257.411, "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 3 }, "spec": { "provider": { "virtualRouter": { "virtualRouterName": "vrServiceA" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceA.svc.cluster.local" } }
Untuk informasi selengkapnya, lihat Layanan Virtual di Panduan Pengguna AWS App Mesh.
-
Untuk API detailnya, lihat UpdateVirtualService
di Referensi AWS CLI Perintah.
-