

サポート終了通知: 2026 年 10 月 7 日、 AWS はサポートを終了します AWS Proton。2026 年 10 月 7 日以降、 AWS Proton コンソールまたは AWS Proton リソースにアクセスできなくなります。デプロイされたインフラストラクチャはそのまま残ります。詳細については、[AWS Proton 「サービス廃止と移行ガイド](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html)」を参照してください。

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# サービスインスタンスを更新する
<a name="ag-svc-instance-update"></a>

 AWS Proton サービスインスタンスを更新し、更新をキャンセルする方法について説明します。

サービスインスタンスはサービスに属します。インスタンスを作成または削除できるのは、サービスの[編集](ag-svc-update.md)、[作成](ag-create-svc.md)、および[削除](ag-svc-delete.md)アクションのコンテキスト内のみに限られます。サービスからインスタンスを追加および削除する方法については、「[サービスを編集する](ag-svc-update.md)」を参照してください。

サービスインスタンスを更新しようとする場合、以下に挙げるように 4 つのモードがあります。を使用する場合 AWS CLI、 `deployment-type`フィールドは モードを定義します。コンソールを使用する場合、これらのモードはサービスインスタンスの詳細ページにある [**Actions (アクション)**] ドロップダウンリストに表示される [**Edit (編集)**] と [**Update to latest minor version (最新のマイナーバージョンに更新)**] と [**Update to latest major version (最新のメジャーバージョンに更新)**] にマップされます。

  
`NONE`  
このモードでは、デプロイは発生*しません*。リクエストしたメタデータパラメータのみが更新されます。

  
`CURRENT_VERSION`  
このモードでは、サービスインスタンスがデプロイされ、指定した新しい仕様に従って更新されます。リクエストしたパラメータのみが更新されます。この `deployment-type` を使用する場合、マイナーバージョンまたはメジャーバージョンのパラメータを*含めない*でください。

  
`MINOR_VERSION`  
このモードでは、サービスインスタンスは、デフォルトで、使用中の現行メジャーバージョンに所属する、パブリッシュされた推奨マイナーバージョン (最新) でデプロイされ、更新されます。また、使用中の現行メジャーバージョンの別のマイナーバージョンを指定することもできます。

  
`MAJOR_VERSION`  
このモードでは、サービスインスタンスがデプロイされ、デフォルトで現在のテンプレートのパブリッシュされた推奨 (最新の) メジャーバージョンとマイナーバージョンで更新されます。使用中のメジャーバージョンやマイナーバージョン (オプション) よりも高いメジャーバージョンも指定できます。

`deploymentStatus` が `IN_PROGRESS`. AWS Proton attempts の場合、サービスインスタンスの更新デプロイをキャンセルできます。正常にキャンセルされる保証は*ありません*。

更新デプロイをキャンセルすると、 は次のステップに示すようにデプロイをキャンセル AWS Proton しようとします。
+ デプロイの状態を「`CANCELLING`」に設定します。
+ 処理中のデプロイを停止し、`IN_PROGRESS` の際にデプロイによって作成された新しいリソースを削除します。
+ デプロイの状態を「`CANCELLED`」に設定します。
+ リソースの状態をデプロイが開始される前の状態に戻します。

サービスインスタンスのデプロイをキャンセルする方法の詳細については、『[AWS Proton API リファレンス](https://docs.aws.amazon.com/proton/latest/APIReference/API_CancelServiceInstanceDeployment.html)』の「*CancelServiceInstanceDeployment*」を参照してください。

**コンソールまたは AWS CLI を使用して、更新を行うか、更新デプロイをキャンセルします。**

------
#### [ AWS マネジメントコンソール ]

**次の手順に従って、コンソールでサービスインスタンスを更新します。**

1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のサービスナビゲーションペインで [**Service instance (サービスインスタンス)**] を選択します。

1. サービスインスタンスの一覧で、更新したいサービスインスタンスの名前を選択します。

1. 仕様を更新するには [**Actions (アクション)**] を選択してから更新オプションのいずれかを選択して [**Edit (編集)**] で仕様を更新するか、または [**Actions (アクション)**] を選択してから [**Update to latest minor version (最新のマイナーバージョンに更新)**] または [**Update to latest major version (最新のメジャーバージョンに更新)**] を選択します。

1. 各フォームに必要な値を入力し、[**Review (確認)**] ページが表示されるまでに [**Next (次へ)**] を選択します。

1. 編集内容を確認して [**Update (更新)**] を選択します。

------
#### [ AWS CLI ]

**CLI のコマンドとレスポンスの例に示すように、サービスインスタンスを更新して新しいマイナーバージョンにします。**

修正した `spec` でサービスインスタンスを更新する際には、`"${Proton::CURRENT_VAL}"` を使用して `spec` に値が存在する場合に元の `spec` を保存するパラメータ値を指定できます。`get-service` で説明するように、`spec` を使用してサービスインスタンスの元の [サービスデータを表示する](ag-svc-view.md) を表示します。

以下の例は、`"${Proton::CURRENT_VAL}"` での `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"
```

コマンド: 更新する

```
$ 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}}"
```

レスポンス:

```
{
    "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"
    }
}
```

コマンド: ステータスを取得して確認する

```
$ aws proton get-service-instance \
    --name "{{instance-one}}" \
    --service-name "{{simple-svc}}"
```

レスポンス:

```
{
    "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 マネジメントコンソール ]

**次の手順に示すように、コンソールでサービスインスタンスのデプロイをキャンセルします。**

1. [AWS Proton コンソール](https://console.aws.amazon.com//proton/)のサービスナビゲーションペインで [**Service instance (サービスインスタンス)**] を選択します。

1. サービスインスタンスの一覧で、デプロイ更新をキャンセルしたいサービスインスタンスの名前を選択します。

1. 更新のデプロイステータスが [**In progress (進行中)**] の場合、サービスインスタンスの詳細ページで [**Action (アクション)**] を選択してから [**Cancel deployment (デプロイをキャンセル)**] を選択します。

1. キャンセルを確認するメッセージが表示されます。[**Cancel deployment (デプロイをキャンセル)**] を選択します。

1. 更新のデプロイステータスが [**[Cancelling (キャンセル中)**] に変わり、キャンセルが完了すると [**Cancelled (キャンセル済み)**] に変わります。

------
#### [ AWS CLI ]

**CLI のコマンドとレスポンスの例に示すように、新しいマイナーバージョン 2 への IN\_PROGRESS サービスインスタンス更新をキャンセルします。**

この例で使用するテンプレートには待機条件が含まれているため、更新のデプロイが成功する前にキャンセルが開始されます。

コマンド: キャンセルする

```
$ aws proton cancel-service-instance-deployment \
    --service-instance-name "{{instance-one}}" \
    --service-name "{{simple-svc}}"
```

レスポンス:

```
{
    "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"
    }
}
```

コマンド: ステータスを取得して確認する

```
$ aws proton get-service-instance \
    --name "{{instance-one}}" \
    --service-name "{{simple-svc}}"
```

レスポンス:

```
{
    "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"
    }
}
```

------