Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menyiapkan AWS integrasi Oracle Database@ dengan Amazon Redshift
Untuk mengatur integrasi nol-ETL antara database Oracle dan Amazon Redshift, selesaikan langkah-langkah berikut:
-
Aktifkan Nol-ETL di jaringan ODB Anda.
-
Konfigurasikan prasyarat database Oracle.
-
Siapkan AWS Secrets Manager dan AWS Key Management Service.
-
Konfigurasikan izin IAM.
-
Siapkan kebijakan sumber daya Amazon Redshift.
-
Buat integrasi nol-ETL.
-
Buat database target di Amazon Redshift.
Langkah 1: Aktifkan nol-ETL untuk jaringan ODB Anda
Anda dapat mengaktifkan integrasi nol-ETL untuk jaringan ODB yang terkait dengan cluster VM sumber Anda. Secara default, integrasi ini dinonaktifkan.
Untuk mengaktifkan integrasi nol-ETL
-
Buka konsol Oracle Database@AWS di. https://console.aws.amazon.com/odb/
-
Di panel navigasi, pilih jaringan ODB.
-
Pilih jaringan ODB yang ingin Anda aktifkan integrasi nol-ETL.
-
Pilih Ubah.
-
Pilih Nol-ETL.
-
Pilih Lanjutkan dan kemudian Ubah.
Untuk mengaktifkan integrasi nol-ETL, gunakan update-odb-network perintah dengan parameter: --zero-etl-access
aws odb update-odb-network \ --odb-network-idodb-network-id\ --zero-etl-access ENABLED
Untuk mengaktifkan integrasi nol-ETL untuk jaringan ODB yang terkait dengan cluster VM sumber Anda, gunakan perintah. update-odb-network Perintah ini mengkonfigurasi infrastruktur jaringan yang diperlukan untuk integrasi nol-ETL.
aws odb update-odb-network \ --odb-network-idyour-odb-network-id\ --zero-etl-access ENABLED
Langkah 2: Konfigurasikan database Oracle Anda
Lengkapi konfigurasi database Oracle seperti yang dijelaskan dalam Prasyarat:
Buat pengguna replikasi dan berikan izin yang diperlukan.
Aktifkan log redo yang diarsipkan.
Konfigurasikan SSL (hanya Oracle Exadata).
Siapkan pengguna ASM jika berlaku (hanya Oracle Exadata).
Langkah 3: Siapkan AWS Secrets Manager dan AWS Key Management Service
Buat Customer Managed Key (CMK) dan simpan kredensi database Anda.
-
Buat CMK di Layanan Manajemen AWS Kunci menggunakan
create-keyperintah.aws kms create-key \ --description "ODB Zero-ETL Integration Key" \ --key-usage ENCRYPT_DECRYPT \ --key-spec SYMMETRIC_DEFAULT -
Simpan kredensi database Anda di AWS Secrets Manager.
aws secretsmanager create-secret \ --name "ODBZeroETLCredentials" \ --description "Credentials for Oracle Database@AWS Zero-ETL integration" \ --kms-key-idyour-cmk-key-arn\ --secret-string file://secret-content.json -
Lampirkan kebijakan sumber daya ke rahasia untuk mengizinkan akses Oracle Database@AWS .
aws secretsmanager put-resource-policy \ --secret-id "ODBZeroETLCredentials" \ --resource-policy file://secret-resource-policy.jsonPada perintah sebelumnya,
secret-resource-policy.jsonberisi JSON berikut. -
Lampirkan kebijakan sumber daya ke CMK. Kebijakan sumber daya CMK harus menyertakan izin untuk prinsipal layanan Oracle Database@ dan prinsipal AWS layanan Amazon Redshift untuk mendukung integrasi nol-ETL terenkripsi.
aws kms put-key-policy \ --key-idyour-cmk-key-arn\ --policy-name default \ --policy file://cmk-resource-policy.jsoncmk-resource-policy.jsonFile harus menyertakan pernyataan kebijakan berikut. Pernyataan pertama memungkinkan akses AWS layanan Oracle Database@, dan pernyataan kedua memungkinkan Amazon Redshift untuk membuat hibah pada kunci KMS untuk operasi data terenkripsi.
Langkah 4: Konfigurasikan izin IAM
Buat dan lampirkan kebijakan IAM yang memungkinkan operasi integrasi nol-ETL.
aws iam create-policy \ --policy-name "ODBZeroETLIntegrationPolicy" \ --policy-document file://odb-zetl-iam-policy.json aws iam attach-user-policy \ --user-nameyour-iam-username\ --policy-arnpolicy-arn
Kebijakan berikut memberikan izin yang diperlukan.
Langkah 5: Konfigurasikan kebijakan sumber daya Amazon Redshift
Siapkan kebijakan sumber daya di klaster Amazon Redshift Anda untuk mengotorisasi integrasi masuk.
aws redshift put-resource-policy \ --no-verify-ssl \ --resource-arn "your-redshift-cluster-arn" \ --policy '{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "redshift.amazonaws.com" }, "Action": [ "redshift:AuthorizeInboundIntegration" ], "Condition": { "StringEquals": { "aws:SourceArn": "your-vm-cluster-arn" } } }, { "Effect": "Allow", "Principal": { "AWS": "your-account-id" }, "Action": [ "redshift:CreateInboundIntegration" ] } ] }' \ --region us-west-2
Tip
Atau, Anda dapat menggunakan opsi Perbaiki untuk saya di AWS konsol. Opsi ini secara otomatis mengonfigurasi kebijakan Amazon Redshift yang diperlukan tanpa Anda perlu melakukannya secara manual.
Langkah 6: Buat integrasi nol-ETL menggunakan AWS Glue
Buat integrasi nol-ETL menggunakan perintah. AWS Glue create-integration Dalam perintah ini, Anda menentukan cluster VM sumber dan namespace Amazon Redshift target.
Contoh berikut membuat integrasi dengan PDB bernama pdb1 berjalan di cluster Exadata VM. Anda juga dapat membuat cluster VM otonom dengan mengganti cloud-vm-cluster dengan cloud-autonomous-vm-cluster ARN sumber. Menentukan kunci KMS adalah opsional. Jika Anda menentukan kunci, itu bisa berbeda dari yang Anda buatLangkah 3: Siapkan AWS Secrets Manager dan AWS Key Management Service.
aws glue create-integration \ --integration-name "MyODBZeroETLIntegration" \ --source-arn "arn:aws:odb:region:account:cloud-vm-cluster/cluster-id" \ --target-arn "arn:aws:redshift:region:account:namespace/namespace-id" \ --data-filter "include:pdb1.*.*" \ --integration-config '{ "RefreshInterval": "10", "IntegrationMode": "DEFAULT", "SourcePropertiesMap": { "secret-arn": "arn:aws:secretsmanager:region:account:secret:secret-name" } }' \ --description "Zero-ETL integration for Oracle to Amazon Redshift" \ --kms-key-id "arn:aws:kms:region:account:key/key-id"
Perintah mengembalikan ARN integrasi dan menetapkan status ke. creating Anda dapat memantau status integrasi menggunakan describe-integrations perintah.
aws glue describe-integrations \ --integration-identifierintegration-id
penting
Hanya satu PDB per integrasi yang didukung. Filter data harus menentukan satu PDB, misalnya,include: pdb1.*.*. Sumber harus berada di AWS Wilayah dan akun yang sama di mana integrasi sedang dibuat.
Langkah 7: Buat database target di Amazon Redshift
Setelah integrasi aktif, buat database target di cluster Amazon Redshift Anda.
-- Connect to your Amazon Redshift cluster psql -hyour-redshift-endpoint-Uusername-ddatabase-- Create database from integration CREATE DATABASEtarget_database_nameFROM INTEGRATION 'integration-id' DATABASE "source_pdb_name";
Setelah membuat database target, Anda dapat menanyakan data yang direplikasi.
-- List databases to verify creation \l -- Connect to the new database \ctarget_database_name-- List tables to see replicated data \dt
Verifikasi integrasi nol-ETL
Verifikasi bahwa integrasi berfungsi dengan menanyakan status integrasi AWS Glue dan memastikan bahwa perubahan Oracle Anda direplikasi ke Amazon Redshift.
Untuk memverifikasi bahwa integrasi nol-ETL Anda berfungsi dengan benar
-
Periksa status integrasi.
aws glue describe-integrations \ --integration-identifierintegration-idStatusnya harus
ACTIVEatauREPLICATING. -
Verifikasi replikasi data dengan membuat perubahan dalam database Oracle Anda dan memeriksa apakah mereka muncul di Amazon Redshift.
-
Pantau metrik replikasi di Amazon CloudWatch (jika tersedia).