Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, dukungan AWS akan berakhir untuk AWS Proton. Setelah 7 Oktober 2026, Anda tidak akan lagi dapat mengakses AWS Proton konsol atau AWS Proton sumber daya. Infrastruktur yang Anda gunakan akan tetap utuh. Untuk informasi selengkapnya, lihat Panduan AWS Proton Penghentian Layanan dan Migrasi.
Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Konfigurasi sinkronisasi layanan
Dengan sinkronisasi layanan, Anda dapat mengonfigurasi dan menerapkan AWS Proton layanan Anda menggunakan Git. Anda dapat menggunakan sinkronisasi layanan untuk mengelola penerapan awal dan pembaruan AWS Proton layanan Anda dengan konfigurasi yang ditentukan dalam repositori Git. Melalui Git, Anda dapat menggunakan fitur seperti pelacakan versi dan permintaan tarik untuk mengonfigurasi, mengelola, dan menerapkan layanan Anda. Sinkronisasi layanan menggabungkan AWS Proton dan Git untuk membantu Anda menyediakan infrastruktur standar yang ditentukan dan dikelola melalui AWS Proton templat. Ini mengelola definisi layanan di repositori Git Anda dan mengurangi peralihan alat. Dibandingkan dengan menggunakan Git saja, standarisasi templat dan penerapan di AWS Proton membantu Anda menghabiskan lebih sedikit waktu untuk mengelola infrastruktur Anda. AWS Proton juga memberikan transparansi dan auditabilitas yang lebih tinggi untuk pengembang dan tim platform.
AWS Proton Berkas OPS
proton-opsFile menentukan di mana AWS Proton menemukan file spesifikasi yang digunakan untuk memperbarui instance layanan Anda. Ini juga mendefinisikan urutan apa untuk memperbarui instance layanan dan kapan mempromosikan perubahan dari satu instance ke instance lainnya.
proton-opsFile mendukung sinkronisasi instance layanan menggunakan file spesifikasi, atau beberapa file spesifikasi, yang ditemukan di repositori tertaut Anda. Anda dapat melakukan ini dengan mendefinisikan blok sinkronisasi dalam proton-ops file, seperti pada contoh berikut.
Contohnya. /configuration/proton-ops.yaml:
sync: services: frontend-svc: alpha: branch: dev spec: ./frontend-svc/test/frontend-spec.yaml beta: branch: dev spec: ./frontend-svc/test/frontend-spec.yaml gamma: branch: pre-prod spec: ./frontend-svc/pre-prod/frontend-spec.yaml prod-one: branch: prod spec: ./frontend-svc/prod/frontend-spec-second.yaml prod-two: branch: prod spec: ./frontend-svc/prod/frontend-spec-second.yaml prod-three: branch: prod spec: ./frontend-svc/prod/frontend-spec-second.yaml
Dalam contoh sebelumnya, frontend-svc adalah nama layanan, dan,alpha,beta,gamma, prod-oneprod-two,, dan prod-three adalah instance.
specFile dapat berupa semua instance atau subset dari instance yang didefinisikan dalam proton-ops file. Namun, setidaknya, itu harus memiliki instance yang ditentukan di dalam cabang dan spesifikasi yang disinkronkannya. Jika instance tidak ditentukan dalam proton-ops file, dengan cabang dan lokasi spec file tertentu, sinkronisasi layanan tidak akan membuat atau memperbarui instans tersebut.
Contoh berikut menunjukkan seperti apa spec file tersebut. Ingat, proton-ops file disinkronkan dari file- spec file ini.
Contoh./frontend-svc/test/frontend-spec.yaml:
proton: "ServiceSpec" instances: - name: "alpha" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0" - name: "beta" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0"
Contoh./frontend-svc/pre-prod/frontend-spec.yaml:
proton: "ServiceSpec" instances: - name: "gamma" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0"
Contoh./frontend-svc/prod/frontend-spec-second.yaml:
proton: "ServiceSpec" instances: - name: "prod-one" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0" - name: "prod-two" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0" - name: "prod-three" environment: "frontend-env" spec: port: 80 desired_count: 1 task_size: "x-small" image: "public.ecr.aws/z9d2n7e1/nginx:1.21.0"
Jika instance tidak disinkronkan, dan ada masalah yang berkelanjutan saat mencoba menyinkronkannya, memanggil GetServiceInstanceSyncStatus API dapat membantu menyelesaikan masalah.
catatan
Pelanggan yang menggunakan sinkronisasi layanan masih dibatasi oleh AWS Proton batas.
Pemblokir
Dengan menyinkronkan layanan Anda menggunakan sinkronisasi AWS Proton layanan, Anda dapat memperbarui spesifikasi layanan dan membuat serta memperbarui instance layanan dari repositori Git Anda. Namun, mungkin ada saat-saat di mana Anda perlu memperbarui layanan atau instance secara manual melalui Konsol Manajemen AWS atau AWS CLI.
AWS Proton membantu menghindari penulisan perubahan manual apa pun yang Anda buat melalui Konsol Manajemen AWS atau AWS CLI, seperti memperbarui instance layanan atau menghapus instans layanan. Untuk mencapai hal ini, AWS Proton secara otomatis membuat pemblokir sinkronisasi layanan dengan menonaktifkan sinkronisasi layanan ketika mendeteksi perubahan manual.
Untuk mendapatkan semua pemblokir yang terkait dengan layanan, Anda harus melakukan hal berikut secara berurutan untuk masing-masing yang serviceInstance terkait dengan layanan:
-
Panggil
getServiceSyncBlockerSummaryAPI hanya denganserviceName. -
Panggil
getServiceSyncBlockerSummaryAPI denganserviceNamedanserviceInstanceName.
Ini mengembalikan daftar pemblokir terbaru dan status yang terkait dengannya. Jika ada pemblokir yang ditandai AKTIF, Anda harus menyelesaikannya dengan memanggil UpdateServiceSyncBlocker API dengan blockerId dan resolvedReason untuk masing-masing.
Jika Anda memperbarui atau membuat instance layanan secara manual, AWS Proton membuat pemblokir sinkronisasi layanan pada instance layanan. AWS Proton terus menyinkronkan semua instance layanan lainnya, tetapi menonaktifkan sinkronisasi instance layanan ini sampai pemblokir diselesaikan. Jika Anda menghapus instance layanan dari layanan, membuat AWS Proton pemblokir sinkronisasi layanan pada layanan. Ini AWS Proton mencegah sinkronisasi instans layanan apa pun sampai pemblokir telah diselesaikan.
Setelah Anda memiliki semua pemblokir aktif, Anda harus menyelesaikannya dengan memanggil UpdateServiceSyncBlocker API dengan blockerId dan resolvedReason untuk masing-masing pemblokir aktif.
Dengan menggunakan Konsol Manajemen AWS, Anda dapat menentukan apakah sinkronisasi layanan dinonaktifkan dengan menavigasi ke AWS Proton dan memilih tab Service Sync. Jika instans layanan atau layanan diblokir, tombol Aktifkan muncul. Untuk mengaktifkan sinkronisasi layanan, pilih Aktifkan.