Memperbarui instans layanan - AWS Proton

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

Memperbarui instans layanan

Pelajari cara memperbarui instanceAWS Proton layanan dan membatalkan pembaruan.

Sebuah contoh layanan milik layanan. Anda hanya dapat membuat atau menghapus instance dalam konteks layanan edit, membuat dan menghapus tindakan. Untuk mempelajari cara menambah dan menghapus instans dari layanan, lihatMengedit layanan.

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

NONE

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

CURRENT_VERSION

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

MINOR_VERSION

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

MAJOR_VERSION

Dalam mode ini, instance layanan dikerahkan dan diperbarui dengan versi utama 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 penyebaran pembaruan instans layanan jikadeploymentStatus adaIN_PROGRESS. AWS Protonmencoba untuk membatalkan deployment. Pembatalan yang berhasil tidak dijamin.

Saat Anda membatalkan penyebaran pembaruan,AWS Proton coba batalkan penyebaran seperti yang tercantum dalam langkah-langkah berikut.

  • Menetapkan negara penyebaran untukCANCELLING.

  • Menghentikan penyebaran dalam proses dan menghapus sumber daya baru yang dibuat oleh penyebaran kapanIN_PROGRESS.

  • Menetapkan negara penyebaran untukCANCELLED.

  • Mengembalikan status sumber daya ke apa itu sebelum penyebaran dimulai.

Untuk informasi selengkapnya tentang membatalkan penyebaran instans layanan, lihat CancelServiceInstanceDeploymentdi ReferensiAWS Proton API.

Gunakan konsol atauAWS CLI untuk melakukan pembaruan atau membatalkan penyebaran pembaruan.

AWS Management Console

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

  1. Di AWS Protonkonsol, pilih Instans layanan di panel navigasi.

  2. Dalam daftar instans layanan, pilih nama instans 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 mayor terbaru.

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

  5. Tinjau hasil edit Anda dan pilih Perbarui.

AWS CLI

Perbarui instance layanan ke versi minor baru seperti yang ditunjukkan pada perintah dan respons contoh CLI.

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

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

Spek:

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"

Jawaban:

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

Command: untuk mendapatkan dan mengkonfirmasi status

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

Jawaban:

{ "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 Protonkonsol, pilih Instans layanan di panel navigasi.

  2. Dalam daftar instans layanan, pilih nama instans layanan dengan pembaruan deployment yang ingin Anda batalkan.

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

  4. Modal meminta Anda untuk mengonfirmasi pembatalan. Pilih Batalkan penyebaran.

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

AWS CLI

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

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

Command: untuk membatalkan

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

Jawaban:

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

Command: untuk mendapatkan dan mengkonfirmasi status

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

Jawaban:

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