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à.
Aggiornare un'istanza di servizio
Scopri come aggiornare un'istanza del AWS Proton servizio e annullare l'aggiornamento.
Un'istanza di servizio appartiene a un servizio. È possibile creare o eliminare un'istanza solo nell'ambito delle azioni di modifica, creazione ed eliminazione del servizio. Per informazioni su come aggiungere e rimuovere istanze da un servizio, consultaModifica un servizio.
Esistono quattro modalità per aggiornare un'istanza del servizio, come descritto nell'elenco seguente. Quando si utilizza AWS CLI, il deployment-type
campo definisce la modalità. Quando si utilizza la console, queste modalità sono mappate alle azioni Modifica e Aggiornamento all'ultima versione secondaria e Aggiornamento all'ultima versione principale, disponibili in Azioni nella pagina di dettaglio dell'istanza del servizio.
-
NONE
In questa modalità, non si verifica una distribuzione. Vengono aggiornati solo i parametri dei metadati richiesti.
-
CURRENT_VERSION
In questa modalità, l'istanza del servizio viene distribuita e aggiornata con le nuove specifiche fornite dall'utente. Vengono aggiornati solo i parametri richiesti. Non includere i parametri della versione minore o principale quando lo usideployment-type
.
-
MINOR_VERSION
In questa modalità, l'istanza del servizio viene distribuita e aggiornata con la versione secondaria pubblicata, consigliata (più recente) della versione principale corrente, utilizzata per impostazione predefinita. È inoltre possibile specificare una versione secondaria diversa della versione principale corrente in uso.
-
MAJOR_VERSION
In questa modalità, per impostazione predefinita, l'istanza del servizio viene distribuita e aggiornata con la versione principale e secondaria pubblicata, consigliata (più recente) del modello corrente. È inoltre possibile specificare una versione principale diversa che sia superiore alla versione principale in uso e una versione secondaria (opzionale).
È possibile tentare di annullare la distribuzione di un aggiornamento di un'istanza di servizio, se lo deploymentStatus
èIN_PROGRESS
. AWS Proton tenta di annullare la distribuzione. L'annullamento riuscito non è garantito.
Quando annulli la distribuzione di un aggiornamento, AWS Proton tenta di annullare la distribuzione come indicato nei passaggi seguenti.
-
Imposta lo stato di distribuzione suCANCELLING
.
-
Interrompe il processo di distribuzione ed elimina tutte le nuove risorse create dalla distribuzione quandoIN_PROGRESS
.
-
Imposta lo stato di distribuzione suCANCELLED
.
-
Riporta lo stato della risorsa allo stato precedente all'avvio della distribuzione.
Per ulteriori informazioni sull'annullamento della distribuzione di un'istanza di servizio, consulta l'AWS Proton API CancelServiceInstanceDeploymentReference.
Usa la console o AWS CLI per effettuare aggiornamenti o annullare le distribuzioni degli aggiornamenti.
- AWS Management Console
-
Aggiorna un'istanza del servizio utilizzando la console seguendo questi passaggi.
-
Nella AWS Proton console, scegli Istanze di servizio nel riquadro di navigazione.
-
Nell'elenco delle istanze del servizio, scegli il nome dell'istanza di servizio che desideri aggiornare.
-
Scegli Azioni, quindi scegli una delle opzioni di aggiornamento, Modifica per aggiornare le specifiche o Azioni e quindi Aggiorna all'ultima versione secondaria o Aggiorna all'ultima versione principale.
-
Compila ogni modulo e scegli Avanti fino a raggiungere la pagina di revisione.
-
Controlla le modifiche e scegli Aggiorna.
- AWS CLI
-
Aggiorna un'istanza del servizio a una nuova versione secondaria, come mostrato nei comandi e nelle risposte di esempio della CLI.
Quando si aggiorna l'istanza del servizio con un'istanza modificataspec
, è possibile utilizzarla "${Proton::CURRENT_VAL}"
per indicare quali valori dei parametri preservare rispetto all'originalespec
, se i valori esistono in. spec
get-service
Da utilizzare per visualizzare l'originale spec
di un'istanza di servizio, come descritto inVisualizza i dati del servizio.
L'esempio seguente mostra come è possibile utilizzare "${Proton::CURRENT_VAL}"
in unspec
.
Spec:
proton: ServiceSpec
pipeline:
my_sample_pipeline_optional_input: "${Proton::CURRENT_VAL}"
my_sample_pipeline_required_input: "${Proton::CURRENT_VAL}"
instances:
- name: "my-instance"
environment: "simple-env"
spec:
my_sample_service_instance_optional_input: "${Proton::CURRENT_VAL}"
my_sample_service_instance_required_input: "${Proton::CURRENT_VAL}"
- name: "my-other-instance"
environment: "simple-env"
spec:
my_sample_service_instance_required_input: "789"
Comando: aggiornare
$
aws proton update-service-instance \
--name "instance-one
" \
--service-name "simple-svc
" \
--spec "file://service-spec.yaml
" \
--template-major-version "1
" \
--template-minor-version "1
" \
--deployment-type "MINOR_VERSION
"
Risposta:
{
"serviceInstance": {
"arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one",
"createdAt": "2021-04-02T21:29:59.962000+00:00",
"deploymentStatus": "IN_PROGRESS",
"environmentName": "arn:aws:proton:region-id:123456789012:environment/simple-env",
"lastDeploymentAttemptedAt": "2021-04-02T21:38:00.823000+00:00",
"lastDeploymentSucceededAt": "2021-04-02T21:29:59.962000+00:00",
"name": "instance-one",
"serviceName": "simple-svc",
"templateMajorVersion": "1",
"templateMinorVersion": "0",
"templateName": "svc-simple"
}
}
Comando: per ottenere e confermare lo stato
$
aws proton get-service-instance \
--name "instance-one
" \
--service-name "simple-svc
"
Risposta:
{
"serviceInstance": {
"arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one",
"createdAt": "2021-04-02T21:29:59.962000+00:00",
"deploymentStatus": "SUCCEEDED",
"environmentName": "simple-env",
"lastDeploymentAttemptedAt": "2021-04-02T21:38:00.823000+00:00",
"lastDeploymentSucceededAt": "2021-04-02T21:38:00.823000+00:00",
"name": "instance-one",
"serviceName": "simple-svc",
"spec": "proton: ServiceSpec\n\npipeline:\n my_sample_pipeline_optional_input: \"abc\"\n my_sample_pipeline_required_input: \"123\"\n\ninstances:\n - name: \"instance-one\"\n environment: \"simple-env\"\n spec:\n my_sample_service_instance_optional_input: \"def\"\n my_sample_service_instance_required_input: \"456\"\n - name: \"my-other-instance\"\n environment: \"kls-simple-env\"\n spec:\n my_sample_service_instance_required_input: \"789\"\n",
"templateMajorVersion": "1",
"templateMinorVersion": "1",
"templateName": "svc-simple"
}
}
- AWS Management Console
-
Annulla la distribuzione di un'istanza di servizio utilizzando la console, come illustrato nei passaggi seguenti.
-
Nella AWS Proton console, scegli Istanze di servizio nel riquadro di navigazione.
-
Nell'elenco delle istanze del servizio, scegli il nome dell'istanza del servizio con l'aggiornamento di distribuzione che desideri annullare.
-
Se lo stato di distribuzione dell'aggiornamento è In corso, nella pagina dei dettagli dell'istanza di servizio, scegli Azioni e quindi Annulla distribuzione.
-
Un modale ti chiede di confermare l'annullamento. Scegli Annulla distribuzione.
-
Lo stato di distribuzione degli aggiornamenti è impostato su Annullamento e quindi su Annullato per completare l'annullamento.
- AWS CLI
-
Annulla l'aggiornamento della distribuzione dell'istanza del servizio IN_PROGRESS alla nuova versione secondaria 2, come mostrato nei seguenti comandi e risposte di esempio CLI.
Nel modello utilizzato per questo esempio è inclusa una condizione di attesa in modo che l'annullamento inizi prima del completamento della distribuzione dell'aggiornamento.
Comando: annullare
$
aws proton cancel-service-instance-deployment \
--service-instance-name "instance-one
" \
--service-name "simple-svc
"
Risposta:
{
"serviceInstance": {
"arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one",
"createdAt": "2021-04-02T21:29:59.962000+00:00",
"deploymentStatus": "CANCELLING",
"environmentName": "simple-env",
"lastDeploymentAttemptedAt": "2021-04-02T21:45:15.406000+00:00",
"lastDeploymentSucceededAt": "2021-04-02T21:38:00.823000+00:00",
"name": "instance-one",
"serviceName": "simple-svc",
"spec": "proton: ServiceSpec\npipeline:\n my_sample_pipeline_optional_input: abc\n my_sample_pipeline_required_input: '123'\ninstances:\n- name: my-instance\n environment: MySimpleEnv\n spec:\n my_sample_service_instance_optional_input: def\n my_sample_service_instance_required_input: '456'\n- name: my-other-instance\n environment: MySimpleEnv\n spec:\n my_sample_service_instance_required_input: '789'\n",
"templateMajorVersion": "1",
"templateMinorVersion": "1",
"templateName": "svc-simple"
}
}
Comando: per ottenere e confermare lo stato
$
aws proton get-service-instance \
--name "instance-one
" \
--service-name "simple-svc
"
Risposta:
{
"serviceInstance": {
"arn": "arn:aws:proton:region-id:123456789012:service/simple-svc/service-instance/instance-one",
"createdAt": "2021-04-02T21:29:59.962000+00:00",
"deploymentStatus": "CANCELLED",
"deploymentStatusMessage": "User initiated cancellation.",
"environmentName": "simple-env",
"lastDeploymentAttemptedAt": "2021-04-02T21:45:15.406000+00:00",
"lastDeploymentSucceededAt": "2021-04-02T21:38:00.823000+00:00",
"name": "instance-one",
"serviceName": "simple-svc",
"spec": "proton: ServiceSpec\n\npipeline:\n my_sample_pipeline_optional_input: \"abc\"\n my_sample_pipeline_required_input: \"123\"\n\ninstances:\n - name: \"instance-one\"\n environment: \"simple-env\"\n spec:\n my_sample_service_instance_optional_input: \"def\"\n my_sample_service_instance_required_input: \"456\"\n - name: \"my-other-instance\"\n environment: \"kls-simple-env\"\n spec:\n my_sample_service_instance_required_input: \"789\"\n",
"templateMajorVersion": "1",
"templateMinorVersion": "1",
"templateName": "svc-simple"
}
}