Arsitektur untuk Oracle Database Enterprise Edition di Azure

Diterapkan ke: ✔️ VM Linux

Azure adalah rumah bagi semua beban kerja Oracle, termasuk beban kerja yang perlu terus berjalan secara optimal di Azure dengan Oracle. Jika Anda memiliki Oracle Diagnostic Pack atau Automatic Workload Repository (AWR), Anda dapat mengumpulkan data tentang beban kerja Anda. Gunakan data ini untuk menilai beban kerja Oracle, mengukur kebutuhan sumber daya, dan memigrasikan beban kerja ke Azure. Berbagai metrik yang disediakan oleh Oracle dalam laporan ini dapat memberikan pemahaman tentang performa aplikasi dan penggunaan platform.

Artikel ini membantu Anda menyiapkan beban kerja Oracle untuk dijalankan di Azure dan menjelajahi solusi arsitektur terbaik untuk memberikan performa cloud yang optimal. Data yang disediakan oleh Oracle dalam Statspack dan bahkan lebih dalam turunannya, AWR, membantu Anda dalam mengembangkan harapan yang jelas. Harapan ini termasuk batas penyetelan fisik melalui arsitektur, keuntungan dari penyetelan logis kode database, dan desain database keseluruhan.

Perbedaan antara kedua lingkungan

Saat Anda memigrasikan aplikasi lokal ke Azure, ingatlah beberapa perbedaan penting antara kedua lingkungan.

Salah satu perbedaan penting adalah bahwa dalam implementasi Azure, sumber daya seperti VM, disk, dan jaringan virtual dibagikan dengan klien lain. Selain itu, sumber daya dapat dibatasi berdasarkan persyaratan. Alih-alih berfokus pada menghindari kegagalan, Azure lebih berfokus pada bertahan dari kegagalan. Pendekatan pertama mencoba meningkatkan waktu rata-rata antara kegagalan (MTBF) dan yang kedua mencoba mengurangi waktu rata-rata untuk pemulihan (MTTR).

Tabel berikut ini mencantumkan beberapa perbedaan antara implementasi lokal dan implementasi Azure dari database Oracle.

Implementasi lokal Implementasi Azure
Jaringan LAN/WAN Jaringan yang ditentukan perangkat lunak (SDN)
Grup keamanan Alat pembatasan IP/port Grup keamanan jaringan
Ketahanan MTBF MTTR
Pemeliharaan terencana Patch/pemutakhiran Set ketersediaan dengan patching/peningkatan yang dikelola oleh Azure
Sumber daya Khusus Dibagikan dengan klien lain
Wilayah Pusat data Pasangan wilayah
Penyimpanan SAN/disk fisik Penyimpanan yang dikelola Azure
Skala Skala vertikal Skala horizontal

Persyaratan

Pertimbangkan persyaratan berikut sebelum Anda memulai migrasi:

  • Tentukan penggunaan CPU yang sebenarnya. Lisensi Oracle berdasarkan inti, yang berarti bahwa ukuran yang dibutuhkan vCPU Anda bisa sangat penting untuk membantu Anda mengurangi biaya.
  • Tentukan ukuran database, penyimpanan cadangan, dan tingkat pertumbuhan.
  • Tentukan persyaratan I/O, yang dapat Anda perkirakan berdasarkan Oracle Statspack dan laporan AWR. Anda juga dapat memperkirakan persyaratan dari alat pemantauan penyimpanan yang tersedia dari sistem operasi.

Opsi konfigurasi

Ada baiknya membuat laporan AWR dan mendapatkan beberapa metrik darinya untuk membantu Anda membuat keputusan tentang konfigurasi. Kemudian, terdapat empat area potensial yang dapat diselaraskan untuk meningkatkan performa di lingkungan Azure:

  • Ukuran komputer virtual
  • Throughput jaringan
  • Jenis dan konfigurasi disk
  • Pengaturan cache disk

Membuat laporan AWR

Jika sudah memiliki database Oracle Enterprise Edition dan berencana untuk bermigrasi ke Azure, Anda memiliki beberapa opsi. Jika Anda memiliki Paket Diagnostik untuk instans Oracle, Anda dapat menjalankan laporan Oracle AWR untuk mendapatkan metrik, seperti IOPS, Mbps, dan GiB. Untuk database tersebut tanpa lisensi Paket Diagnostik, atau untuk database Oracle Standard Edition, Anda dapat mengumpulkan metrik penting yang sama dengan laporan Statspack setelah mengumpulkan rekam jepret manual. Perbedaan utama antara kedua metode pelaporan ini adalah AWR dikumpulkan secara otomatis dan memberikan lebih banyak informasi tentang database daripada opsi pelaporan Statspack.

Pertimbangkan untuk menjalankan laporan AWR Anda selama beban kerja reguler dan puncak, sehingga Anda dapat membandingkan. Untuk mengumpulkan beban kerja yang lebih akurat, pertimbangkan untuk memperpanjang jeda laporan selama satu minggu, bukan satu hari. AWR menyediakan rata-rata sebagai bagian dari perhitungannya dalam laporan. Secara default, repositori AWR menyimpan data delapan hari dan mengambil rekam jepret pada interval per jam.

Untuk migrasi pusat data, Anda harus mengumpulkan laporan untuk ukuran pada sistem produksi. Perkirakan salinan database yang tersisa yang digunakan untuk pengujian, pengujian, dan pengembangan pengguna berdasarkan persentase. Misalnya, memperkirakan 50 persen ukuran produksi.

Untuk menjalankan laporan AWR dari baris perintah, gunakan perintah berikut:

sqlplus / as sysdba
@$ORACLE_HOME/rdbms/admin/awrrpt.sql;

Metrik utama

Laporan akan meminta informasi berikut:

  • Jenis laporan: HTML atau TEXT. Jenis HTML memberikan lebih banyak informasi.
  • Jumlah hari snapshot untuk ditampilkan. Misalnya, untuk interval satu jam, laporan satu minggu menghasilkan 168 ID snapshot.
  • SnapshotID awal untuk jangka waktu laporan.
  • SnapshotID akhir untuk jangka waktu laporan.
  • Nama laporan yang dibuat skrip AWR.

Jika menjalankan AWR pada Kluster Aplikasi Nyata (RAC), laporan baris perintah adalah awrgrpt.sql dan bukan awrrpt.sql. Laporan g membuat laporan untuk semua simpul dalam database RAC dalam satu laporan. Laporan ini menghilangkan kebutuhan untuk menjalankan satu laporan pada setiap node RAC.

Anda dapat memperoleh metrik berikut dari laporan AWR:

  • Nama database, nama instans, dan nama host
  • Versi database untuk dukungan oleh Oracle
  • CPU/Inti
  • SGA/PGA, dan penasihat untuk memberi tahu Anda jika berukuran kurang
  • Total memori dalam GB
  • Persentase CPU sibuk
  • CPU Database
  • IOP (baca/tulis)
  • MBP (baca/tulis)
  • Throughput jaringan
  • Laju latensi jaringan (rendah/tinggi)
  • Kejadian tunggu teratas
  • Pengaturan parameter untuk database
  • Apakah database adalah RAC, Exadata, atau menggunakan fitur atau konfigurasi tingkat lanjut

Ukuran komputer virtual

Berikut adalah beberapa langkah yang dapat Anda ambil untuk mengonfigurasi ukuran mesin virtual untuk performa optimal.

Memperkirakan ukuran mesin virtual berdasarkan CPU, memori, dan penggunaan I/O dari laporan AWR

Lihatlah lima peristiwa teratas latar depan dengan waktu yang menunjukkan titik penyempitan sistem berada. Misalnya, dalam diagram berikut, sinkronisasi file log ada di bagian atas. Ini menunjukkan jumlah tunggu yang diperlukan sebelum penulis log menulis buffer log ke file log fase pengulangan. Hasil ini menunjukkan bahwa kinerja penyimpanan atau disk yang lebih baik diperlukan. Selain itu, diagram juga menunjukkan jumlah inti CPU dan jumlah memori.

Cuplikan layar yang menunjukkan sinkronisasi file log di bagian atas tabel.

Diagram berikut ini menunjukkan total I/O pembacaan dan penulisan. Ada 59 GB pembacaan dan 247,3 GB penulisan selama waktu laporan.

Cuplikan layar yang memperlihatkan total I/O pembacaan dan penulisan.

Memilih mesin virtual

Berdasarkan informasi yang dikumpulkan dari laporan AWR, langkah selanjutnya adalah memilih VM dengan ukuran serupa yang memenuhi persyaratan Anda. Untuk informasi selengkapnya tentang VM yang tersedia, lihat Ukuran komputer virtual yang dioptimalkan memori.

Menyelaraskan ukuran mesin virtual dengan seri mesin virtual serupa berdasarkan ACU

Setelah Anda memilih VM, perhatikan unit komputasi Azure (ACU) untuk VM. Anda dapat memilih VM lain berdasarkan nilai ACU yang lebih sesuai dengan persyaratan. Untuk informasi selengkapnya, lihat Unit komputasi Azure.

Cuplikan layar halaman unit ACU.

Throughput jaringan

Diagram berikut menunjukkan hubungan antara throughput dan IOPS:

Diagram yang menunjukkan hubungan antara throughput dan IOPS, yaitu IOPS kali ukuran IO sama dengan throughput.

Total throughput jaringan diperkirakan berdasarkan informasi berikut:

  • Lalu lintas SQL*Net
  • MBps kali jumlah server (aliran keluar, seperti Oracle Data Guard)
  • Faktor lain, seperti replikasi aplikasi

Cuplikan layar throughput SQL*Net.

Berdasarkan persyaratan bandwidth jaringan, ada berbagai jenis gateway yang dapat dipilih. Jenis-jenis ini termasuk dasar, VpnGw, dan Azure ExpressRoute. Untuk informasi selengkapnya, lihat Harga VPN Gateway.

Rekomendasi

  • Latensi jaringan lebih tinggi dibanding penyebaran lokal. Mengurangi komunikasi dua arah jaringan dapat sangat meningkatkan kinerja.
  • Untuk mengurangi perjalanan pulang pergi, konsolidasikan aplikasi yang memiliki transaksi tinggi atau aplikasi cerewet pada komputer virtual yang sama.
  • Gunakan mesin virtual dengan jaringan yang dipercepat untuk performa jaringan yang lebih baik.
  • Untuk distribusi Linux tertentu, pertimbangkan untuk mengaktifkan dukungan TRIM/UNMAP.
  • Pasang Oracle Enterprise Manager di mesin virtual terpisah.
  • Halaman besar tidak diaktifkan di Linux secara default. Pertimbangkan untuk mengaktifkan halaman besar dan atur use_large_pages = ONLY pada Oracle DB. Pendekatan ini dapat membantu meningkatkan performa. Untuk informasi selengkapnya, lihat MENGGUNAKAN_HALAMAN_BESAR.

Jenis dan konfigurasi disk

Berikut adalah beberapa tips saat Anda mempertimbangkan disk.

  • Disk OS default: Jenis disk ini menawarkan data persisten dan penembolokan. Jenis ini dioptimalkan untuk akses OS saat mulai, dan tidak dirancang untuk beban kerja transaksional atau gudang data (analitis).

  • Disk terkelola: Azure mengelola akun penyimpanan yang digunakan untuk disk mesin virtual Anda. Anda menentukan jenis disk dan ukuran disk yang Anda butuhkan. Jenisnya paling sering Premium (SSD) untuk beban kerja Oracle. Azure membuat dan mengelola disk untuk Anda. Disk premium yang dikelola SSD hanya tersedia untuk seri VM yang dioptimalkan memori dan dirancang. Setelah memilih ukuran VM tertentu, menu hanya menampilkan SKU penyimpanan premium yang tersedia yang didasarkan pada ukuran VM tersebut.

    Cuplikan layar halaman disk terkelola.

Setelah mengonfigurasi penyimpanan di VM, Anda mungkin ingin memuat uji disk sebelum membuat database. Mengetahui tingkat I/O dalam hal latensi dan throughput dapat membantu Anda menentukan apakah VM mendukung throughput yang diharapkan dengan target latensi. Ada beberapa alat untuk pengujian beban aplikasi, seperti Oracle Orion, Sysbench, SLOB, dan Fio.

Jalankan uji beban lagi setelah Anda menyebarkan database Oracle. Mulai beban kerja reguler dan beban kerja tertinggi, dan hasilnya menunjukkan garis besar lingkungan Anda. Bersikaplah realistis dalam pengujian beban kerja. Tidak masuk akal untuk menjalankan beban kerja yang tidak seperti apa yang Anda jalankan pada VM pada kenyataannya.

Karena Oracle dapat menjadi database intensif I/O, penting untuk mengukur penyimpanan berdasarkan laju IOPS daripada ukuran penyimpanan. Misalnya, jika nilai IOPS yang diperlukan adalah 5.000, tetapi Anda hanya memerlukan 200 GB, Anda mungkin masih mendapatkan disk premium kelas P30 meskipun dilengkapi dengan penyimpanan lebih dari 200 GB.

Anda bisa mendapatkan tarif IOPS dari laporan AWR. Laju pengulangan log, baca fisik, dan tulis menentukan tingkat IOPS. Selalu verifikasi bahwa seri VM yang Anda pilih memiliki kemampuan untuk menangani permintaan I/O beban kerja. Jika VM memiliki batas I/O yang lebih rendah daripada penyimpanan, VM menetapkan batas maksimum.

Cuplikan layar halaman laporan AWR.

Misalnya, ukuran fase pengulangan adalah 12.200.000 byte per detik, yang sama dengan 11,63 MBP. Nilai IOPS adalah 12.200.000 / 2.358 = 5.174.

Setelah memiliki gambaran yang jelas tentang persyaratan I/O, Anda dapat memilih kombinasi drive yang paling cocok untuk memenuhi persyaratan tersebut.

Rekomendasi jenis disk

  • Untuk ruang tabel data, sebarkan beban kerja I/O di beberapa disk dengan menggunakan penyimpanan terkelola atau Oracle Automatic Storage Management (ASM).
  • Gunakan kompresi tingkat lanjut Oracle untuk mengurangi I/O untuk data dan indeks.
  • Pisahkan fase pengulangan log, Temp, dan Batalkan ruang tabel pada disk data terpisah.
  • Jangan letakkan file aplikasi apa pun di disk sistem operasi default. Disk ini tidak dioptimalkan untuk waktu boot VM cepat, dan mungkin tidak memberikan kinerja yang baik untuk aplikasi Anda.
  • Saat Anda menggunakan VM Seri-M pada penyimpanan premium, aktifkan akselerator tulis pada disk log redo.
  • Pertimbangkan untuk memindahkan fase pengulangan log dengan latensi tinggi ke disk ultra.

Pengaturan cache disk

Meskipun Anda memiliki tiga opsi untuk host penembolokan, hanya penembolokan baca-saja yang direkomendasikan untuk beban kerja database pada database Oracle. Baca/tulis dapat memperkenalkan kerentanan yang signifikan pada file data, karena tujuan penulisan database adalah untuk merekamnya ke file data, bukan untuk menyimpan informasi. Dengan baca-saja, semua permintaan di-cache untuk pembacaan di masa mendatang. Semua penulisan terus ditulis ke disk.

Rekomendasi cache disk

Untuk memaksimalkan throughput, sebaiknya mulailah dengan baca-saja untuk penyimpanan penembolokan host jika memungkinkan. Untuk penyimpanan premium, perlu diingat bahwa Anda harus menyingkirkan hambatan saat memasang sistem file dengan opsi baca-saja. Perbarui file /etc/fstab dengan pengenal unik universal untuk disk.

Cuplikan layar halaman disk terkelola yang memperlihatkan opsi baca-saja.

  • Untuk disk sistem operasi, gunakan SSD premium dengan penembolokan host baca-tulis.
  • Untuk disk data yang berisi hal berikut, gunakan SSD premium dengan penembolokan host baca-saja: file data Oracle, file temp, file kontrol, memblokir file pelacakan perubahan, BFILEs, file untuk tabel eksternal, dan log kilas balik.
  • Untuk disk data yang berisi file log fase pengulangan online Oracle, gunakan SSD premium atau UltraDisk tanpa penembolokan host, opsi Tidak Ada . File log fase pengulangan Oracle yang diarsipkan dan kumpulan cadangan Oracle Recovery Manager, juga dapat berada dengan file log fase pengulangan online. Penembolokan host dibatasi hingga 4095 GiB, jadi jangan alokasikan SSD premium yang lebih besar dari P50 dengan penembolokan host. Jika Anda membutuhkan lebih dari 4 TiB penyimpanan, stripe beberapa SSD premium dengan RAID-0. Gunakan Linux LVM2 atau Oracle Automatic Storage Management.

Jika beban kerja sangat bervariasi antara siang dan sore hari dan beban kerja I/O dapat mendukungnya, SSD Premium P1-P20 dengan ledakan dapat memberikan performa yang diperlukan selama beban batch malam hari atau tuntutan I/O terbatas.

Keamanan

Setelah menyiapkan dan mengonfigurasi lingkungan Azure, Anda perlu mengamankan jaringan Anda. Berikut beberapa rekomendasi kami:

  • Kebijakan NSG: Anda dapat menentukan NSG dengan subnet atau kartu antarmuka jaringan. Lebih mudah untuk mengontrol akses di tingkat subnet, baik untuk keamanan maupun perutean paksa aplikasi firewall.

  • Jumpbox: Untuk akses yang lebih aman, administrator tidak boleh langsung terhubung ke layanan aplikasi atau database. Gunakan jumpbox antara mesin administrator dan sumber daya Azure.

    Diagram yang memperlihatkan topologi jumpbox.

    Komputer administrator harus menawarkan akses terbatas IP hanya ke jumpbox saja. Jumpbox harus memiliki akses ke aplikasi dan database.

  • Jaringan privat (subnet): Adalah ide yang baik untuk memiliki layanan aplikasi dan database pada subnet terpisah, sehingga kebijakan NSG dapat mengatur kontrol yang lebih baik.

Sumber

Langkah berikutnya