Memperbarui instance layanan - AWS Proton

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memperbarui instance layanan

Pelajari cara memperbarui instance AWS Proton layanan dan membatalkan pembaruan.

Contoh layanan milik layanan. Anda hanya dapat membuat atau menghapus instance dalam konteks layanan mengedit, membuat, dan menghapus tindakan. Untuk mempelajari cara menambah dan menghapus instance dari layanan, lihatMengedit layanan.

Ada empat mode untuk memperbarui instance layanan seperti yang dijelaskan dalam daftar berikut. Saat menggunakan AWS CLI, deployment-type bidang mendefinisikan mode. Saat menggunakan konsol, mode ini dipetakan ke Edit dan Perbarui ke versi minor terbaru dan Perbarui ke tindakan versi utama terbaru yang diturunkan dari Tindakan di halaman detail instance layanan.

NONE

Dalam mode ini, penerapan tidak terjadi. Hanya parameter metadata yang diminta yang diperbarui.

CURRENT_VERSION

Dalam mode ini, instance layanan di-deploy dan diperbarui dengan spesifikasi baru yang Anda berikan. Hanya parameter yang diminta yang diperbarui. Jangan sertakan parameter versi minor atau mayor saat Anda menggunakan inideployment-type.

MINOR_VERSION

Dalam mode ini, instance layanan disebarkan dan diperbarui dengan versi minor yang dipublikasikan dan direkomendasikan (terbaru) dari versi utama saat ini yang digunakan secara default. Anda juga dapat menentukan versi minor yang berbeda dari versi utama saat ini yang digunakan.

MAJOR_VERSION

Dalam mode ini, instance layanan disebarkan dan diperbarui dengan versi mayor dan minor yang dipublikasikan, direkomendasikan (terbaru) dari template saat ini secara default. Anda juga dapat menentukan versi mayor yang berbeda yang lebih tinggi dari versi utama yang digunakan dan versi minor (opsional).

Anda dapat mencoba membatalkan penerapan pembaruan instans layanan jika deploymentStatus adaIN_PROGRESS. AWS Proton upaya untuk membatalkan penyebaran. Pembatalan yang berhasil tidak dijamin.

Saat Anda membatalkan penerapan pembaruan, AWS Proton upaya untuk membatalkan penerapan seperti yang tercantum dalam langkah-langkah berikut.

  • Menetapkan status penerapan keCANCELLING.

  • Menghentikan penerapan dalam proses dan menghapus sumber daya baru apa pun yang dibuat oleh penerapan saat. IN_PROGRESS

  • Menetapkan status penerapan keCANCELLED.

  • Mengembalikan status sumber daya ke keadaan sebelum penerapan dimulai.

Untuk informasi selengkapnya tentang membatalkan penerapan instance layanan, lihat CancelServiceInstanceDeploymentdi Referensi AWS Proton API.

Gunakan konsol atau AWS CLI untuk membuat pembaruan atau membatalkan penerapan pembaruan.

AWS Management Console

Perbarui instance layanan menggunakan konsol dengan mengikuti langkah-langkah ini.

  1. Di AWS Proton konsol, pilih Instans layanan di panel navigasi.

  2. Dalam daftar instance layanan, pilih nama instance layanan yang ingin Anda perbarui.

  3. Pilih Tindakan dan kemudian pilih salah satu opsi pembaruan, Edit untuk memperbarui spesifikasi atau Tindakan dan kemudian Perbarui ke versi minor terbaru, atau Perbarui ke versi utama terbaru.

  4. Isi setiap formulir dan pilih Berikutnya hingga Anda mencapai halaman Ulasan.

  5. Tinjau hasil edit Anda dan pilih Perbarui.

AWS CLI

Perbarui instance layanan ke versi minor baru seperti yang ditunjukkan dalam perintah dan tanggapan contoh CLI.

Saat memperbarui instance layanan dengan modifikasispec, Anda dapat menggunakan "${Proton::CURRENT_VAL}" untuk menunjukkan nilai parameter mana yang akan dipertahankan dari aslinyaspec, jika nilainya ada dispec. Gunakan get-service untuk melihat asli spec untuk instance layanan, seperti yang dijelaskan dalamLihat data layanan.

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan "${Proton::CURRENT_VAL}" dalamspec.

Spesifikasi:

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"

Perintah: untuk memperbarui

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

Respons:

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

Perintah: untuk mendapatkan dan mengkonfirmasi status

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

Respons:

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

Batalkan penyebaran instance layanan menggunakan konsol seperti yang ditunjukkan pada langkah-langkah berikut.

  1. Di AWS Proton konsol, pilih Instans layanan di panel navigasi.

  2. Dalam daftar instance layanan, pilih nama instance layanan dengan pembaruan penyebaran yang ingin Anda batalkan.

  3. Jika status penyebaran pembaruan Anda sedang berlangsung, di halaman detail instance layanan, pilih Tindakan, lalu Batalkan penerapan.

  4. Modal meminta Anda untuk mengkonfirmasi pembatalan. Pilih Batalkan penerapan.

  5. Status penyebaran pembaruan Anda diatur ke Membatalkan dan kemudian Dibatalkan untuk menyelesaikan pembatalan.

AWS CLI

Batalkan pembaruan penyebaran instance layanan IN_PROGRESS ke versi minor baru 2 seperti yang ditunjukkan pada perintah dan tanggapan contoh CLI berikut.

Kondisi tunggu disertakan dalam template yang digunakan untuk contoh ini sehingga pembatalan dimulai sebelum penerapan pembaruan berhasil.

Perintah: untuk membatalkan

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

Respons:

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

Perintah: untuk mendapatkan dan mengkonfirmasi status

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

Respons:

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