Menggunakan Proksi Amazon RDS untuk Aurora - Amazon Aurora

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

Menggunakan Proksi Amazon RDS untuk Aurora

Dengan menggunakan Proksi Amazon RDS, Anda dapat mengizinkan berbagai aplikasi untuk berkumpul dan berbagi koneksi basis data untuk meningkatkan kemampuan penskalaannya. Proksi RDS membuat aplikasi lebih tangguh terhadap kegagalan basis data dengan secara otomatis menghubungkan ke sebuah instans DB siaga sekaligus menjaga koneksi aplikasi. Dengan menggunakan RDS Proxy, Anda juga dapat menerapkan autentikasi AWS Identity and Access Management (IAM) untuk database, dan menyimpan kredensyal dengan aman. AWS Secrets Manager

Dengan Proksi RDS, Anda dapat menangani lonjakan yang tidak dapat diprediksi dalam lalu lintas basis data. Jika tidak, lonjakan ini dapat menyebabkan masalah karena permintaan koneksi berlebihan atau koneksi baru yang dibuat sangatlah tinggi. Proksi RDS membangun kumpulan koneksi basis data dan menggunakan ulang koneksi dalam kumpulan ini. Pendekatan ini menghindari overhead memori dan CPU dari membuka koneksi basis data baru. Untuk melindungi basis data dari permintaan berlebihan, Anda dapat mengontrol jumlah koneksi basis data yang dibuat.

Proksi RDS mengantrekan atau membatasi koneksi aplikasi yang tidak dapat dilayani segera dari kumpulan koneksi. Meskipun latensi dapat meningkat, aplikasi Anda dapat terus diskalakan tanpa kegagalan mendadak atau membanjiri basis data. Jika permintaan koneksi melebihi batas yang Anda tentukan, Proksi RDS akan menolak koneksi aplikasi (yakni menumpahkan beban). Selain itu, Proksi RDS akan mempertahankan performa yang dapat diprediksi untuk beban yang dapat dilayani RDS dengan kapasitas yang tersedia.

Anda dapat mengurangi overhead untuk memproses kredensial dan membangun koneksi yang aman untuk setiap koneksi baru. Proksi RDS dapat menangani beberapa dari pekerjaan itu untuk mewakili basis data.

Proksi RDS sepenuhnya kompatibel dengan versi mesin yang didukungnya. Anda dapat mengaktifkan Proksi RDS pada sebagian besar aplikasi tanpa perubahan kode. Untuk daftar versi mesin yang didukung, lihat Daerah yang Didukung dan mesin Aurora DB untuk Amazon RDS Proxy.

Ketersediaan wilayah dan versi

Untuk informasi tentang dukungan versi mesin basis data dan ketersediaan Proxy RDS dalam bentuk tertentu Wilayah AWS, lihatDaerah yang Didukung dan mesin Aurora DB untuk Amazon RDS Proxy.

Kuota dan Pembatasan untuk Proksi RDS

Kuota dan batasan berikut berlaku untuk Proksi RDS:

  • Setiap Akun AWS ID dibatasi hingga 20 proxy. Jika aplikasi Anda memerlukan lebih banyak proxy, mintalah peningkatan melalui halaman Service Quotas di dalam. AWS Management Console Di halaman Service Quotas, pilih Amazon Relational Database Service (Amazon RDS) dan cari Proxy untuk meminta peningkatan kuota. AWS dapat secara otomatis meningkatkan kuota atau peninjauan permintaan Anda yang tertunda oleh AWS Support.

  • Setiap proksi dapat memiliki hingga 200 rahasia Secrets Manager terkait. Sehingga, setiap proksi dapat terhubung ke hingga 200 akun pengguna yang berbeda pada waktu tertentu.

  • Setiap proksi memiliki titik akhir default. Anda juga dapat menambahkan hingga 20 titik akhir proksi untuk setiap proksi. Anda dapat membuat, melihat, mengubah, dan menghapus titik akhir ini.

  • Dalam sebuah klaster Aurora, semua koneksi yang menggunakan titik akhir proksi default ditangani oleh instans penulis Aurora. Untuk melakukan penyeimbangan beban untuk beban kerja padat baca, Anda dapat membuat titik akhir hanya-baca untuk proksi. Titik akhir tersebut meneruskan koneksi ke titik akhir pembaca klaster. Dengan begitu, koneksi proksi Anda dapat memanfaatkan skalabilitas baca Aurora. Untuk informasi selengkapnya, lihat Ikhtisar titik akhir proksi.

  • Anda dapat menggunakan Proksi RDS dengan klaster Aurora Nirserver v2, tetapi tidak dengan klaster Aurora Nirserver v1.

  • Proksi RDS Anda harus berada dalam cloud privat virtual (VPC) yang sama seperti basis data. Proksi tersebut tidak dapat diakses publik, meskipun basis datanya dapat diakses publik. Misalnya, jika membuat prototipe basis data di host lokal, Anda tidak dapat terhubung ke proksi kecuali Anda menyiapkan persyaratan jaringan yang diperlukan untuk mengizinkan koneksi ke proksi. Ini karena host lokal Anda berada di luar VPC proksi.

    catatan

    Untuk klaster DB Aurora, Anda dapat mengaktifkan akses lintas-VPC. Untuk melakukannya, buat titik akhir tambahan untuk proksi dan tentukan VPC, subnet, dan grup keamanan yang berbeda dengan titik akhir tersebut. Untuk informasi selengkapnya, lihat Mengakses basis data Aurora di seluruh VPC.

  • Anda tidak dapat menggunakan Proksi RDS dengan VPC yang penghuniannya diatur ke dedicated.

  • Jika Anda menggunakan Proksi RDS dengan klaster DB Aurora yang autentikasi IAM-nya diaktifkan, periksa autentikasi pengguna. Pengguna yang terhubung melalui proksi harus melakukan autentikasi melalui kredensial masuk. Untuk detail tentang Secrets Manager dan dukungan IAM di Proksi RDS, lihat Menyiapkan kredensi database di AWS Secrets Manager dan Menyiapkan AWS Identity and Access Management kebijakan (IAM).

  • Anda tidak dapat menggunakan Proksi RDS dengan DNS kustom saat menggunakan validasi nama host SSL.

  • Setiap proksi dapat dikaitkan dengan satu klaster DB target. Namun, Anda dapat mengaitkan beberapa proksi dengan klaster DB yang sama.

  • Pernyataan apa pun dengan teks berukuran lebih dari 16 KB menyebabkan proksi menyematkan sesi ke koneksi saat ini.

  • Wilayah tertentu memiliki batasan Zona Ketersediaan (AZ) untuk dipertimbangkan saat membuat proksi. Wilayah AS Timur (Virginia Utara) tidak mendukung Proksi RDS di Zona Ketersediaan use1-az3. Wilayah AS Barat (California Utara) tidak mendukung Proksi RDS di Zona Ketersediaan usw1-az2. Saat memilih subnet sekaligus membuat proksi, pastikan Anda tidak memilih subnet di Zona Ketersediaan yang disebutkan di atas.

  • Saat ini, RDS Proxy tidak mendukung kunci konteks kondisi global apa pun.

    Untuk informasi selengkapnya tentang kunci konteks kondisi global, lihat Kunci konteks kondisi global AWS dalam Panduan Pengguna IAM.

Untuk batasan tambahan untuk setiap mesin DB, lihat bagian berikut:

Batasan tambahan untuk Aurora MySQL

Batasan tambahan berikut berlaku untuk Proksi RDS dengan basis data Aurora MySQL:

  • Proksi RDS tidak mendukung plugin autentikasi sha256_password dan caching_sha2_password MySQL. Plugin ini menerapkan hashing SHA-256 untuk kata sandi akun pengguna.

  • Saat ini, semua proksi mendengarkan di port 3306 untuk MySQL. Proksi ini masih terhubung ke basis data Anda menggunakan port yang sudah ditentukan dalam pengaturan basis data.

  • Anda tidak dapat menggunakan Proksi RDS dengan basis data MySQL yang dikelola sendiri dalam instans EC2.

  • Anda tidak dapat menggunakan Proksi RDS dengan instans DB RDS for MySQL dengan parameter read_only dalam grup parameter DB-nya diatur ke 1.

  • Proksi RDS tidak mendukung mode terkompresi MySQL. Misalnya, Proksi RDS tidak mendukung kompresi yang digunakan oleh opsi --compress atau -C perintah mysql.

  • Koneksi basis data yang memproses perintah GET DIAGNOSTIC mungkin menampilkan informasi yang tidak akurat saat Proksi RDS menggunakan kembali koneksi basis data yang sama untuk menjalankan kueri lain. Hal ini bisa terjadi ketika Proksi RDS me-multipleks koneksi basis data.

  • Beberapa pernyataan dan fungsi SQL seperti SET LOCAL dapat mengubah status koneksi tanpa menyebabkan penyematan. Untuk perilaku penyematan terbaru, lihat Menghindari penyematan.

  • Menggunakan ROW_COUNT() fungsi dalam kueri multi-pernyataan tidak didukung.

  • RDS Proxy tidak mendukung aplikasi klien yang tidak dapat menangani beberapa pesan respons dalam satu catatan TLS.

penting

Untuk proksi yang terkait dengan basis data MySQL, jangan atur parameter konfigurasi sql_auto_is_null ke true atau nilai bukan nol dalam kueri inisialisasi. Tindakan ini bisa menyebabkan perilaku aplikasi yang salah.

Batasan tambahan untuk Aurora PostgreSQL

Batasan tambahan berikut berlaku untuk Proksi RDS dengan basis data Aurora PostgreSQL:

  • Proksi RDS tidak mendukung filter penyematan sesi untuk PostgreSQL.

  • Saat ini, semua proksi mendengarkan di port 5432 untuk PostgreSQL.

  • Untuk PostgreSQL, Proxy RDS saat ini tidak mendukung pembatalan kueri dari klien dengan mengeluarkan CancelRequest. Misalnya, hal ini bisa terjadi ketika Anda membatalkan kueri yang berjalan lama dalam sesi psql interaktif dengan menggunakan Ctrl+C.

  • Hasil dari fungsi lastval PostgreSQL tidak selalu akurat. Sebagai solusi, gunakan pernyataan INSERT dengan klausul RETURNING.

  • Proksi RDS saat ini tidak mendukung mode replikasi streaming.

penting

Untuk proksi yang ada dengan basis data PostgreSQL, jika Anda mengubah autentikasi basis data untuk menggunakan SCRAM saja, proksi akan menjadi tidak tersedia selama maksimal 60 detik. Untuk menghindari masalah ini, lakukan salah satu tindakan berikut:

  • Pastikan basis data mengizinkan autentikasi SCRAM dan MD5.

  • Untuk menggunakan autentikasi SCRAM saja, buat proksi baru, migrasi lalu lintas aplikasi ke proksi baru, lalu hapus proksi yang sebelumnya terkait dengan basis data.