Membuat dan terhubung ke klaster DB Aurora PostgreSQL - Amazon Aurora

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

Membuat dan terhubung ke klaster DB Aurora PostgreSQL

Tutorial ini membuat instans EC2 dan klaster DB Aurora PostgreSQL. Tutorial ini menunjukkan cara mengakses klaster DB dari instans EC2 menggunakan klien PostgreSQL standar. Sebagai praktik terbaik, tutorial ini membuat klaster DB privat dalam cloud privat virtual (VPC). Dalam kebanyakan kasus, sumber daya lain dalam VPC yang sama, seperti instans EC2, dapat mengakses klaster DB, tetapi sumber daya di luar VPC tidak dapat mengaksesnya.

Setelah Anda menyelesaikan tutorial, ada subnet publik dan privat di setiap Zona Ketersediaan di VPC Anda. Dalam satu Zona Ketersediaan, instans EC2 berada di subnet publik, dan instans DB berada di subnet privat.

penting

Tidak ada biaya untuk membuat AWS akun. Namun, dengan menyelesaikan tutorial ini, Anda mungkin dikenakan biaya untuk AWS sumber daya yang Anda gunakan. Anda dapat menghapus sumber daya ini setelah menyelesaikan tutorial jika tidak diperlukan lagi.

Diagram berikut menunjukkan konfigurasi setelah tutorial selesai.

Instans EC2 dan klaster DB Aurora PostgreSQL.

Tutorial ini memungkinkan Anda untuk membuat sumber daya Anda dengan menggunakan salah satu metode berikut:

  1. Gunakan AWS Management Console - Langkah 1: Buat instans EC2 dan Langkah 2: Membuat klaster DB Aurora PostgreSQL

  2. Gunakan AWS CloudFormation untuk membuat instance database dan instans EC2 - (Opsional) Buat VPC, instans EC2, dan cluster Aurora PostgreSQL menggunakan AWS CloudFormation

Metode pertama menggunakan Easy create untuk membuat cluster Aurora PostgreSQL DB pribadi dengan. AWS Management Console Di sini, Anda hanya menentukan jenis mesin DB, ukuran instans DB, dan pengidentifikasi cluster DB. Pembuatan mudah menggunakan pengaturan default untuk opsi konfigurasi lainnya.

Saat Anda menggunakan Standard create sebagai gantinya, Anda dapat menentukan lebih banyak opsi konfigurasi saat membuat cluster DB. Opsi ini mencakup pengaturan untuk ketersediaan, keamanan, cadangan, dan pemeliharaan. Untuk membuat klaster DB publik, Anda harus menggunakan Pembuatan standar. Untuk informasi, lihat Membuat klaster DB Amazon Aurora.

Prasyarat

Sebelum memulai, selesaikan langkah-langkah di bagian berikut:

Langkah 1: Buat instans EC2

Buat instans Amazon EC2 yang akan Anda gunakan untuk menghubungkan ke basis data Anda.

Untuk membuat instans EC2
  1. Masuk ke AWS Management Console dan buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di sudut kanan atas AWS Management Console, pilih Wilayah AWS di mana Anda ingin membuat instans EC2.

  3. Pilih Dasbor EC2, lalu pilih Luncurkan instans seperti yang ditampilkan dalam gambar berikut.

    Dasbor EC2.

    Halaman Meluncurkan instans akan terbuka.

  4. Pilih pengaturan berikut di halaman Meluncurkan instans.

    1. Pada Nama dan tag, untuk Nama, masukkan ec2-database-connect.

    2. Pada Gambar Aplikasi dan OS (Amazon Machine Image), pilih Amazon Linux, lalu pilih AMI Amazon Linux 2023. Biarkan default untuk pilihan lainnya.

      Pilih Amazon Machine Image.
    3. Pada Jenis instans, pilih t2.micro.

    4. Pada Pasangan kunci (login), pilih Nama pasangan kunci untuk menggunakan pasangan kunci yang ada. Untuk membuat pasangan kunci baru untuk instans Amazon EC2, pilih Buat Pasangan kunci baru lalu gunakan jendela Buat pasangan kunci untuk membuatnya.

      Untuk informasi selengkapnya tentang membuat key pair baru, lihat Membuat key pair di Panduan Pengguna Amazon EC2.

    5. Untuk Izinkan lalu lintas SSH di Pengaturan jaringan, pilih sumber koneksi SSH ke instans EC2.

      Anda dapat memilih IP Saya jika alamat IP yang ditampilkan benar untuk koneksi SSH. Jika tidak, Anda dapat menentukan alamat IP yang akan digunakan untuk menghubungkan ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH). Untuk menentukan alamat IP publik Anda, Anda dapat menggunakan layanan di https://checkip.amazonaws.com di jendela atau tab browser lain. Contoh alamat IP adalah 192.0.2.1/32.

      Dalam banyak kasus, Anda dapat menghubungkan melalui penyedia layanan Internet (ISP) atau dari belakang firewall Anda tanpa alamat IP statis. Jika demikian, tentukan rentang alamat IP yang digunakan oleh komputer klien.

      Awas

      Jika menggunakan 0.0.0.0/0 untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

      Gambar berikut menunjukkan contoh bagian Pengaturan jaringan.

      Pengaturan jaringan untuk instans EC2.
    6. Biarkan nilai default untuk bagian yang lainnya.

    7. Tinjau ringkasan konfigurasi instans EC2 Anda di panel Ringkasan, dan setelah Anda siap, pilih Luncurkan instans.

  5. Di halaman Status Peluncuran, catat pengidentifikasi untuk instans EC2 baru Anda, misalnya: i-1234567890abcdef0.

    Pengidentifikasi instans EC2 di halaman Status Peluncuran.
  6. Pilih pengidentifikasi instans EC2 untuk membuka daftar instans EC2, lalu pilih instans EC2 Anda.

  7. Di tab Detail, catat nilai-nilai berikut, yang akan Anda butuhkan saat menghubungkan menggunakan SSH:

    1. Di Ringkasan instans, catat nilai untuk DNS IPv4 Publik.

      Nama DNS publik EC2 pada tab Detail halaman Instans.
    2. Di Detail instans, catat nilai untuk Nama pasangan kunci.

      Nama pasangan kunci EC2 di tab Detail halaman Instans.
  8. Tunggu hingga Status instans untuk instans EC2 Anda berstatus Berjalan sebelum melanjutkan.

Langkah 2: Membuat klaster DB Aurora PostgreSQL

Dalam contoh ini, Anda menggunakan Pembuatan mudah untuk membuat klaster DB Aurora PostgreSQL dengan kelas instans DB db.t4g.large.

Untuk membuat klaster DB Aurora PostgreSQL dengan Pembuatan mudah
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS tempat Anda akan membuat klaster DB.

  3. Di panel navigasi, pilih Basis data.

  4. Pilih Buat basis data dan pastikan bahwa Pembuatan mudah dipilih.

    Buat bagian basis data: Opsi pembuatan mudah dipilih.
  5. Di Konfigurasi, pilih Aurora (Kompatibel dengan PostgreSQL) untuk Jenis mesin.

  6. Untuk Ukuran instans DB, pilih Dev/Tes.

  7. Untuk pengidentifikasi klaster DB, masukkan database-test1.

    Tampilan halaman Membuat basis data seperti gambar berikut.

    Bagian konfigurasi dengan pilihan.
  8. Untuk Nama pengguna utama, masukkan nama untuk pengguna, atau tetap gunakan nama default (postgres).

  9. Untuk menggunakan kata sandi utama yang dibuat secara otomatis untuk klaster DB, pilih Buat kata sandi secara otomatis.

    Untuk memasukkan kata sandi utama Anda, hapus centang pada Buat kata sandi secara otomatis, lalu masukkan kata sandi yang sama dalam Kata sandi utama dan Konfirmasi kata sandi.

  10. Untuk menyiapkan koneksi dengan instans EC2 yang Anda buat sebelumnya, buka Menyiapkan koneksi EC2 - opsional.

    Pilih Hubungkan ke sumber daya komputasi EC2. Pilih instans EC2 yang Anda buat sebelumnya.

    Siapkan opsi koneksi EC2.
  11. Buka Lihat pengaturan default untuk Pembuatan mudah.

    Pengaturan default Pembuatan mudah.

    Anda dapat memeriksa pengaturan default yang digunakan dengan Pembuatan mudah. Kolom Dapat diedit setelah basis data dibuat menunjukkan opsi yang dapat Anda ubah setelah membuat basis data.

    • Jika pengaturan memiliki Tidak di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan Pembuatan standar untuk membuat klaster DB.

    • Jika pengaturan memiliki Ya di kolom tersebut, dan Anda menginginkan pengaturan yang berbeda, Anda dapat menggunakan Pembuatan standar untuk membuat klaster DB, atau mengubah klaster DB setelah Anda membuatnya untuk mengubah pengaturan.

  12. Pilih Buat basis data.

    Untuk melihat nama pengguna dan kata sandi utama untuk klaster DB, pilih Lihat detail kredensial.

    Anda dapat menggunakan nama pengguna dan kata sandi yang ditampilkan untuk terhubung ke klaster DB sebagai pengguna utama.

    penting

    Anda tidak dapat melihat kata sandi pengguna utama lagi. Jika Anda tidak mencatatnya, Anda mungkin harus mengubahnya.

    Jika perlu mengubah kata sandi pengguna utama setelah klaster DB tersedia, Anda dapat mengubah klaster DB untuk melakukannya. Untuk informasi selengkapnya tentang cara memodifikasi klaster DB, lihat Memodifikasi klaster DB Amazon Aurora.

  13. Dalam daftar Basis data, pilih nama klaster DB Aurora PostgreSQL baru untuk menampilkan detailnya.

    Instans penulis memiliki status Membuat hingga klaster DB siap digunakan.

    Detail klaster DB yang menampilkan Wilayah & AZ dan Status.

    Saat status instans penulis berubah menjadi Tersedia, Anda dapat terhubung ke klaster DB. Tergantung pada kelas instans DB dan jumlah penyimpanan, diperlukan waktu hingga 20 menit sebelum klaster DB baru tersedia.

(Opsional) Buat VPC, instans EC2, dan cluster Aurora PostgreSQL menggunakan AWS CloudFormation

Alih-alih menggunakan konsol untuk membuat VPC, instans EC2, dan klaster Aurora PostgreSQL DB, Anda dapat menggunakannya untuk menyediakan sumber daya dengan memperlakukan infrastruktur sebagai kode. AWS CloudFormation AWS Untuk membantu Anda mengatur AWS sumber daya Anda menjadi unit yang lebih kecil dan lebih mudah dikelola, Anda dapat menggunakan fungsionalitas tumpukan AWS CloudFormation bersarang. Untuk informasi selengkapnya, lihat Membuat tumpukan di AWS CloudFormation konsol dan Bekerja dengan tumpukan bersarang.

penting

AWS CloudFormation gratis, tetapi sumber daya yang CloudFormation menciptakan hidup. Anda dikenakan biaya penggunaan standar untuk sumber daya ini sampai Anda menghentikannya. Total biaya akan minimal. Untuk informasi tentang cara meminimalkan biaya apa pun, buka Tingkat AWS Gratis.

Untuk membuat sumber daya Anda menggunakan AWS CloudFormation konsol, selesaikan langkah-langkah berikut:

  • Langkah 1: Unduh CloudFormation template

  • Langkah 2: Konfigurasikan sumber daya Anda menggunakan CloudFormation

Unduh CloudFormation template

CloudFormation Template adalah file teks JSON atau YAMG yang berisi informasi konfigurasi tentang sumber daya yang ingin Anda buat di tumpukan. Template ini juga membuat VPC dan host benteng untuk Anda bersama dengan cluster Aurora.

Untuk mengunduh file template, buka tautan berikut, template PostgreSQL Aurora. CloudFormation

Di halaman Github, klik tombol Unduh file mentah untuk menyimpan file YAMAL template.

Konfigurasikan sumber daya Anda menggunakan CloudFormation

catatan

Sebelum memulai proses ini, pastikan Anda memiliki pasangan Kunci untuk instans EC2 di. Akun AWS Untuk informasi selengkapnya, lihat Pasangan kunci Amazon EC2 dan instans Linux.

Ketika Anda menggunakan AWS CloudFormation template, Anda harus memilih parameter yang benar untuk memastikan sumber daya Anda dibuat dengan benar. Ikuti langkah-langkah di bawah ini:

  1. Masuk ke AWS Management Console dan buka AWS CloudFormation konsol di https://console.aws.amazon.com/cloudformation.

  2. Pilih Buat tumpukan.

  3. Di bagian Tentukan templat, pilih Unggah file templat dari komputer Anda, lalu pilih Berikutnya.

  4. Di halaman Tentukan detail tumpukan, atur parameter berikut:

    1. Tetapkan nama Stack ke AurPostgreSQL TestStack.

    2. Di bawah Parameter, atur Availability Zone dengan memilih dua zona ketersediaan.

    3. Di bawah konfigurasi Linux Bastion Host, untuk Key Name, pilih key pair untuk login ke instans EC2 Anda.

    4. Dalam pengaturan konfigurasi Linux Bastion Host, atur rentang IP yang Diizinkan ke alamat IP Anda. Untuk terhubung ke instans EC2 di VPC Anda menggunakan Secure Shell (SSH), tentukan alamat IP publik Anda menggunakan layanan di https://checkip.amazonaws.com. Contoh alamat IP adalah 192.0.2.1/32.

      Awas

      Jika menggunakan 0.0.0.0/0 untuk akses SSH, Anda memungkinkan semua alamat IP untuk mengakses instans publik EC2 Anda menggunakan SSH. Pendekatan ini dapat diterima untuk waktu yang singkat di lingkungan pengujian, tetapi tidak aman untuk lingkungan produksi. Dalam produksi, Anda hanya dapat memberikan otorisasi pada alamat IP atau rentang alamat tertentu saja untuk mengakses instans EC2 Anda menggunakan SSH.

    5. Di bawah konfigurasi Database General, atur kelas instance Database ke db.t4g.large.

    6. Tetapkan nama Database kedatabase-test1.

    7. Untuk nama pengguna master Database, masukkan nama untuk pengguna master.

    8. Atur Kelola kata sandi pengguna master DB dengan Secrets Manager false untuk tutorial ini.

    9. Untuk kata sandi Database, tetapkan kata sandi pilihan Anda. Ingat kata sandi ini untuk langkah lebih lanjut dalam tutorial.

    10. Setel penerapan Multi-AZ ke. false

    11. Biarkan semua pengaturan lainnya sebagai nilai default. Klik Berikutnya untuk melanjutkan.

  5. Di halaman Configure stack options, tinggalkan semua opsi default. Klik Berikutnya untuk melanjutkan.

  6. Di halaman tumpukan Tinjauan, pilih Kirim setelah memeriksa database dan opsi host bastion Linux.

Setelah proses pembuatan tumpukan selesai, lihat tumpukan dengan nama BastionStackdan APGNS untuk mencatat informasi yang Anda butuhkan untuk terhubung ke database. Untuk informasi selengkapnya, lihat Melihat data AWS CloudFormation tumpukan dan sumber daya di AWS Management Console.

Langkah 3: Membuat klaster DB Aurora PostgreSQL

Anda dapat menggunakan aplikasi klien PostgreSQL standar untuk menghubungkan ke klaster DB. Dalam contoh ini, Anda terhubung ke klaster DB Aurora PostgreSQL menggunakan klien baris perintah psql.

Untuk menghubungkan ke klaster DB Aurora PostgreSQL
  1. Temukan titik akhir (nama DNS) dan nomor port untuk instans penulis klaster DB Anda.

    1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

    2. Di sudut kanan atas konsol Amazon RDS, pilih Wilayah AWS untuk cluster DB.

    3. Di panel navigasi, pilih Basis data.

    4. Pilih nama klaster DB Aurora PostgreSQL untuk menampilkan detailnya.

    5. Di tab Konektivitas & keamanan, salin titik akhir instans penulis. Perhatikan juga nomor port. Anda memerlukan titik akhir dan nomor port untuk terhubung ke klaster DB.

      Tab konektivitas & keamanan yang menunjukkan nama titik akhir.
  2. Connect ke instans EC2 yang Anda buat sebelumnya dengan mengikuti langkah-langkah di Connect to Linux Anda di Panduan Pengguna Amazon EC2.

    Sebaiknya Anda menghubungkan ke instans EC2 menggunakan SSH. Jika utilitas klien SSH diinstal di Windows, Linux, atau Mac, Anda dapat menghubungkan ke instans menggunakan format perintah berikut:

    ssh -i location_of_pem_file ec2-user@ec2-instance-public-dns-name

    Misalnya, asumsikan bahwa ec2-database-connect-key-pair.pem disimpan di /dir1 di Linux, dan DNS IPv4 publik untuk instans EC2 Anda adalah ec2-12-345-678-90.compute-1.amazonaws.com. Perintah SSH Anda akan tampak seperti berikut:

    ssh -i /dir1/ec2-database-connect-key-pair.pem ec2-user@ec2-12-345-678-90.compute-1.amazonaws.com
  3. Dapatkan perbaikan bug dan pembaruan keamanan terbaru dengan memperbarui perangkat lunak di instans EC2 Anda. Untuk melakukannya, gunakan perintah berikut.

    catatan

    Opsi -y menginstal pembaruan tanpa meminta konfirmasi. Hilangkan opsi ini untuk memeriksa pembaruan sebelum menginstal.

    sudo dnf update -y
  4. Instal klien baris perintah psql dari PostgreSQL di Amazon Linux 2023, menggunakan perintah berikut:

    sudo dnf install postgresql15
  5. Hubungkan ke klaster DB Aurora PostgreSQL. Misalnya, masukkan perintah berikut. Tindakan ini memungkinkan Anda terhubung ke klaster DB Aurora PostgreSQL menggunakan klien psql.

    Ganti titik akhir instans penulis untuk endpoint, ganti nama basis data --dbname yang ingin Anda hubungkan untuk postgres, dan ganti nama pengguna utama yang Anda gunakan untuk postgres. Masukkan kata sandi utama yang Anda gunakan saat dimintai kata sandi.

    psql --host=endpoint --port=5432 --dbname=postgres --username=postgres

    Setelah Anda memasukkan kata sandi untuk pengguna, Anda akan melihat output yang serupa dengan yang berikut ini.

    psql (14.3, server 14.6) SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off) Type "help" for help. postgres=>

    Untuk informasi lebih lanjut tentang menghubungkan ke klaster DB Aurora PostgreSQL, lihat Menghubungkan ke klaster DB Amazon Aurora PostgreSQL.. Jika Anda tidak dapat terhubung ke klaster DB Anda, lihat Tidak dapat terhubung ke instans DB Amazon RDS.

    Untuk keamanan, ini adalah praktik terbaik untuk menggunakan koneksi terenkripsi. Hanya gunakan koneksi PostgreSQL yang tidak terenkripsi saat klien dan server berada di VPC yang sama dan jaringan tepercaya. Untuk informasi tentang cara menggunakan koneksi terenkripsi, lihat Mengamankan data Aurora PostgreSQL dengan SSL/TLS.

  6. Jalankan perintah SQL.

    Misalnya, perintah SQL berikut menunjukkan tanggal dan waktu saat ini:

    SELECT CURRENT_TIMESTAMP;

Langkah 4: Hapus instans EC2 dan klaster DB

Setelah Anda terhubung ke dan menjelajahi instans EC2 dan klaster DB sampel yang Anda buat, hapus instans tersebut sehingga Anda tidak lagi dikenakan biaya untuk instans DB tersebut.

Jika Anda biasa AWS CloudFormation membuat sumber daya, lewati langkah ini dan lanjutkan ke langkah berikutnya.

Untuk menghapus instans EC2
  1. Masuk ke AWS Management Console dan buka konsol Amazon EC2 di https://console.aws.amazon.com/ec2/.

  2. Di panel navigasi, pilih Instans.

  3. Pilih instans EC2, dan pilih Status instans, Akhiri instans.

  4. Pilih Akhiri saat diminta untuk konfirmasi.

Untuk informasi selengkapnya tentang menghapus instans EC2, lihat Mengakhiri instans Anda di Panduan Pengguna Amazon EC2.

Untuk menghapus klaster DB
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Pilih Basis data lalu pilih instans DB yang terkait dengan klaster DB.

  3. Untuk Tindakan, pilih Hapus.

  4. Pilih Hapus.

    Setelah semua instans DB yang terkait dengan klaster DB dihapus, klaster DB akan dihapus secara otomatis.

(Opsional) Hapus instans EC2 dan cluster DB yang dibuat dengan CloudFormation

Jika Anda biasa AWS CloudFormation membuat sumber daya, hapus CloudFormation tumpukan setelah Anda terhubung dan jelajahi contoh instans EC2 dan kluster DB, sehingga Anda tidak lagi dikenakan biaya untuk itu.

Untuk menghapus sumber CloudFormation daya
  1. Buka AWS CloudFormation konsol.

  2. Pada halaman Stacks di CloudFormation konsol, pilih tumpukan root (tumpukan tanpa nama VPCStack, BastionStack atau APGNS).

  3. Pilih Hapus.

  4. Pilih Hapus tumpukan saat diminta konfirmasi.

Untuk informasi selengkapnya tentang menghapus tumpukan CloudFormation, lihat Menghapus tumpukan di AWS CloudFormation konsol di AWS CloudFormation Panduan Pengguna.

(Opsional) Menghubungkan klaster DB Anda ke fungsi Lambda

Anda juga dapat menghubungkan cluster DB PostgreSQL Aurora Anda ke sumber daya komputasi tanpa server Lambda. Fungsi Lambda memungkinkan Anda menjalankan kode tanpa menyediakan atau mengelola infrastruktur. Fungsi Lambda juga memungkinkan Anda untuk otomatis merespons permintaan eksekusi kode pada skala apa pun, mulai dari belasan peristiwa dalam sehari hingga ratusan per detik. Untuk informasi selengkapnya, lihat Menghubungkan secara otomatis fungsi Lambda dan klaster DB Aurora.