

Pemberitahuan akhir dukungan: Pada 7 Oktober 2026, AWS akan mengakhiri dukungan 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 Pengakhiran Layanan dan Migrasi](https://docs.aws.amazon.com/proton/latest/userguide/proton-end-of-support.html).

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

# Konfigurasi sinkronisasi layanan
<a name="ag-service-sync-configs"></a>

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 ke 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 menyebarkan layanan Anda. Service sync menggabungkan AWS Proton dan Git untuk membantu Anda menyediakan infrastruktur standar yang didefinisikan dan dikelola melalui AWS Proton template. Ini mengelola definisi layanan di repositori Git Anda dan mengurangi peralihan alat. Dibandingkan dengan menggunakan Git saja, standarisasi template dan penerapan di AWS Proton membantu Anda menghabiskan lebih sedikit waktu mengelola infrastruktur Anda. AWS Proton juga memberikan transparansi dan auditabilitas yang lebih tinggi untuk pengembang dan tim platform.

## AWS Proton Berkas OPS
<a name="service-sync-ops"></a>

`proton-ops`File menentukan tempat AWS Proton menemukan file spesifikasi yang digunakan untuk memperbarui instance layanan Anda. Ini juga mendefinisikan urutan apa untuk memperbarui instance layanan dan kapan harus mempromosikan perubahan dari satu instance ke instance lainnya.

`proton-ops`File ini 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.

**Contoh. /konfigurasi/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-one``prod-two`, dan `prod-three` merupakan contoh.

`spec`File dapat berupa semua instance atau subset dari instance yang didefinisikan dalam file. `proton-ops` 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 instance tersebut.

Contoh berikut menunjukkan seperti apa `spec` file tersebut. Ingat, `proton-ops` file tersebut disinkronkan dari `spec` file-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 sebuah instance tidak disinkronkan, dan ada masalah berkelanjutan saat mencoba menyinkronkannya, memanggil [https://docs.aws.amazon.com//proton/latest/APIReference/API_GetServiceInstanceSyncStatus.html](https://docs.aws.amazon.com//proton/latest/APIReference/API_GetServiceInstanceSyncStatus.html)API dapat membantu menyelesaikan masalah.

**catatan**  
Pelanggan yang menggunakan sinkronisasi layanan masih dibatasi oleh AWS Proton batasan.

**Pemblokir**

Dengan menyinkronkan layanan Anda menggunakan sinkronisasi AWS Proton layanan, Anda dapat memperbarui spesifikasi layanan Anda 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 menimpa setiap perubahan manual yang Anda buat melalui Konsol Manajemen AWS atau AWS CLI, seperti memperbarui instance layanan atau menghapus instance layanan. Untuk mencapai hal ini, AWS Proton secara otomatis membuat pemblokir sinkronisasi layanan dengan menonaktifkan sinkronisasi layanan saat mendeteksi perubahan manual.

Untuk mendapatkan semua pemblokir yang terkait dengan layanan, Anda harus melakukan hal berikut agar masing-masing `serviceInstance` terkait dengan layanan:
+ Panggil `getServiceSyncBlockerSummary` API hanya dengan file`serviceName`.
+ Panggil `getServiceSyncBlockerSummary` API dengan `serviceName` dan`serviceInstanceName`.

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 pemblokir.

Jika Anda memperbarui atau membuat instance layanan secara manual, AWS Proton buat pemblokir sinkronisasi layanan pada instance layanan. AWS Proton terus menyinkronkan semua instance layanan lainnya, tetapi menonaktifkan sinkronisasi instance layanan ini hingga pemblokir diselesaikan. Jika Anda menghapus instance layanan dari layanan, AWS Proton buat pemblokir sinkronisasi layanan pada layanan. Ini AWS Proton mencegah sinkronisasi salah satu instance layanan hingga 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 **Sinkronisasi Layanan**. Jika instance layanan atau layanan diblokir, tombol **Aktifkan** akan muncul. Untuk mengaktifkan sinkronisasi layanan, pilih **Aktifkan**.

**Topics**
+ [AWS Proton Berkas OPS](#service-sync-ops)
+ [Buat konfigurasi sinkronisasi layanan](create-service-sync.md)
+ [Melihat detail konfigurasi untuk sinkronisasi layanan](get-service-sync.md)
+ [Mengedit konfigurasi sinkronisasi layanan](update-service-sync.md)
+ [Menghapus konfigurasi sinkronisasi layanan](delete-service-sync.md)

# Buat konfigurasi sinkronisasi layanan
<a name="create-service-sync"></a>



Anda dapat membuat konfigurasi sinkronisasi layanan menggunakan konsol atau AWS CLI.

------
#### [ Konsol Manajemen AWS ]

1. Pada halaman **Choose a service template**, pilih template dan pilih **Configure**.

1. Pada halaman **Konfigurasi layanan**, di bagian **Detail layanan**, masukkan **nama Layanan** baru.

1. (Opsional) Masukkan deskripsi untuk layanan.

1. Di bagian **Repositori kode sumber Aplikasi, pilih Pilih repositori** **Git tertaut untuk memilih repositori** yang telah Anda tautkan. AWS Proton Jika Anda belum memiliki repositori tertaut, pilih **Tautkan repositori Git lain dan ikuti petunjuk di Buat tautan ke repositori** [Anda](https://docs.aws.amazon.com//proton/latest/userguide/ag-create-repo.html).

1. Untuk **Repositori**, pilih nama repositori kode sumber Anda dari daftar.

1. Untuk **Branch**, pilih nama cabang repositori untuk kode sumber Anda dari daftar.

1. (Opsional) Di bagian **Tag**, pilih **Tambahkan tag baru** dan masukkan kunci dan nilai untuk membuat tag yang dikelola pelanggan.

1. Pilih **Berikutnya**.

1. Pada halaman **Konfigurasi instance layanan**, di bagian **Sumber definisi layanan**, pilih **Sinkronkan layanan Anda dari Git**.

1. Di bagian **File definisi layanan**, jika Anda AWS Proton ingin membuat `proton-ops` file Anda, pilih **Saya ingin AWS Proton membuat** file. Dengan opsi ini, AWS Proton buat `proton-ops` file `spec` dan di lokasi yang Anda tentukan. Pilih **Saya menyediakan file saya sendiri untuk membuat file** OPS Anda sendiri.

1. Di bagian **repositori definisi Layanan, pilih Pilih repositori** **Git tertaut untuk memilih repositori** yang telah Anda tautkan. AWS Proton

1. Untuk **nama Repositori**, pilih nama repositori kode sumber Anda dari daftar.

1. Untuk **cabang `proton-ops` file**, pilih nama cabang Anda dari daftar di mana AWS Proton akan menempatkan OPS dan file spesifikasi Anda.

1. Di bagian **Contoh layanan**, setiap bidang diisi secara otomatis berdasarkan nilai dalam `proton-ops` file.

1. Pilih **Berikutnya** dan tinjau masukan Anda.

1. Pilih **Buat**.

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

**Buat konfigurasi sinkronisasi layanan menggunakan AWS CLI**
+ Jalankan perintah berikut.

  ```
  $ aws proton create-service-sync-config \
      --resource "service-arn" \
      --repository-provider "GITHUB" \
      --repository "example/proton-sync-service" \
      --ops-file-branch "main" \
      --proton-ops-file "./configuration/custom-proton-ops.yaml" (optional)
  ```

  Responsnya adalah sebagai berikut.

  ```
  {
      "serviceSyncConfig": {
          "branch": "main",
          "filePath": "./configuration/custom-proton-ops.yaml",
          "repositoryName": "example/proton-sync-service",
          "repositoryProvider": "GITHUB",
          "serviceName": "service name"
      }
  }
  ```

------

# Melihat detail konfigurasi untuk sinkronisasi layanan
<a name="get-service-sync"></a>

Anda dapat melihat data detail konfigurasi untuk sinkronisasi layanan menggunakan konsol atau AWS CLI.

------
#### [ Konsol Manajemen AWS ]

**Menggunakan konsol untuk melihat detail konfigurasi untuk sinkronisasi layanan**

1. Pada panel navigasi, silakan pilih **Layanan**.

1. Untuk melihat data detail, pilih nama layanan yang Anda buat untuk konfigurasi sinkronisasi layanan.

1. Di halaman detail untuk layanan, pilih tab **Sinkronisasi layanan** untuk melihat data detail konfigurasi untuk sinkronisasi layanan.

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

**Gunakan AWS CLI untuk mendapatkan layanan yang disinkronkan.**

Jalankan perintah berikut.

```
$ aws proton get-service-sync-config \
    --service-name "service name"
```

Responsnya adalah sebagai berikut.

```
{
    "serviceSyncConfig": {
        "branch": "main",
        "filePath": "./configuration/custom-proton-ops.yaml",
        "repositoryName": "example/proton-sync-service",
        "repositoryProvider": "GITHUB",
        "serviceName": "service name"
    }
}
```

**Gunakan AWS CLI untuk mendapatkan status sinkronisasi layanan.**

Jalankan perintah berikut.

```
$ aws proton get-service-sync-status \
    --service-name "service name"
```

------

# Mengedit konfigurasi sinkronisasi layanan
<a name="update-service-sync"></a>

Anda dapat mengedit konfigurasi sinkronisasi layanan menggunakan konsol atau AWS CLI.



------
#### [ Konsol Manajemen AWS ]

Edit konfigurasi sinkronisasi layanan menggunakan konsol.

1. Pada panel navigasi, silakan pilih **Layanan**.

1. Untuk melihat data detail, pilih nama layanan yang Anda buat untuk konfigurasi sinkronisasi layanan.

1. Pada halaman detail layanan, pilih tab **Sinkronisasi layanan**.

1. Di bagian **Sinkronisasi layanan**, pilih **Edit**.

1. Pada halaman **Edit**, perbarui informasi yang ingin Anda edit, lalu pilih **Simpan**.

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

**Contoh perintah dan respons berikut menunjukkan bagaimana Anda dapat mengedit konfigurasi sinkronisasi layanan menggunakan AWS CLI.**

Jalankan perintah berikut.

```
$ aws proton update-service-sync-config \
    --service-name "service name" \
    --repository-provider "GITHUB" \
    --repository "example/proton-sync-service" \
    --ops-file-branch "main" \
    --ops-file "./configuration/custom-proton-ops.yaml"
```

Responsnya adalah sebagai berikut.

```
{
    "serviceSyncConfig": {
        "branch": "main",
        "filePath": "./configuration/custom-proton-ops.yaml",
        "repositoryName": "example/proton-sync-service",
        "repositoryProvider": "GITHUB",
        "serviceName": "service name"
    }
}
```

------

# Menghapus konfigurasi sinkronisasi layanan
<a name="delete-service-sync"></a>

Anda dapat menghapus konfigurasi sinkronisasi layanan menggunakan konsol atau AWS CLI.

------
#### [ Konsol Manajemen AWS ]

**Menghapus konfigurasi sinkronisasi layanan menggunakan konsol**

1. Pada halaman detail layanan, pilih tab **Sinkronisasi layanan**.

1. Di bagian **Detail sinkronisasi layanan**, pilih **Putuskan sambungan untuk memutuskan sambungan** repositori Anda. Setelah repositori Anda terputus, kami tidak lagi menyinkronkan layanan dari repositori itu.

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

**Contoh perintah dan tanggapan berikut menunjukkan cara menggunakan konfigurasi yang disinkronkan AWS CLI untuk menghapus layanan.**

Jalankan perintah berikut.

```
$ aws proton delete-service-sync-config \
    --service-name "service name"
```

Responsnya adalah sebagai berikut.

```
{
    "serviceSyncConfig": {
        "branch": "main",
        "filePath": "./configuration/custom-proton-ops.yaml",
        "repositoryName": "example/proton-sync-service",
        "repositoryProvider": "GITHUB",
        "serviceName": "service name"
    }
}
```

**catatan**  
Sinkronisasi layanan tidak menghapus instance layanan. Itu hanya menghapus konfigurasi.

------