Proksi Amazon RDS Aurora - Layanan Basis Data Relasional Amazon

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

Proksi Amazon RDS 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.

Ketersediaan wilayah dan versi

Ketersediaan dan dukungan fitur bervariasi di seluruh versi spesifik dari setiap mesin basis data, dan di seluruh Wilayah AWS. Untuk informasi selengkapnya tentang versi dan ketersediaan Wilayah Amazon RDS dengan Proksi RDS, lihat Wilayah dan mesin DB yang Didukung 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 Dukungan.

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

  • Untuk instans DB RDS dalam konfigurasi replikasi, Anda dapat mengaitkan proksi dengan instans DB penulis saja, bukan dengan replika baca.

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

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

  • Jika Anda menggunakan Proksi RDS dengan instans DB RDS 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 AWS Secrets Manager untuk RDS Proxy dan Mengkonfigurasi otentikasi IAM untuk RDS Proxy.

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

  • Setiap proksi dapat dikaitkan dengan satu instans DB target. Namun, Anda dapat mengaitkan beberapa proksi dengan instans 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.

  • Anda tidak dapat menggunakan RDS Proxy dengan RDS Custom untuk SQL Server.

  • Untuk mencerminkan modifikasi grup parameter database apa pun ke proxy Anda, reboot instance diperlukan bahkan jika Anda memilih untuk segera menerapkan perubahan Anda. Untuk parameter tingkat cluster, diperlukan reboot seluruh cluster.

  • Proxy Anda secara otomatis membuat pengguna rdsproxyadmin DB saat Anda mendaftarkan target proxy. Menghapus atau memodifikasi rdsproxyadmin pengguna atau izinnya dapat memengaruhi ketersediaan proxy ke aplikasi Anda.

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

Batasan tambahan untuk RDS for MariaDB

Batasan tambahan berikut berlaku untuk Proksi RDS dengan basis data RDS for MariaDB:

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

  • Anda tidak dapat menggunakan RDS Proxy dengan database MariaDB yang dikelola sendiri di instans Amazon. EC2

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

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

  • Beberapa pernyataan dan fungsi SQL dapat mengubah status koneksi tanpa menyebabkan penyematan. Untuk perilaku penyematan terbaru, lihat Menghindari menyematkan Proxy RDS.

  • Proksi RDS tidak mendukung plugin auth_ed25519 MariaDB.

  • Proksi RDS tidak mendukung Keamanan Lapisan Pengangkutan (TLS) versi 1.3 untuk basis data MariaDB.

  • 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. Untuk informasi selengkapnya, lihat Ikhtisar konsep RDS Proxy.

  • RDS Proxy saat ini tidak mendukung caching_sha2_password opsi ClientPasswordAuthType untuk MariaDB.

penting

Untuk proksi yang terkait dengan basis data MariaDB, 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 RDS for Microsoft SQL Server

Batasan tambahan berikut berlaku untuk Proksi RDS dengan basis data RDS for Microsoft SQL Server:

  • Jumlah rahasia Secrets Manager yang perlu dibuat untuk proksi bergantung pada kolasi yang digunakan instans DB Anda. Sebagai contoh, misalkan instans DB Anda menggunakan kolasi peka huruf besar/kecil. Jika aplikasi Anda menerima “Admin” dan “admin,” berarti proksi Anda memerlukan dua rahasia terpisah. Untuk informasi selengkapnya tentang kolasi di SQL Server, lihat dokumentasi Microsoft SQL Server.

  • Proksi RDS tidak mendukung koneksi yang menggunakan Active Directory.

  • Anda tidak dapat menggunakan autentikasi IAM dengan klien yang tidak mendukung properti token. Untuk informasi selengkapnya, lihat Pertimbangan untuk terhubung ke proksi dengan Microsoft SQL Server.

  • Hasil dari @@IDENTITY, @@ROWCOUNT, dan SCOPE_IDENTITY tidak selalu akurat. Sebagai solusi, ambil nilainya dalam pernyataan sesi yang sama untuk memastikan bahwa hasilnya menampilkan informasi yang benar.

  • Jika koneksi menggunakan beberapa kumpulan hasil aktif (MARS), Proksi RDS tidak akan menjalankan kueri inisialisasi. Untuk informasi tentang MARS, lihat dokumentasi Microsoft SQL Server.

  • Saat ini, RDS Proxy tidak mendukung RDS untuk instans SQL Server DB yang berjalan pada versi utama SQL Server 2022.

  • RDS Proxy tidak mendukung RDS untuk instans SQL Server DB yang berjalan pada versi utama SQL Server 2014.

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

Batasan tambahan untuk RDS for MySQL

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

  • Dukungan RDS Proxy untuk caching_sha2_password otentikasi memerlukan koneksi aman (TLS).

  • Dukungan Proxy RDS caching_sha2_password diketahui memiliki masalah kompatibilitas dengan versi driver go-sql tertentu.

  • Saat menggunakan driver MySQL 8.4 C, API mungkin membentuk paket mysql_stmt_bind_named_param yang salah bentuk jika jumlah parameter melebihi jumlah placeholder dalam pernyataan yang disiapkan. Ini menghasilkan tanggapan yang salah. Untuk informasi selengkapnya, lihat laporan bug MySQL.

  • 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 RDS Proxy dengan database MySQL yang dikelola sendiri dalam instance. 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 menyematkan Proxy RDS.

  • 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 RDS for PostgreSQL

Batasan tambahan berikut berlaku untuk Proksi RDS dengan basis data RDS for 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.

  • Dengan RDS for PostgreSQL 16, modifikasi nilai scram_iterations secara khusus memengaruhi proses autentikasi antara proksi dan basis data. Khususnya, jika Anda ClientPasswordAuthType mengonfigurasinyascram-sha-256, penyesuaian apa pun yang dilakukan pada scram_iterations nilai tidak memengaruhi otentikasi client-to-proxy kata sandi. Sebaliknya, nilai iterasi untuk otentikasi client-to-proxy kata sandi ditetapkan pada 4096.

  • defaultDatabase harus ada.

  • Jika Anda menggunakan ALTER ROLE untuk mengubah peran penggunaSET ROLE, koneksi berikutnya sebagai pengguna tersebut ke proxy mungkin tidak menggunakan setelan peran ini, jika koneksi tersebut mengalami penyematan. Untuk mencegah hal ini, saat menggunakan proxy, gunakan SET ROLE dalam kueri inisialisasi proxy. Untuk informasi selengkapnya, lihat Kueri inisialisasi diMembuat proxy untuk Amazon RDS .

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.

  翻译: