Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat proxy RDS
Untuk mengelola koneksi untuk klaster DB, buat proksi. Anda dapat mengaitkan sebuah proksi dengan klaster DB Aurora MySQL atau Aurora PostgreSQL.
Untuk membuat proksi
-
Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/
. -
Di panel navigasi, pilih Proksi.
-
Pilih Buat proksi.
-
Pilih semua pengaturan untuk proksi Anda.
Untuk Konfigurasi proksi, masukkan informasi untuk opsi berikut:
-
Keluarga mesin. Pengaturan ini menentukan protokol jaringan basis data mana yang dikenali proksi ketika menafsirkan lalu lintas jaringan ke dan dari basis data. Untuk Aurora MySQL, pilih MariaDB dan MySQL. Untuk Aurora PostgreSQL, pilih PostgreSQL.
-
ID proksi. Tentukan nama yang unik dalam ID AWS akun Anda dan AWS Wilayah saat ini.
-
Batas waktu koneksi klien idle. Pilih periode waktu saat koneksi klien menjadi idle sebelum proksi menutupnya. Nilai default-nya adalah 1.800 detik (30 menit). Koneksi klien dianggap idle jika aplikasi tidak mengirimkan permintaan baru dalam waktu yang ditentukan setelah permintaan sebelumnya selesai. Koneksi basis data yang mendasarinya akan tetap terbuka dan dikembalikan ke kumpulan koneksi. Oleh karena itu, koneksi dapat digunakan kembali untuk koneksi klien baru.
Jika Anda ingin proksi secara proaktif menghapus koneksi yang sudah tidak terpakai, kurangi batas waktu koneksi klien idle. Saat beban kerja meningkat, untuk menghemat biaya pembangunan koneksi, tambah batas waktu koneksi klien idle.”
Untuk Konfigurasi grup target, masukkan informasi untuk opsi berikut:
-
Basis data. Pilih satu klaster DB Aurora yang akan diakses melalui proksi ini. Daftar ini hanya mencakup instans dan klaster DB dengan mesin basis data, versi mesin, dan pengaturan lainnya yang kompatibel. Jika daftar kosong, buat instans atau klaster DB baru yang kompatibel dengan Proksi RDS. Untuk melakukannya, ikuti prosedurnya di Membuat klaster DB Amazon Aurora. Lalu, coba buat proksi lagi.
-
Koneksi maksimum kumpulan koneksi. Tentukan sebuah nilai dari 1 hingga 100. Pengaturan ini merepresentasikan persentase dari nilai
max_connections
yang dapat digunakan oleh Proksi RDS untuk koneksinya. Jika hanya ingin menggunakan satu proksi dengan instans atau klaster DB ini, Anda dapat mengatur nilai ini ke 100. Untuk detail tentang cara Proksi RDS menggunakan pengaturan ini, lihat MaxConnectionsPercent. -
Filter penyematan sesi. (Opsional) Opsi ini memungkinkan Anda untuk memaksa Proksi RDS untuk tidak memberi pin untuk jenis status sesi tertentu yang terdeteksi. Tindakan ini menghindari langkah-langkah keamanan default untuk me-multipleks koneksi basis data di seluruh koneksi klien. Saat ini, pengaturan tidak didukung untuk PostgreSQL. Satu-satunya pilihan adalah
EXCLUDE_VARIABLE_SETS
.Mengaktifkan pengaturan ini dapat menyebabkan variabel sesi dari satu koneksi memengaruhi koneksi lain. Hal ini dapat menyebabkan kesalahan atau masalah ketepatan jika kueri Anda bergantung pada nilai variabel sesi yang ditetapkan di luar transaksi saat ini. Pertimbangkan untuk menggunakan opsi ini setelah memastikan bahwa aplikasi Anda sudah bisa berbagi koneksi basis data dengan aman di seluruh koneksi klien.
Pola berikut bisa dianggap aman:
-
Pernyataan
SET
di mana tidak ada perubahan pada nilai variabel sesi efektif, yaitu tidak ada perubahan pada variabel sesi. -
Anda mengubah nilai variabel sesi dan mengeksekusi pernyataan dalam transaksi yang sama.
Untuk informasi selengkapnya, lihat Menghindari menyematkan Proxy RDS.
-
-
Batas waktu peminjaman koneksi. Dalam beberapa kasus, mungkin Anda berharap proksi tersebut sekali-sekali menggunakan semua koneksi basis data yang tersedia. Dalam kasus seperti itu, Anda dapat menentukan durasi proksi harus menunggu koneksi basis data menjadi tersedia sebelum menampilkan kesalahan batas waktu. Anda dapat menentukan periode hingga maksimum lima menit. Pengaturan ini hanya berlaku jika proksi memiliki koneksi terbuka maksimum dan semua koneksi sudah digunakan.
-
Kueri inisialisasi. (Opsional) Tambahkan kueri inisialisasi, atau ubah yang sekarang. Anda dapat menentukan satu atau beberapa pernyataan SQL untuk proksi yang akan dijalankan saat membuka setiap koneksi basis data baru. Pengaturan ini biasanya digunakan dengan
SET
pernyataan untuk memastikan bahwa setiap koneksi memiliki pengaturan yang identik. Pastikan kueri yang Anda tambahkan valid. Untuk memasukkan beberapa variabel dalam satuSET
pernyataan, gunakan pemisah koma. Sebagai contoh:SET
variable1
=value1
,variable2
=value2
Untuk beberapa pernyataan, gunakan titik koma sebagai pemisah.
Untuk Autentikasi, masukkan informasi untuk opsi berikut:
-
Peran IAM. Pilih peran IAM yang memiliki izin untuk mengakses rahasia Secrets Manager yang Anda pilih sebelumnya. Atau, Anda dapat membuat peran IAM baru dari AWS Management Console.
-
Rahasia Secrets Manager. Pilih setidaknya satu rahasia Secrets Manager terpisah yang berisi kredensial pengguna basis data yang memungkinkan proksi mengakses klaster DB Aurora.
-
Jenis autentikasi klien. Pilih jenis autentikasi yang digunakan proksi untuk koneksi dari klien. Pilihan Anda berlaku untuk semua rahasia Secrets Manager yang Anda kaitkan dengan proksi ini. Jika Anda perlu menentukan jenis otentikasi klien yang berbeda untuk setiap rahasia, maka buat proxy Anda dengan menggunakan AWS CLI atau API sebagai gantinya.
-
Autentikasi IAM. Pilih apakah akan mewajibkan , atau melarang autentikasi IAM untuk koneksi ke proksi Anda. Pilihan Anda berlaku untuk semua rahasia Secrets Manager yang Anda kaitkan dengan proksi ini. Jika Anda perlu menentukan otentikasi IAM yang berbeda untuk setiap rahasia, buat proxy Anda dengan menggunakan AWS CLI atau API sebagai gantinya.
Untuk Konektivitas, masukkan informasi untuk opsi berikut:
-
Wajibkan Keamanan Lapisan Pengangkutan. Pilih pengaturan ini jika Anda ingin proksi menerapkan TLS/SSL untuk semua koneksi klien. Untuk koneksi terenkripsi atau tidak terenkripsi ke sebuah proksi, proksi menggunakan pengaturan enkripsi yang sama saat membuat koneksi ke basis data acuan.
-
Subnet. Bidang ini telah diisi sebelumnya dengan semua subnet yang terkait dengan VPC Anda. Anda dapat menghapus subnet apa pun yang tidak diperlukan oleh proksi ini. Anda harus membiarkan setidaknya dua subnet.
Masukkan konfigurasi konektivitas tambahan:
-
Grup keamanan VPC. Pilih grup keamanan VPC yang sudah ada. Atau, Anda dapat membuat grup keamanan baru dari AWS Management Console. Anda harus mengonfigurasi Aturan masuk untuk mengizinkan aplikasi Anda mengakses proksi. Anda juga harus mengonfigurasi Aturan keluar untuk mengizinkan lalu lintas dari target DB Anda.
catatan
Grup keamanan ini harus mengizinkan koneksi dari proksi ke basis data. Grup keamanan yang sama digunakan sebagai jalur masuk dari aplikasi ke proksi, dan jalur keluar dari proksi ke basis data. Misalnya, anggap saja Anda menggunakan grup keamanan yang sama untuk basis data dan proksi Anda. Dalam kasus ini, pastikan sumber daya dalam grup keamanan tersebut dapat berkomunikasi dengan sumber daya lain dalam grup keamanan yang sama.
Saat menggunakan VPC bersama, Anda tidak dapat menggunakan grup keamanan default untuk VPC, atau grup keamanan milik akun lain. Pilih grup keamanan milik akun Anda. Jika belum ada, buat. Untuk informasi selengkapnya tentang batasan ini, lihat Bekerja dengan berbagi VPCs.
RDS men-deploy proksi di beberapa Zona Ketersediaan untuk memastikan ketersediaan yang tinggi. Untuk mengaktifkan komunikasi lintas-AZ untuk proksi semacam ini, daftar kontrol akses (ACL) untuk subnet proksi Anda harus mengizinkan jalan keluar khusus port mesin dan semua port untuk masuk. Untuk informasi selengkapnya tentang jaringan ACLs, lihat Mengontrol lalu lintas ke subnet menggunakan jaringan ACLs. Jika ACL jaringan untuk proksi dan target Anda identik, Anda harus menambahkan aturan masuknya protokol TCP tempat Sumber diatur ke CIDR VPC. Anda juga harus menambahkan aturan keluar protokol TCP khusus port engine di mana Tujuan diatur ke CIDR VPC.
(Opsional) Masukkan konfigurasi lanjutan:
-
Aktifkan pencatatan log yang disempurnakan. Anda dapat mengaktifkan pengaturan ini untuk memecahkan masalah kompatibilitas proksi atau masalah performa.
Saat pengaturan ini diaktifkan, RDS Proxy menyertakan informasi terperinci tentang kinerja proxy di lognya. Informasi ini membantu Anda untuk men-debug masalah yang melibatkan perilaku SQL atau performa serta skalabilitas koneksi proksi. Dengan demikian, hanya aktifkan pengaturan ini untuk debugging dan ketika Anda memiliki langkah-langkah keamanan untuk melindungi informasi sensitif apa pun yang muncul di log.
Untuk meminimalkan overhead yang terkait dengan proksi Anda, Proksi RDS secara otomatis menonaktifkan pengaturan ini 24 jam setelah Anda mengaktifkannya. Aktifkan sementara untuk memecahkan masalah tertentu.
-
-
Pilih Buat Proksi.
Untuk membuat proxy dengan menggunakan AWS CLI, panggil create-db-proxyperintah dengan parameter yang diperlukan berikut:
--db-proxy-name
--engine-family
--role-arn
--auth
--vpc-subnet-ids
Nilai --engine-family
ini bersifat peka huruf besar-kecil.
contoh
Untuk Linux, macOS, atau Unix:
aws rds create-db-proxy \ --db-proxy-name
proxy_name
\ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } \ --authProxyAuthenticationConfig_JSON_string
\ --role-arniam_role
\ --vpc-subnet-idsspace_separated_list
\ [--vpc-security-group-idsspace_separated_list
] \ [--require-tls | --no-require-tls] \ [--idle-client-timeoutvalue
] \ [--debug-logging | --no-debug-logging] \ [--tagscomma_separated_list
]
Untuk Windows:
aws rds create-db-proxy ^ --db-proxy-name
proxy_name
^ --engine-family { MYSQL | POSTGRESQL | SQLSERVER } ^ --authProxyAuthenticationConfig_JSON_string
^ --role-arniam_role
^ --vpc-subnet-idsspace_separated_list
^ [--vpc-security-group-idsspace_separated_list
] ^ [--require-tls | --no-require-tls] ^ [--idle-client-timeoutvalue
] ^ [--debug-logging | --no-debug-logging] ^ [--tagscomma_separated_list
]
Berikut ini adalah contoh nilai JSON untuk opsi --auth
. Contoh ini menerapkan jenis autentikasi klien yang berbeda untuk setiap rahasia.
[ { "Description": "proxy description 1", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:123456789123:secret/1234abcd-12ab-34cd-56ef-1234567890ab", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_SCRAM_SHA_256" }, { "Description": "proxy description 2", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122223333:secret/1234abcd-12ab-34cd-56ef-1234567890cd", "IAMAuth": "DISABLED", "ClientPasswordAuthType": "POSTGRES_MD5" }, { "Description": "proxy description 3", "AuthScheme": "SECRETS", "SecretArn": "arn:aws:secretsmanager:us-west-2:111122221111:secret/1234abcd-12ab-34cd-56ef-1234567890ef", "IAMAuth": "REQUIRED" } ]
Tip
Jika Anda belum mengetahui subnet yang akan digunakan IDs untuk --vpc-subnet-ids
parameter, lihat Menyiapkan prasyarat jaringan untuk RDS Proxy contoh cara menemukannya.
catatan
Grup keamanan ini harus mengizinkan akses ke basis data yang terhubung ke proksi. Grup keamanan yang sama digunakan sebagai jalur masuk dari aplikasi ke proksi, dan jalur keluar dari proksi ke basis data. Misalnya, anggap saja Anda menggunakan grup keamanan yang sama untuk basis data dan proksi Anda. Dalam kasus ini, pastikan sumber daya dalam grup keamanan tersebut dapat berkomunikasi dengan sumber daya lain dalam grup keamanan yang sama.
Saat menggunakan VPC bersama, Anda tidak dapat menggunakan grup keamanan default untuk VPC, atau grup keamanan milik akun lain. Pilih grup keamanan milik akun Anda. Jika belum ada, buat. Untuk informasi selengkapnya tentang batasan ini, lihat Bekerja dengan berbagi VPCs.
Untuk membuat asosiasi yang tepat untuk proxy, Anda juga menggunakan register-db-proxy-targetsperintah. Tentukan nama grup target default
. Proksi RDS secara otomatis membuat grup target dengan nama ini saat Anda membuat setiap proksi.
aws rds register-db-proxy-targets --db-proxy-name
value
[--target-group-nametarget_group_name
] [--db-instance-identifiersspace_separated_list
] # rds db instances, or [--db-cluster-identifierscluster_id
] # rds db cluster (all instances)
Untuk membuat proxy RDS, panggil Create operasi Amazon RDS API. DBProxy Anda melewati parameter dengan struktur AuthConfigdata.
Proksi RDS secara otomatis membuat grup target bernama default
saat Anda membuat setiap proksi. Anda mengaitkan Aurora DB cluster dengan grup target dengan memanggil fungsi DBProxy Register Targets.