Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Servizi virtuali
Importante
Avviso di fine del supporto: il 30 settembre 2026, AWS verrà interrotto il supporto per. AWS App Mesh Dopo il 30 settembre 2026, non potrai più accedere alla AWS App Mesh console o alle risorse. AWS App Mesh Per ulteriori informazioni, consulta questo post del blog Migrazione da AWS App Mesh ad Amazon ECS Service Connect
Un servizio virtuale è un'astrazione di un servizio reale fornita direttamente o indirettamente da un nodo virtuale mediante un router virtuale. I servizi dipendenti chiamano il servizio virtuale mediante il relativo virtualServiceName
e tali richieste vengono instradate al nodo virtuale o al router virtuale specificato come provider per il servizio virtuale.
Creazione di un servizio virtuale
- AWS Management Console
-
Per creare un servizio virtuale utilizzando AWS Management Console
-
Apri la console App Mesh all'indirizzo https://console.aws.amazon.com/appmesh/
. -
Scegli la mesh in cui desideri creare il servizio virtuale. Vengono elencate tutte le mesh che possiedi e che sono state condivise con te.
-
Nel riquadro di navigazione sinistro, scegliere Virtual services (Servizi virtuali).
-
Scegliere Create virtual service (Crea servizio virtuale).
-
In Virtual service name (Nome servizio virtuale), scegliere un nome per il servizio virtuale. Puoi scegliere qualsiasi nome, ma per facilitare la correlazione tra i servizi virtuali e i servizi reali a cui ti rivolgi è consigliato il nome di individuazione del servizio reale a cui ti rivolgi
my-service.default.svc.cluster.local
, ad esempio. In questo modo non è necessario modificare il codice per fare riferimento a un nome diverso da quello a cui fa attualmente riferimento il codice. Il nome specificato deve essere risolto in un indirizzo IP non di loopback perché il contenitore dell'app deve essere in grado di risolvere correttamente il nome prima che la richiesta venga inviata al proxy Envoy. È possibile utilizzare qualsiasi indirizzo IP non di loopback perché né l'app né i contenitori proxy comunicano con questo indirizzo IP. Il proxy comunica con altri servizi virtuali tramite i nomi che hai configurato per essi in App Mesh, non tramite gli indirizzi IP a cui i nomi si riferiscono. -
Per Provider, scegliere il tipo di provider per il servizio virtuale:
-
Se si desidera che il servizio virtuale distribuisca il traffico su più nodi virtuali, selezionare Virtual router (Router virtuale) e quindi scegliere il router virtuale da utilizzare dal menu a discesa.
-
Se desideri che il servizio virtuale raggiunga un nodo virtuale direttamente senza un router virtuale, seleziona Nodo virtuale, quindi scegli il nodo virtuale da utilizzare dal menu a discesa.
Nota
App Mesh può creare automaticamente una policy Envoy route rettry predefinita per ogni provider di nodi virtuali che definisci a partire dal 29 luglio 2020, anche se non puoi definire tale policy tramite App Mesh. API Per ulteriori informazioni, consulta Politica predefinita per i nuovi tentativi di routing.
-
Se al momento non si desidera che il servizio virtuale instradi il traffico (ad esempio, se il router virtuale o i nodi virtuali non esistono ancora), scegliere None (Nessuno). È possibile aggiornare il provider per questo servizio virtuale in un secondo momento.
-
-
Scegliere Create virtual service (Crea servizio virtuale) per terminare.
-
- AWS CLI
-
Per creare un servizio virtuale utilizzando. AWS CLI
Creare un servizio virtuale con un provider di nodi virtuali utilizzando il seguente comando e un JSON file di input (sostituire il
red
valori con i tuoi):-
aws appmesh create-virtual-service \ --cli-input-json file://create-virtual-service-virtual-node.json
-
Contenuto dell'esempio create-virtual-service-virtual -node.json:
{ "meshName": "meshName", "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "virtualServiceName": "serviceA.svc.cluster.local" }
-
Output di esempio:
{ "virtualService": { "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:
us-west-2
:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local", "createdAt": "2022-04-06T09:45:35.890000-05:00", "lastUpdatedAt": "2022-04-06T09:45:35.890000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 1 }, "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "status": { "status": "ACTIVE" }, "virtualServiceName": "serviceA.svc.cluster.local" } }
Per ulteriori informazioni sulla creazione di un servizio virtuale con AWS CLI for App Mesh, vedere il create-virtual-servicecomando nel AWS CLI riferimento.
-
Eliminazione di un servizio virtuale
Nota
Non è possibile eliminare un servizio virtuale a cui fa riferimento una route gateway. È necessario prima eliminare la route del gateway.
- AWS Management Console
-
Per eliminare un servizio virtuale utilizzando AWS Management Console
-
Apri la console App Mesh all'indirizzo https://console.aws.amazon.com/appmesh/
. -
Scegli la mesh da cui desideri eliminare un servizio virtuale. Vengono elencate tutte le mesh che possiedi e che sono state condivise con te.
-
Nel riquadro di navigazione sinistro, scegliere Virtual services (Servizi virtuali).
-
Scegli il servizio virtuale che desideri eliminare e fai clic su Elimina nell'angolo in alto a destra. Puoi eliminare solo un gateway virtuale in cui il tuo account è elencato come proprietario della risorsa.
-
Nella casella di conferma, digita
delete
e quindi fai clic su Elimina.
-
- AWS CLI
-
Per eliminare un servizio virtuale utilizzando il AWS CLI
-
Usa il seguente comando per eliminare il tuo servizio virtuale (sostituisci il
red
valori (con i tuoi):aws appmesh delete-virtual-service \ --mesh-name
meshName
\ --virtual-service-nameserviceA.svc.cluster.local
-
Output di esempio:
{ "virtualService": { "meshName": "meshName", "metadata": { "arn": "arn:aws:appmesh:
us-west-2
:210987654321:mesh/meshName/virtualService/serviceA.svc.cluster.local", "createdAt": "2022-04-06T09:45:35.890000-05:00", "lastUpdatedAt": "2022-04-07T10:39:42.772000-05:00", "meshOwner": "123456789012", "resourceOwner": "210987654321", "uid": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE", "version": 2 }, "spec": { "provider": { "virtualNode": { "virtualNodeName": "nodeName" } } }, "status": { "status": "DELETED" }, "virtualServiceName": "serviceA.svc.cluster.local" } }
Per ulteriori informazioni sull'eliminazione di un servizio virtuale con AWS CLI for App Mesh, vedere il delete-virtual-servicecomando nel AWS CLI riferimento.
-