

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

# Pemulihan cepat setelah failover dengan manajemen cache klaster untuk Aurora PostgreSQL
<a name="AuroraPostgreSQL.cluster-cache-mgmt"></a>

Untuk pemulihan cepat instans DB penulis di klaster Aurora PostgreSQL Anda jika terjadi failover, gunakan manajemen cache klaster untuk Amazon Aurora PostgreSQL. Manajemen cache klaster memastikan agar performa aplikasi dipertahankan jika terjadi failover. 

Dalam situasi failover yang umum, Anda mungkin mendapati penurunan performa yang besar tetapi sementara setelah failover. Penurunan performa ini terjadi karena ketika instans DB failover dimulai, cache buffer kosong. Cache kosong juga dikenal sebagai *cold cache*. Cold cache menurunkan performa karena instans DB harus membaca dari disk yang lebih lambat, bukan memanfaatkan nilai yang tersimpan dalam cache buffer. 

Dengan manajemen cache klaster, Anda menetapkan instans DB pembaca tertentu sebagai target failover. Manajemen cache klaster memastikan bahwa data dalam cache pembaca yang ditetapkan masih tersinkronisasi dengan data dalam cache instans DB penulis. Cache pembaca yang ditetapkan dengan nilai yang sudah diisi dikenal sebagai *warm cache*. Jika terjadi failover, pembaca yang ditetapkan akan langsung menggunakan nilai yang ada di warm cache-nya saat dipromosikan ke instans DB penulis baru. Pendekatan ini memberikan performa pemulihan yang lebih baik pada aplikasi Anda.

Manajemen cache klaster mengharuskan instans pembaca yang ditetapkan memiliki jenis kelas dan ukuran instans yang sama (contohnya, `db.r5.2xlarge` atau `db.r5.xlarge`) seperti instans penulis. Ingatlah hal ini ketika Anda membuat klaster DB Aurora PostgreSQL, sehingga klaster Anda dapat dipulihkan selama failover. Untuk daftar jenis kelas dan ukuran instans, lihat [Spesifikasi perangkat keras kelas instans DB untuk Aurora](https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/Concepts.DBInstanceClass.html#Concepts.DBInstanceClass.Summary).

**catatan**  
Manajemen cache cluster tidak didukung untuk cluster DB sekunder Aurora PostgreSQL yang merupakan bagian dari database global Aurora. Untuk klaster utama di mana fitur ini didukung, disarankan agar tidak ada beban kerja yang dijalankan pada pembaca tier-0 yang ditunjuk.

**Contents**
+ [Mengonfigurasi manajemen cache klaster](#AuroraPostgreSQL.cluster-cache-mgmt.Configure)
  + [Mengaktifkan manajemen cache klaster](#AuroraPostgreSQL.cluster-cache-mgmt.Enable)
  + [Mengatur prioritas tingkat promosi untuk instans DB penulis](#AuroraPostgreSQL.cluster-cache-mgmt.Writer)
  + [Mengatur prioritas tingkat promosi untuk instans DB pembaca](#AuroraPostgreSQL.cluster-cache-mgmt.Reader)
+ [Memantau cache buffer](#AuroraPostgreSQL.cluster-cache-mgmt.Monitoring)
+ [Memecahkan masalah konfigurasi CCM](#AuroraPostgreSQL.cluster-cache-mgmt.Troubleshooting)

## Mengonfigurasi manajemen cache klaster
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Configure"></a>

Untuk mengonfigurasi manajemen cache klaster, lakukan proses berikut ini secara berurutan.

**Topics**
+ [Mengaktifkan manajemen cache klaster](#AuroraPostgreSQL.cluster-cache-mgmt.Enable)
+ [Mengatur prioritas tingkat promosi untuk instans DB penulis](#AuroraPostgreSQL.cluster-cache-mgmt.Writer)
+ [Mengatur prioritas tingkat promosi untuk instans DB pembaca](#AuroraPostgreSQL.cluster-cache-mgmt.Reader)

**catatan**  
Berikan waktu setidaknya 1 menit setelah menyelesaikan langkah ini agar manajemen cache klaster dapat beroperasi sepenuhnya.

### Mengaktifkan manajemen cache klaster
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Enable"></a>

Untuk mengaktifkan manajemen cache klaster, lakukan langkah-langkah yang dijelaskan sebagai berikut. 

#### Konsol
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Enable.CON"></a>

**Untuk mengaktifkan manajemen cache klaster**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Grup parameter**.

1. Dalam daftar, pilih grup parameter untuk klaster DB Aurora PostgreSQL Anda.

   Klaster DB harus menggunakan grup parameter selain default karena Anda tidak dapat mengubah nilai di grup parameter default. 

1. Untuk **Tindakan grup parameter**, pilih **Edit**.

1. Tetapkan nilai parameter klaster `apg_ccm_enabled` ke **1**.

1. Pilih **Simpan perubahan**.

#### AWS CLI
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Enable.CLI"></a>

Untuk mengaktifkan manajemen cache cluster untuk cluster Aurora PostgreSQL DB, gunakan perintah dengan parameter yang diperlukan berikut: AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-parameter-group.html](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster-parameter-group.html)
+ `--db-cluster-parameter-group-name`
+ `--parameters`

**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-cluster-parameter-group \
    --db-cluster-parameter-group-name {{my-db-cluster-parameter-group}} \
    --parameters "ParameterName=apg_ccm_enabled,ParameterValue=1,ApplyMethod=immediate"
```
Untuk Windows:  

```
aws rds modify-db-cluster-parameter-group ^
    --db-cluster-parameter-group-name {{my-db-cluster-parameter-group}} ^
    --parameters "ParameterName=apg_ccm_enabled,ParameterValue=1,ApplyMethod=immediate"
```

### Mengatur prioritas tingkat promosi untuk instans DB penulis
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Writer"></a>

Untuk manajemen cache klaster, pastikan bahwa prioritas promosi adalah **tingkat-0** untuk instans DB penulis pada klaster DB Aurora PostgreSQL. *Prioritas tingkat promosi* adalah nilai yang menentukan urutan promosi pembaca Aurora ke instans DB penulis setelah kegagalan. Nilai yang valid adalah 0–15, dengan 0 adalah prioritas pertama dan 15 adalah prioritas terakhir. Untuk informasi selengkapnya tentang tingkat promosi, lihat [Toleransi kesalahan untuk klaster DB Aurora](Concepts.AuroraHighAvailability.md#Aurora.Managing.FaultTolerance). 

#### Konsol
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Writer.Console"></a>

**Untuk mengatur prioritas promosi instans DB penulis ke tingkat-0**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis Data**.

1. Pilih instans DB **Penulis** pada klaster DB Aurora PostgreSQL. 

1. Pilih **Ubah**. Halaman **Modifikasi Instans DB** akan muncul.

1. Di panel **Konfigurasi tambahan**, pilih **tingkat-0** untuk **Prioritas failover**. 

1. Pilih **Lanjutkan** dan periksa ringkasan modifikasi. 

1. Untuk segera menerapkan perubahan setelah Anda menyimpannya, pilih **Terapkan segera**. 

1. Pilih **Modifikasi Instans DB** untuk menyimpan perubahan Anda. 

#### AWS CLI
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Writer.CLI"></a>

Untuk menetapkan prioritas tingkat promosi ke 0 untuk instans DB penulis menggunakan AWS CLI, panggil perintah [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dengan parameter wajib berikut:
+ `--db-instance-identifier`
+ `--promotion-tier`
+ `--apply-immediately`



**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier {{writer-db-instance}} \
    --promotion-tier 0 \
    --apply-immediately
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier {{writer-db-instance}} ^
    ---promotion-tier 0  ^
    --apply-immediately
```

 

### Mengatur prioritas tingkat promosi untuk instans DB pembaca
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Reader"></a>

Anda harus menetapkan hanya satu instans DB pembaca untuk manajemen cache cluster. Untuk melakukannya, pilih pembaca dari klaster Aurora PostgreSQL yang memiliki kelas dan ukuran instans yang sama dengan instans DB penulis. Misalnya, jika penulis menggunakan `db.r5.xlarge`, pilih pembaca yang menggunakan jenis kelas dan ukuran instans yang sama ini. Kemudian, atur prioritas tingkat promosinya ke 0.

*Prioritas tingkat promosi* adalah nilai yang menentukan urutan promosi pembaca Aurora ke instans DB penulis setelah kegagalan. Nilai yang valid adalah 0–15, dengan 0 adalah prioritas pertama dan 15 adalah prioritas terakhir.

#### Konsol
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Reader.Console"></a>

**Untuk menetapkan prioritas promosi instans DB pembaca ke tingkat-0**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon RDS di [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. Di panel navigasi, pilih **Basis Data**. 

1. Pilih instans DB **Pembaca** pada klaster DB Aurora PostgreSQL yang memiliki kelas instans yang sama dengan instans DB penulis. 

1. Pilih **Ubah**. Halaman **Modifikasi Instans DB** akan muncul.

1. Di panel **Konfigurasi tambahan**, pilih **tingkat-0** untuk **Prioritas failover**. 

1. Pilih **Lanjutkan** dan periksa ringkasan modifikasi. 

1. Untuk segera menerapkan perubahan setelah Anda menyimpannya, pilih **Terapkan segera**. 

1. Pilih **Modifikasi Instans DB** untuk menyimpan perubahan Anda. 

#### AWS CLI
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Reader.CLI"></a>

Untuk menetapkan prioritas tingkat promosi ke 0 untuk instans DB pembaca menggunakan AWS CLI, panggil perintah [modify-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-instance.html) dengan parameter wajib berikut:
+ `--db-instance-identifier`
+ `--promotion-tier`
+ `--apply-immediately`



**Example**  
Untuk Linux, macOS, atau Unix:  

```
aws rds modify-db-instance \
    --db-instance-identifier {{reader-db-instance}} \
    --promotion-tier 0 \
    --apply-immediately
```
Untuk Windows:  

```
aws rds modify-db-instance ^
    --db-instance-identifier {{reader-db-instance}} ^
    ---promotion-tier 0  ^
    --apply-immediately
```

 

## Memantau cache buffer
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Monitoring"></a>

Setelah mengatur manajemen cache klaster, Anda dapat memantau status sinkronisasi antara cache buffer instans DB penulis dan warm cache buffer pembaca yang ditetapkan. Untuk memeriksa konten cache buffer di instans DB penulis dan instans DB pembaca yang ditetapkan, gunakan modul `pg_buffercache` PostgreSQL. Untuk informasi selengkapnya, lihat [Dokumentasi `pg_buffercache` PostgreSQL](https://www.postgresql.org/docs/current/pgbuffercache.html). 

**Menggunakan Fungsi `aurora_ccm_status`**  
Manajemen cache klaster juga menyediakan fungsi `aurora_ccm_status`. Gunakan fungsi `aurora_ccm_status` pada instans DB penulis untuk mendapatkan informasi berikut tentang progres cache warming pada pembaca yang ditetapkan:
+ `buffers_sent_last_minute` – Jumlah buffer yang telah dikirim ke pembaca yang ditetapkan dalam satu menit terakhir.
+ `buffers_found_last_minute` – Jumlah buffer yang sering diakses yang diidentifikasi selama beberapa menit terakhir. 
+ `buffers_sent_last_scan` – Jumlah buffer yang telah dikirim ke pembaca yang ditetapkan selama pemindaian lengkap cache buffer.
+ `buffers_found_last_scan` – Jumlah buffer yang telah diidentifikasi sering diakses dan perlu dikirim selama pemindaian lengkap terakhir cache buffer. Buffer yang sudah di-cache pada pembaca yang ditetapkan tidak akan dikirimkan.
+ `buffers_sent_current_scan` – Jumlah buffer yang telah dikirim sejauh ini selama pemindaian saat ini.
+ `buffers_found_current_scan` – Jumlah buffer yang telah diidentifikasi sering diakses dalam pemindaian saat ini.
+ `current_scan_progress` – Jumlah buffer yang telah diakses sejauh ini selama pemindaian saat ini.

Contoh berikut menunjukkan cara menggunakan fungsi `aurora_ccm_status` untuk mengonversi sebagian output-nya menjadi warm rate dan warm percentage.

```
SELECT buffers_sent_last_minute*8/60 AS warm_rate_kbps, 
   100*(1.0-buffers_sent_last_scan::float/buffers_found_last_scan) AS warm_percent 
   FROM aurora_ccm_status();
```

## Memecahkan masalah konfigurasi CCM
<a name="AuroraPostgreSQL.cluster-cache-mgmt.Troubleshooting"></a>

 Ketika Anda mengaktifkan parameter `apg_ccm_enabled` cluster, manajemen cache cluster secara otomatis diaktifkan pada tingkat instans pada instans DB penulis dan satu instance DB pembaca pada cluster Aurora PostgreSQL DB. Instance writer dan reader harus menggunakan tipe dan ukuran kelas instance yang sama. Prioritas tingkat promosi mereka diatur ke`0`. Instans pembaca lain di cluster DB harus memiliki tingkat promosi bukan nol dan manajemen cache cluster dinonaktifkan untuk instance tersebut. 

Alasan berikut dapat menyebabkan masalah dalam konfigurasi dan menonaktifkan manajemen cache cluster:
+ Ketika tidak ada instans DB pembaca tunggal yang disetel ke tingkat promosi 0.
+ Ketika instance DB penulis tidak disetel ke tingkat promosi 0.
+ Ketika lebih dari satu instans DB pembaca diatur ke tingkat promosi 0.
+ Ketika penulis dan satu pembaca, instans DB dengan tingkat promosi 0 tidak memiliki ukuran instans yang sama.