Bagikan melalui


Tutorial: Memigrasikan Oracle WebLogic Server ke Azure Kubernetes Service (AKS) dengan geo-redundansi

Tutorial ini menunjukkan cara yang mudah dan efektif untuk menerapkan strategi kelangsungan bisnis dan pemulihan bencana (DR) untuk Java menggunakan Oracle WebLogic Server (WLS) di Azure Kubernetes Service (AKS). Solusi ini menggambarkan cara mencadangkan dan memulihkan beban kerja WLS menggunakan aplikasi Jakarta EE berbasis database sederhana yang berjalan di AKS. Geo-redundansi adalah topik yang kompleks, dengan banyak solusi yang mungkin. Solusi terbaik tergantung pada kebutuhan unik Anda. Untuk cara lain untuk menerapkan geo-redundansi, lihat sumber daya di akhir artikel ini.

Dalam tutorial ini, Anda akan mempelajari cara:

  • Gunakan praktik terbaik yang dioptimalkan Azure untuk mencapai ketersediaan tinggi dan pemulihan bencana (HA/DR).
  • Siapkan grup failover Microsoft Azure SQL Database di wilayah berpasangan.
  • Menyiapkan dan mengonfigurasi kluster WLS utama di AKS.
  • Konfigurasikan geo-redundansi menggunakan Azure Backup.
  • Memulihkan kluster WLS di wilayah sekunder.
  • Menyiapkan Azure Traffic Manager.
  • Uji failover.

Diagram berikut mengilustrasikan arsitektur yang Anda buat:

Diagram arsitektur solusi WLS di Azure VM dengan ketersediaan tinggi dan pemulihan bencana.

Azure Traffic Manager memeriksa kesehatan wilayah Anda dan merutekan lalu lintas yang sesuai dengan tingkat aplikasi. Wilayah utama memiliki penyebaran penuh kluster WLS. Hanya wilayah utama yang secara aktif melayani permintaan jaringan dari pengguna. Wilayah sekunder memulihkan kluster WLS dari cadangan wilayah utama jika ada bencana atau peristiwa DR yang dinyatakan. Wilayah sekunder diaktifkan untuk menerima lalu lintas hanya ketika wilayah utama mengalami gangguan layanan.

Azure Traffic Manager menggunakan fitur pemeriksaan kesehatan Azure Application Gateway dan WebLogic Kubernetes Operator (WKO) untuk mengimplementasikan perutean kondisional ini. WKO terintegrasi secara mendalam dengan pemeriksaan kesehatan AKS, memungkinkan Azure Traffic Manager untuk memiliki tingkat kesadaran yang tinggi tentang kesehatan beban kerja Java Anda. Kluster WLS utama sedang berjalan dan kluster sekunder dimatikan.

Tujuan waktu pemulihan geo-failover (RTO) dari tingkat aplikasi tergantung pada waktu untuk memulai AKS dan menjalankan kluster WLS sekunder, yang biasanya kurang dari satu jam. Data aplikasi dipertahankan dan direplikasi dalam grup failover Azure SQL Database, dengan RTO menit atau jam dan tujuan titik pemulihan (RPO) menit atau jam. Dalam arsitektur ini, cadangan Azure hanya memiliki satu cadangan standar Vault untuk konfigurasi WLS setiap hari. Untuk informasi selengkapnya, lihat Apa itu cadangan Azure Kubernetes Service (AKS)?

Tingkat database terdiri dari grup failover Azure SQL Database dengan server utama dan server sekunder. Server utama berada dalam mode baca-tulis aktif dan terhubung ke kluster WLS utama. Server sekunder berada dalam mode siap-saja pasif dan terhubung ke kluster WLS sekunder. Geo-failover mengalihkan semua database sekunder dalam grup ke peran utama. Untuk RPO geo-failover dan RTO Azure SQL Database, lihat Gambaran Umum Kelangsungan Bisnis.

Artikel ini ditulis dengan layanan Azure SQL Database karena artikel ini bergantung pada fitur ketersediaan tinggi (HA) layanan tersebut. Pilihan database lain dimungkinkan, tetapi Anda harus mempertimbangkan fitur KETERSEDIAAN TINGGI dari database apa pun yang Anda pilih. Untuk informasi selengkapnya, termasuk informasi tentang cara mengoptimalkan konfigurasi sumber data untuk replikasi, lihat Mengonfigurasi Sumber Data untuk Penyebaran Pasif Aktif Middleware Oracle Fusion.

Artikel ini menggunakan Azure Backup untuk melindungi AKS. Untuk ketersediaan wilayah, skenario yang didukung, dan batasan, lihat matriks dukungan cadangan Azure Kubernetes Service. Saat ini, Azure Backup mendukung pencadangan Tingkat Vault dan memulihkan di seluruh wilayah, yang tersedia dalam pratinjau publik. Untuk informasi selengkapnya, lihat Mengaktifkan pencadangan Tingkat Vault untuk AKS dan memulihkan di seluruh wilayah dengan menggunakan Azure Backup.

Catatan

Dalam artikel ini, Anda harus sering membuat pengidentifikasi unik untuk berbagai sumber daya. Artikel ini menggunakan konvensi sebagai awalan <initials><sequence-number> . Misalnya, jika nama Anda adalah Emily Juanita Bernal, pengidentifikasi unik adalah ejb01. Untuk disambiguitas tambahan, Anda dapat menambahkan tanggal hari ini dalam MMDD format, seperti ejb010307.

Prasyarat

Menyiapkan grup failover Azure SQL Database di wilayah berpasangan

Di bagian ini, Anda membuat grup failover Azure SQL Database di wilayah berpasangan untuk digunakan dengan kluster dan aplikasi WLS Anda. Di bagian selanjutnya, Anda mengonfigurasi WLS untuk menyimpan data sesi dan data log transaksi (TLOG) ke database ini. Praktik ini konsisten dengan Arsitektur Ketersediaan Maksimum (MAA) Oracle. Panduan ini menyediakan adaptasi Azure untuk MAA. Untuk informasi selengkapnya tentang MAA, lihat Arsitektur Ketersediaan Maksimum Oracle.

Pertama, buat Azure SQL Database utama dengan mengikuti langkah-langkah portal Azure di Mulai Cepat: Membuat database tunggal - Azure SQL Database. Ikuti langkah-langkah hingga, tetapi tidak termasuk, bagian "Bersihkan sumber daya". Gunakan petunjuk berikut saat Anda menelusuri artikel, lalu kembali ke artikel ini setelah Anda membuat dan mengonfigurasi Azure SQL Database:

  1. Saat Anda mencapai bagian Buat database tunggal, gunakan langkah-langkah berikut:

    1. Di langkah 4 untuk membuat grup sumber daya baru, simpan selain nilai Nama grup sumber daya - misalnya, myResourceGroup.
    2. Di langkah 5 untuk nama database, simpan selain nilai Nama database - misalnya, mySampleDatabase.
    3. Di langkah 6 untuk membuat server, gunakan langkah-langkah berikut:
      1. Simpan selain nama server unik - misalnya, sqlserverprimary-ejb120623.
      2. Untuk Lokasi, pilih (AS) US Timur.
      3. Untuk Metode autentikasi, pilih Gunakan autentikasi SQL.
      4. Simpan selain nilai masuk admin Server - misalnya, azureuser.
      5. Simpan selain nilai Kata Sandi .
    4. Di langkah 8, untuk Lingkungan beban kerja, pilih Pengembangan. Lihat deskripsi dan pertimbangkan opsi lain untuk beban kerja Anda.
    5. Di langkah 11, untuk Redundansi penyimpanan Cadangan, pilih Penyimpanan cadangan lokal-redundan. Pertimbangkan opsi lain untuk cadangan Anda. Untuk informasi selengkapnya, lihat bagian Redundansi penyimpanan Cadangan dari Pencadangan otomatis di Azure SQL Database.
    6. Di langkah 14, dalam konfigurasi aturan Firewall, untuk Izinkan layanan dan sumber daya Azure mengakses server ini, pilih Ya.
  2. Saat Anda mencapai bagian Kueri database, gunakan langkah-langkah berikut:

    1. Di langkah 3, masukkan informasi masuk admin server autentikasi SQL Anda untuk masuk.

      Catatan

      Jika masuk gagal dengan pesan kesalahan yang mirip dengan Klien dengan alamat IP 'xx.xx.xx.xx.xx' tidak diizinkan untuk mengakses server, pilih Allowlist IP xx.xx.xx.xx di server <your-sqlserver-name> di akhir pesan kesalahan. Tunggu hingga aturan firewall server selesai diperbarui, lalu pilih OK lagi.

    2. Setelah Anda menjalankan kueri sampel di langkah 5, kosongkan editor dan buat tabel.

  1. Untuk membuat skema, masukkan kueri berikut:

    1. Untuk membuat skema untuk TLOG, masukkan kueri berikut:

      create table TLOG_msp1_WLStore (ID DECIMAL(38) NOT NULL, TYPE DECIMAL(38) NOT NULL, HANDLE DECIMAL(38) NOT NULL, RECORD VARBINARY(MAX) NOT NULL, PRIMARY KEY (ID));
      create table TLOG_msp2_WLStore (ID DECIMAL(38) NOT NULL, TYPE DECIMAL(38) NOT NULL, HANDLE DECIMAL(38) NOT NULL, RECORD VARBINARY(MAX) NOT NULL, PRIMARY KEY (ID));
      create table TLOG_msp3_WLStore (ID DECIMAL(38) NOT NULL, TYPE DECIMAL(38) NOT NULL, HANDLE DECIMAL(38) NOT NULL, RECORD VARBINARY(MAX) NOT NULL, PRIMARY KEY (ID));
      create table TLOG_msp4_WLStore (ID DECIMAL(38) NOT NULL, TYPE DECIMAL(38) NOT NULL, HANDLE DECIMAL(38) NOT NULL, RECORD VARBINARY(MAX) NOT NULL, PRIMARY KEY (ID));
      create table TLOG_msp5_WLStore (ID DECIMAL(38) NOT NULL, TYPE DECIMAL(38) NOT NULL, HANDLE DECIMAL(38) NOT NULL, RECORD VARBINARY(MAX) NOT NULL, PRIMARY KEY (ID));
      create table wl_servlet_sessions (wl_id VARCHAR(100) NOT NULL, wl_context_path VARCHAR(100) NOT NULL, wl_is_new CHAR(1), wl_create_time DECIMAL(20), wl_is_valid CHAR(1), wl_session_values VARBINARY(MAX), wl_access_time DECIMAL(20), wl_max_inactive_interval INTEGER, PRIMARY KEY (wl_id, wl_context_path));
      

      Setelah eksekusi berhasil, Anda akan melihat pesan Query succeeded: Affected rows: 0.

      Tabel database ini digunakan untuk menyimpan log transaksi (TLOG) dan data sesi untuk kluster dan aplikasi WLS Anda. Untuk informasi selengkapnya, lihat Menggunakan Penyimpanan TLOG JDBC dan Menggunakan Database untuk Penyimpanan Persisten (Persistensi JDBC).

    2. Untuk membuat skema untuk aplikasi sampel, masukkan kueri berikut:

      CREATE TABLE COFFEE (ID NUMERIC(19) NOT NULL, NAME VARCHAR(255) NULL, PRICE FLOAT(32) NULL, PRIMARY KEY (ID));
      CREATE TABLE SEQUENCE (SEQ_NAME VARCHAR(50) NOT NULL, SEQ_COUNT NUMERIC(28) NULL, PRIMARY KEY (SEQ_NAME));
      

      Setelah eksekusi berhasil, Anda akan melihat pesan Query succeeded: Affected rows: 0.

Anda sekarang selesai dengan artikel "Mulai Cepat: Membuat database tunggal - Azure SQL Database".

Selanjutnya, buat grup failover Azure SQL Database dengan mengikuti langkah-langkah portal Azure di Mengonfigurasi grup failover untuk Azure SQL Database. Anda hanya memerlukan bagian berikut: Membuat grup failover dan Menguji failover yang direncanakan. Gunakan langkah-langkah berikut saat Anda menelusuri artikel, lalu kembali ke artikel ini setelah Anda membuat dan mengonfigurasi grup failover Azure SQL Database:

  1. Saat Anda mencapai bagian Buat grup failover, gunakan langkah-langkah berikut:

    1. Di langkah 5 untuk membuat grup failover, pilih opsi untuk membuat server sekunder baru lalu gunakan langkah-langkah berikut:
      1. Masukkan dan simpan selain nama grup failover - misalnya, failovergroupname-ejb120623.
      2. Masukkan dan simpan selain nama server unik - misalnya, sqlserversecondary-ejb120623.
      3. Masukkan admin server dan kata sandi yang sama dengan server utama Anda.
      4. Untuk Lokasi, pilih wilayah yang berbeda dari wilayah yang Anda gunakan untuk database utama.
      5. Pastikan Izinkan layanan Azure untuk mengakses server dipilih.
    2. Di langkah 5 untuk mengonfigurasi Database dalam grup, pilih database yang Anda buat di server utama - misalnya, mySampleDatabase.
  2. Setelah Anda menyelesaikan semua langkah di bagian Uji failover yang direncanakan, biarkan halaman grup failover terbuka dan gunakan untuk pengujian failover kluster WLS nanti.

Dapatkan string koneksi JDBC dan nama pengguna admin database untuk grup failover

Langkah-langkah berikut mengarahkan Anda untuk mendapatkan string koneksi JDBC dan nama pengguna database untuk database dalam grup failover. Nilai-nilai ini berbeda dari nilai yang sesuai untuk database utama.

  1. Di portal Azure, temukan grup sumber daya tempat Anda menyebarkan database utama.

  2. Dalam daftar sumber daya, pilih database utama dengan jenis database SQL.

  3. Di bawah Pengaturan, pilih String koneksi.

  4. Pilih JDBC.

  5. Di area teks di bawah JDBC (autentikasi SQL), pilih ikon salin untuk menempatkan nilai JDBC string koneksi di clipboard.

  6. Di editor teks, tempelkan nilainya. Anda mengeditnya di langkah lain.

  7. Kembali ke grup sumber daya.

  8. Pilih sumber daya jenis SQL Server yang berisi database yang baru saja Anda lihat di langkah-langkah sebelumnya.

  9. Di bagian Manajemen data, pilih Grup failover.

  10. Di tabel di tengah halaman, pilih grup failover.

  11. Di area teks di bawah titik akhir pendengar Baca/tulis, pilih ikon salin untuk meletakkan nilai string koneksi JDBC di clipboard.

  12. Tempelkan nilai pada baris baru di editor teks Anda. Editor teks Anda sekarang harus memiliki garis yang mirip dengan contoh berikut:

    jdbc:sqlserver://ejb010307db.database.windows.net:1433;database=ejb010307db;user=azureuser@ejb010307db;password={your_password_here};encrypt=true;trustServerCertificate=false;hostNameInCertificate=*.database.windows.net;loginTimeout=30;
    ejb010307failover.database.windows.net
    
  13. Buat baris baru menggunakan modifikasi berikut:

    1. Salin seluruh baris pertama.

    2. Ubah bagian nama host URL untuk menggunakan nama host dari baris titik akhir pendengar Baca/tulis.

    3. Hapus semuanya setelah name=value pasangan untuk database. Dengan kata lain, hapus semuanya termasuk dan setelah ; segera setelah database=ejb010307db.

      Setelah selesai, string akan terlihat mirip dengan contoh berikut:

      jdbc:sqlserver://ejb010307failover.database.windows.net:1433;database=ejb010307db
      

      Nilai ini adalah string koneksi JDBC.

  14. Di editor teks yang sama, dapatkan nama pengguna database dengan mendapatkan nilai user parameter dari JDBC asli string koneksi dan mengganti nama database dengan bagian pertama dari baris titik akhir pendengar Baca/tulis. Melanjutkan dengan contoh sebelumnya, nilainya adalah azureuser@ejb010307failover. Nilai ini adalah nama pengguna admin database.

Menyiapkan dan mengonfigurasi kluster WLS utama di AKS

Di bagian ini, Anda membuat kluster WLS di AKS menggunakan Oracle WebLogic Server pada penawaran AKS . Kluster di US Timur adalah yang utama dan dikonfigurasi sebagai kluster aktif.

Menyiapkan aplikasi sampel

Di bagian ini, Anda membangun dan mengemas sampel aplikasi CRUD Java/JakartaEE yang nantinya Anda sebarkan dan jalankan pada kluster WLS untuk pengujian failover.

Aplikasi ini menggunakan persistensi sesi JDBC WebLogic Server untuk menyimpan data sesi HTTP. Sumber data jdbc/WebLogicCafeDB menyimpan data sesi untuk mengaktifkan failover dan penyeimbangan beban di seluruh kluster Server WebLogic. Ini mengonfigurasi skema persistensi untuk mempertahankan data coffee aplikasi dalam sumber jdbc/WebLogicCafeDBdata yang sama .

Gunakan langkah-langkah berikut untuk membangun dan mengemas sampel:

  1. Gunakan perintah berikut untuk mengkloning repositori sampel dan lihat tag yang sesuai dengan artikel ini:

    git clone https://github.com/Azure-Samples/azure-cafe.git
    cd azure-cafe
    git checkout 20231206
    

    Jika Anda melihat pesan tentang Detached HEAD, aman untuk diabaikan.

  2. Gunakan perintah berikut untuk menavigasi ke direktori sampel, lalu kompilasi dan kemas sampel:

    cd weblogic-cafe
    mvn clean package
    

Ketika paket berhasil dibuat, Anda dapat menemukannya di parent-path-to-your-local-clone>/azure-café/weblogic-café/target/weblogic-café.war.< Jika tidak melihat paket, Anda harus memecahkan masalah dan menyelesaikan masalah sebelum melanjutkan.

Membuat akun penyimpanan dan kontainer penyimpanan untuk menyimpan aplikasi sampel

Gunakan langkah-langkah berikut untuk membuat akun penyimpanan dan kontainer. Beberapa langkah ini mengarahkan Anda ke panduan lain. Setelah menyelesaikan langkah-langkahnya, Anda dapat mengunggah aplikasi sampel untuk disebarkan di WLS.

  1. Masuk ke portal Azure.

  2. Buat akun penyimpanan dengan mengikuti langkah-langkah dalam Membuat akun penyimpanan. Gunakan spesialisasi berikut untuk nilai dalam artikel:

    • Buat grup sumber daya baru untuk akun penyimpanan.
    • Untuk Wilayah, pilih US Timur.
    • Untuk Nama akun penyimpanan, gunakan nilai yang sama dengan nama grup sumber daya.
    • Dalam Performa, pilih Standar.
    • Untuk Redundansi, pilih Penyimpanan redundan lokal (LRS).
    • Tab yang tersisa tidak memerlukan spesialisasi.
  3. Lanjutkan untuk memvalidasi dan membuat akun, lalu kembali ke artikel ini.

  4. Buat kontainer penyimpanan dalam akun dengan mengikuti langkah-langkah di bagian Buat kontainer mulai cepat: Mengunggah, mengunduh, dan mencantumkan blob dengan portal Azure.

  5. Dengan menggunakan artikel yang sama, unggah paket azure-café/weblogic-café/target/weblogic-café.war yang Anda buat sebelumnya dengan mengikuti langkah-langkah di bagian Unggah blob blok. Kemudian, kembali ke artikel ini.

Menyebarkan WLS di AKS

Gunakan langkah-langkah berikut untuk menyebarkan WLS di AKS:

  1. Buka Oracle WebLogic Server pada penawaran AKS di browser Anda dan pilih Buat. Anda akan melihat panel Dasar penawaran.

    Cuplikan layar portal Azure yang memperlihatkan Oracle WebLogic Server di panel Dasar-Dasar AKS.

  2. Gunakan langkah-langkah berikut untuk mengisi panel Dasar :

    1. Pastikan bahwa nilai yang ditampilkan untuk Langganan sama dengan yang memiliki peran yang tercantum di bagian prasyarat.

    2. Anda harus menyebarkan penawaran dalam grup sumber daya kosong. Di bidang Grup sumber daya, pilih Buat baru dan isi nilai unik untuk grup sumber daya - misalnya, wlsaks-eastus-20240109.

    3. Di bawah Detail instans, untuk Wilayah, pilih US Timur.

    4. Di bawah Kredensial WebLogic, berikan kata sandi untuk Administrator WebLogic dan enkripsi Model WebLogic. Simpan selain nama pengguna dan kata sandi untuk Administrator WebLogic.

    5. Di bawah Konfigurasi Dasar Opsional, untuk Terima default untuk konfigurasi opsional?, pilih Tidak. Konfigurasi opsional ditampilkan.

      Cuplikan layar portal Azure yang memperlihatkan Oracle WebLogic Server di panel Dasar AKS Konfigurasi Dasar Opsional.

    6. Untuk Awalan nama untuk Server Terkelola, isi msp. Anda mengonfigurasi tabel WLS TLOG dengan awalan TLOG_${serverName}_ nanti. Artikel ini membuat tabel TLOG dengan nama TLOG_msp${index}_WLStore. Jika Anda menginginkan awalan nama server terkelola yang berbeda, pastikan nilainya cocok dengan Konvensi Penamaan Tabel Microsoft SQL Server dan nama tabel asli.

    7. Biarkan default untuk bidang lainnya.

  3. Pilih Berikutnya untuk masuk ke panel AKS .

  4. Di bawah Pilihan gambar, berikan informasi berikut:

    • Untuk Autentikasi Nama Pengguna untuk Akses Menyeluruh Oracle, isi nama pengguna Oracle SSO Anda dari prasyarat.
    • Untuk Kata Sandi untuk autentikasi Akses Menyeluruh Oracle, isi kredensial Oracle SSO Anda dari prasyarat.

    Cuplikan layar portal Azure yang memperlihatkan Oracle WebLogic Server di panel AKS - Pemilihan Gambar.

  5. Di bawah Aplikasi, gunakan langkah-langkah berikut:

    1. Di bagian Aplikasi , di samping Sebarkan aplikasi?, pilih Ya.
    2. Di samping Paket aplikasi (.war,.ear,.jar), pilih Telusuri.
    3. Mulai ketik nama akun penyimpanan dari bagian sebelumnya. Saat akun penyimpanan yang diinginkan muncul, pilih akun penyimpanan tersebut.
    4. Pilih kontainer penyimpanan dari bagian sebelumnya.
    5. Pilih kotak centang di samping weblogic-café.war, yang Anda unggah di bagian sebelumnya. Pilih Pilih.
    6. Biarkan default untuk bidang lainnya.

    Cuplikan layar portal Azure yang memperlihatkan Oracle WebLogic Server di panel AKS - Pilihan Aplikasi.

  6. Pilih Selanjutnya.

  7. Biarkan default di panel Konfigurasi TLS/SSL, lalu pilih Berikutnya untuk masuk ke panel Load Balancing .

    Cuplikan layar portal Azure yang memperlihatkan Kluster Oracle WebLogic Server di panel Load Balancing AKS.

  8. Di panel Load Balancing , di samping Buat ingress untuk Konsol Administrasi. Pastikan tidak ada aplikasi dengan jalur /konsol*, itu akan menyebabkan konflik dengan jalur Konsol Administrasi, pilih Ya.

  9. Biarkan default untuk bidang lain dan pilih Berikutnya

  10. Biarkan nilai default di panel DNS dan pilih Berikutnya untuk masuk ke panel Database .

    Cuplikan layar portal Azure yang memperlihatkan Kluster Oracle WebLogic Server di panel Database AKS.

  11. Masukkan nilai berikut ini di panel Database :

    • Untuk Sambungkan ke database?, pilih Ya.
    • Untuk Pilih jenis database, pilih Microsoft SQL Server (Mendukung koneksi tanpa kata sandi) .
    • Untuk Nama JNDI, masukkan jdbc/WebLogicCafeDB.
    • Untuk String Koneksi DataSource, tempelkan nilai yang Anda simpan untuk string koneksi JDBC di bagian Dapatkan string koneksi JDBC dan admin database untuk bagian grup failover.
    • Untuk Protokol transaksi global, pilih Tidak Ada.
    • Untuk Nama pengguna Database, tempelkan nilai yang Anda simpan untuk nama pengguna admin database di bagian Dapatkan string koneksi JDBC dan admin database untuk grup failover.
    • Masukkan kata sandi masuk admin server database yang Anda simpan sebelumnya untuk Kata Sandi Database. Masukkan nilai yang sama untuk Konfirmasi kata sandi.
    • Biarkan default untuk bidang lainnya.
  12. Pilih Tinjau + buat.

  13. Tunggu hingga Menjalankan validasi akhir... berhasil diselesaikan, lalu pilih Buat. Setelah beberapa saat, Anda akan melihat halaman Penyebaran tempat Penyebaran sedang berlangsung ditampilkan.

Catatan

Jika Anda melihat masalah selama Menjalankan validasi akhir... , perbaiki dan coba lagi.

Bergantung pada kondisi jaringan dan aktivitas lain di wilayah yang Anda pilih, penyebaran dapat memakan waktu hingga 70 menit untuk diselesaikan. Setelah itu, Anda akan melihat teks Penyebaran Anda selesai ditampilkan di halaman penyebaran.

Mengonfigurasi penyimpanan data TLOG

Di bagian ini, Anda mengonfigurasi penyimpanan data TLOG dengan mengesampingkan model gambar WLS dengan ConfigMap. Untuk informasi selengkapnya tentang ConfigMap, lihat WebLogic Deploy Tooling model ConfigMap.

Bagian ini memerlukan terminal Bash dengan Azure CLI dan kubectl yang diinstal. Gunakan langkah-langkah berikut untuk memperoleh YAML yang diperlukan ke dan mengonfigurasi penyimpanan data TLOG:

  1. Gunakan langkah-langkah berikut untuk menyambungkan ke kluster AKS Anda:

    1. Buka portal Azure dan buka grup sumber daya yang Anda provisikan di bagian Sebarkan WLS di AKS.
    2. Pilih kluster AKS dari daftar sumber daya, lalu pilih Sambungkan untuk menyambungkan ke kluster AKS.
    3. Pilih Azure CLI dan ikuti langkah-langkah untuk menyambungkan ke kluster AKS di terminal lokal Anda.
  2. Gunakan langkah-langkah berikut untuk mendapatkan topology: entri dari YAML model gambar WLS:

    1. Buka portal Azure dan buka grup sumber daya yang Anda provisikan di bagian Sebarkan WLS di AKS.
    2. Pilih Pengaturan>Penyebaran. Pilih penyebaran pertama yang namanya dimulai dengan oracle.20210620-wls-on-aks.
    3. Pilih Output. Salin nilai shellCmdtoOutputWlsImageModelYaml ke clipboard. Nilainya adalah perintah shell yang mendekode string base64 file model dan menyimpan konten dalam file bernama model.yaml.
    4. Tempelkan nilai ke terminal Bash Anda dan jalankan perintah untuk menghasilkan file model.yaml .
    5. Edit file untuk menghapus semua konten kecuali untuk entri tingkat topology: atas. Seharusnya tidak ada entri tingkat atas dalam file Anda kecuali untuk topology:.
    6. Simpan file.
  3. Gunakan langkah-langkah berikut untuk mendapatkan ConfigMap nama dan nama namespace layanan dari YAML model domain WLS:

    1. Buka portal Azure dan buka grup sumber daya yang disediakan di bagian Sebarkan WLS di AKS.

    2. Pilih Pengaturan>Penyebaran. Pilih penyebaran pertama yang namanya dimulai dengan oracle.20210620-wls-on-aks.

    3. Pilih Output. Salin nilai shellCmdtoOutputWlsDomainYaml ke clipboard. Nilainya adalah perintah shell untuk mendekode string file model base64 dan menyimpan konten di model.yaml.

    4. Tempelkan nilai ke terminal Anda dan Anda mendapatkan file bernama domain.yaml.

    5. Cari nilai domain.yaml berikut.

      • spec.configuration.model.configMap. Jika Anda menerima default, nilai ini adalah sample-domain1-wdt-config-map.
      • metadata.namespace. Jika Anda menerima default, nilai ini adalah sample-domain1-ns.

      Untuk kenyamanan Anda, Anda dapat menggunakan perintah berikut untuk menyimpan nilai-nilai ini sebagai variabel shell:

      export CONFIG_MAP_NAME=sample-domain1-wdt-config-map
      export WLS_NS=sample-domain1-ns
      
  4. Gunakan perintah berikut untuk mendapatkan ConfigMap YAML:

    kubectl get configmap ${CONFIG_MAP_NAME} -n ${WLS_NS} -o yaml > configMap.yaml
    
  5. Gunakan langkah-langkah berikut untuk membuat file tlog-db-model.yaml :

    1. Di editor teks, buat file kosong yang disebut tlog-db-model.yaml.

    2. Sisipkan konten model.yaml Anda, tambahkan baris kosong, lalu sisipkan konten file configMap.yaml Anda.

  6. Dalam file tlog-db-model.yaml Anda, temukan baris yang berakhiran dengan ListenPort: 8001. Tambahkan teks ini pada baris berikut, berhati-hatilah dengan ekstrem yang TransactionLogJDBCStore persis di bawah ListenPort dan baris yang tersisa dalam cuplikan berikut diinden oleh dua, seperti yang ditunjukkan dalam contoh berikut:

    TransactionLogJDBCStore:
      Enabled: true
      DataSource: jdbc/WebLogicCafeDB
      PrefixName: TLOG_${serverName}_
    

    tlog-db-model.yaml yang telah selesai akan terlihat sangat dekat dengan contoh berikut:

    topology:
      Name: "@@ENV:CUSTOM_DOMAIN_NAME@@"
      ProductionModeEnabled: true
      AdminServerName: "admin-server"
      Cluster:
        "cluster-1":
          DynamicServers:
            ServerTemplate: "cluster-1-template"
            ServerNamePrefix: "@@ENV:MANAGED_SERVER_PREFIX@@"
            DynamicClusterSize: "@@PROP:CLUSTER_SIZE@@"
            MaxDynamicClusterSize: "@@PROP:CLUSTER_SIZE@@"
            MinDynamicClusterSize: "0"
            CalculatedListenPorts: false
      Server:
        "admin-server":
          ListenPort: 7001
      ServerTemplate:
        "cluster-1-template":
          Cluster: "cluster-1"
          ListenPort: 8001
          TransactionLogJDBCStore:
            Enabled: true
            DataSource: jdbc/WebLogicCafeDB
            PrefixName: TLOG_${serverName}_
      SecurityConfiguration:
        NodeManagerUsername: "@@SECRET:__weblogic-credentials__:username@@"
        NodeManagerPasswordEncrypted: "@@SECRET:__weblogic-credentials__:password@@"
    
    resources:
      JDBCSystemResource:
        jdbc/WebLogicCafeDB:
          Target: 'cluster-1'
          JdbcResource:
            JDBCDataSourceParams:
              JNDIName: [
                jdbc/WebLogicCafeDB
              ]
              GlobalTransactionsProtocol: None
            JDBCDriverParams:
              DriverName: com.microsoft.sqlserver.jdbc.SQLServerDriver
              URL: '@@SECRET:ds-secret-sqlserver-1709938597:url@@'
              PasswordEncrypted: '@@SECRET:ds-secret-sqlserver-1709938597:password@@'
              Properties:
                user:
                  Value: '@@SECRET:ds-secret-sqlserver-1709938597:user@@'
            JDBCConnectionPoolParams:
                TestTableName: SQL SELECT 1
                TestConnectionsOnReserve: true
    
  7. Ambil alih model WLS dengan ConfigMap. Untuk mengambil alih model WLS, ganti yang ada ConfigMap dengan model baru. Untuk informasi selengkapnya, lihat Memperbarui model yang ada dalam dokumentasi Oracle. Jalankan perintah berikut untuk membuat ConfigMapulang :

    export CM_NAME_FOR_MODEL=sample-domain1-wdt-config-map
    kubectl -n sample-domain1-ns delete configmap ${CM_NAME_FOR_MODEL}
    
    # replace path of tlog-db-model.yaml
    kubectl -n sample-domain1-ns create configmap ${CM_NAME_FOR_MODEL} \
      --from-file=tlog-db-model.yaml
    kubectl -n sample-domain1-ns label configmap ${CM_NAME_FOR_MODEL} \
      weblogic.domainUID=sample-domain1
    
  8. Mulai ulang kluster WLS dengan menggunakan perintah berikut. Anda perlu menyebabkan pembaruan bergulir membuat model baru berfungsi.

    export RESTART_VERSION=$(kubectl -n sample-domain1-ns get domain sample-domain1 '-o=jsonpath={.spec.restartVersion}')
    # increase restart version
    export RESTART_VERSION=$((RESTART_VERSION + 1))
    
    kubectl -n sample-domain1-ns patch domain sample-domain1 \
        --type=json \
        '-p=[{"op": "replace", "path": "/spec/restartVersion", "value": "'${RESTART_VERSION}'" }]'
    

Pastikan pod WLS berjalan sebelum Anda melanjutkan. Anda dapat menggunakan perintah berikut untuk menonton status pod:

kubectl get pod -n sample-domain1-ns -w

Catatan

Dalam artikel ini, model WLS disertakan dalam gambar kontainer aplikasi, yang dibuat oleh WLS pada penawaran AKS. TLOG dikonfigurasi dengan menimpa model yang ada dengan WDT ConfigMap yang berisi file model dan menggunakan bidang CRD configuration.model.configMap domain untuk mereferensikan peta. Dalam skenario produksi, gambar tambahan adalah pendekatan terbaik yang direkomendasikan untuk menyertakan model dalam file model Gambar, file arsip aplikasi, dan penginstalan WebLogic Deploy Tooling, di pod Anda. Fitur ini menghilangkan kebutuhan untuk menyediakan file-file ini dalam gambar yang ditentukan dalam domain.spec.image.

Mengonfigurasi geo-redundansi menggunakan Azure Backup

Di bagian ini, Anda menggunakan Azure Backup untuk mencadangkan kluster AKS dengan menggunakan ekstensi Backup, yang harus diinstal di kluster.

Gunakan langkah-langkah berikut untuk mengonfigurasi geo-redundansi:

  1. Buat kontainer penyimpanan baru untuk ekstensi cadangan AKS di akun penyimpanan yang Anda buat di bagian Buat akun penyimpanan dan kontainer penyimpanan untuk menyimpan aplikasi sampel.

  2. Gunakan perintah berikut untuk menginstal ekstensi cadangan AKS dan mengaktifkan driver dan rekam jepret CSI untuk kluster Anda:

    #replace with your resource group name.
    export RG_NAME=wlsaks-eastus-20240109
    export AKS_NAME=$(az aks list \
        --resource-group ${RG_NAME} \
        --query "[0].name" \
        --output tsv)
    
    az aks update \
        --resource-group ${RG_NAME} \
        --name ${AKS_NAME} \
        --enable-disk-driver \
        --enable-file-driver \
        --enable-blob-driver \
        --enable-snapshot-controller --yes
    

    Dibutuhkan sekitar 5 menit untuk mengaktifkan driver. Pastikan perintah selesai tanpa kesalahan sebelum melanjutkan.

  1. Buka grup sumber daya yang memiliki AKS yang disebarkan. Pilih kluster AKS dari daftar sumber daya.

  2. Pada halaman arahan AKS, pilih Pengaturan>Cadangkan>Instal Ekstensi.

  3. Pada halaman Instal ekstensi Cadangan AKS, pilih Berikutnya. Pilih akun penyimpanan dan kontainer Blob yang dibuat di langkah-langkah sebelumnya. Pilih Berikutnya lalu Buat. Dibutuhkan sekitar lima menit untuk menyelesaikan langkah ini.

  1. Buka portal Azure, di bilah pencarian di bagian atas, cari brankas Cadangan. Anda akan melihatnya tercantum di bawah Layanan. Pilih.

  2. Untuk mengaktifkan Pencadangan AKS, ikuti langkah-langkah di Mencadangkan Azure Kubernetes Service dengan menggunakan Azure Backup hingga, tetapi tidak termasuk, bagian "Gunakan kait selama pencadangan AKS". Buat penyesuaian yang ditunjukkan dalam langkah-langkah berikut.

  3. Saat Anda mencapai bagian "Buat vault Cadangan", lakukan penyesuaian berikut:

    • Untuk langkah 1, di bawah Wilayah, pilih US Timur. Di bawah Redundansi Penyimpanan Cadangan, gunakan Globally-Redundant.

      Cuplikan layar portal Azure yang memperlihatkan panel Dasar Brankas Cadangan.

    • Untuk langkah 2, aktifkan Pemulihan Lintas Wilayah.

  4. Saat Anda mencapai bagian "Buat kebijakan cadangan", buat penyesuaian berikut saat diminta untuk membuat kebijakan penyimpanan:

    1. Tambahkan aturan retensi tempat standar Vault dipilih.

      Cuplikan layar portal Azure yang memperlihatkan pilihan opsi Standar vault.

    2. Pilih Tambahkan.

  5. Saat Anda mencapai bagian "Konfigurasi cadangan", lakukan penyesuaian berikut. Langkah 1-5 adalah untuk penginstalan Ekstensi AKS. Lewati langkah 1-5 dan mulai dari langkah 6.

    • Untuk langkah 7, Anda mengalami kesalahan izin. Pilih Berikan Izin untuk melanjutkan. Setelah penyebaran izin selesai, jika kesalahan masih muncul, pilih Validasi ulang untuk me-refresh penetapan peran.

      Cuplikan layar portal Azure yang memperlihatkan AKS Mengonfigurasi Izin Pemberian Cadangan.

    • Untuk langkah 10, temukan Pilih Sumber Daya ke Cadangan, dan lakukan penyesuaian berikut:

      • Untuk nama Instans Cadangan, isi nama unik.
      • Untuk Namespace, pilih namespace layanan untuk Operator WebLogic dan WebLogic Server. Dalam artikel ini, pilih weblogic-operator-ns dan sample-domain1-ns.
      • Untuk Opsi lainnya, pilih semua opsi. Pastikan Sertakan Rahasia dipilih.

      Cuplikan layar portal Azure yang memperlihatkan AKS Mengonfigurasi Sumber Daya Pilih Cadangan.

    • Untuk langkah 11, Anda mengalami kesalahan penetapan peran. Pilih sumber data Anda dari daftar, dan pilih Tetapkan peran yang hilang untuk mengurangi kesalahan.

      Cuplikan layar portal Azure yang memperlihatkan AKS Mengonfigurasi Validasi Cadangan.

Bersiap untuk memulihkan kluster WLS di wilayah sekunder

Di bagian ini, Anda bersiap untuk memulihkan kluster WLS di wilayah sekunder. Di sini, wilayah sekunder adalah US Barat. Sebelum memulihkan, Anda harus memiliki kluster AKS dengan Ekstensi Cadangan AKS yang diinstal di wilayah US Barat.

Mengonfigurasi Azure Container Registry untuk replikasi geografis

Gunakan langkah-langkah berikut untuk mengonfigurasi Azure Container Registry (ACR) untuk replikasi geografis, yang berisi gambar WLS yang Anda buat di bagian Sebarkan WLS di AKS . Untuk mengaktifkan replikasi ACR, Anda harus meningkatkannya ke paket harga Premium. Untuk informasi selengkapnya, lihat Replikasi geografis di Azure Container Registry.

  1. Buka grup sumber daya yang Anda provisikan di bagian Sebarkan WLS di AKS . Dari daftar sumber daya, pilih ACR yang namanya dimulai dengan wlsaksacr.
  2. Di halaman arahan ACR, pilih Properti Pengaturan>. Untuk Paket harga, pilih Premium, lalu pilih Simpan.
  3. Di panel navigasi, pilih Layanan>Replikasi geografis. Pilih Tambahkan untuk menambahkan wilayah replikasi di halaman.
  4. Di halaman Buat replikasi , untuk Lokasi, pilih US Barat, lalu pilih Buat.

Setelah penyebaran selesai, ACR diaktifkan untuk replikasi geografis.

Membuat akun penyimpanan di wilayah sekunder

Untuk mengaktifkan Ekstensi Cadangan AKS, Anda harus menyediakan akun penyimpanan dengan kontainer kosong di wilayah yang sama.

Untuk memulihkan lintas wilayah cadangan, Anda harus menyediakan lokasi penahapan tempat data cadangan dihidrasi. Lokasi penahapan ini mencakup grup sumber daya dan akun penyimpanan di dalamnya dalam wilayah dan langganan yang sama dengan kluster target untuk pemulihan.

Gunakan langkah-langkah berikut untuk membuat akun penyimpanan dan kontainer. Beberapa langkah ini mengarahkan Anda ke panduan lain.

  1. Masuk ke portal Azure.
  2. Buat akun penyimpanan dengan mengikuti langkah-langkah dalam Membuat akun penyimpanan. Anda tidak perlu melakukan semua langkah dalam artikel. Isi bidang yang diperlihatkan pada panel Dasar . Untuk Wilayah, pilih US Barat, lalu pilih Tinjau + buat untuk menerima opsi default. Lanjutkan untuk memvalidasi dan membuat akun, lalu kembali ke artikel ini.
  3. Buat kontainer penyimpanan untuk Ekstensi Cadangan AKS dengan mengikuti langkah-langkah di bagian Buat kontainer mulai cepat: Mengunggah, mengunduh, dan mencantumkan blob dengan portal Azure.
  4. Buat kontainer penyimpanan sebagai lokasi penahapan untuk digunakan selama pemulihan.

Menyiapkan kluster AKS di wilayah sekunder

Bagian berikut menunjukkan kepada Anda cara membuat kluster AKS di wilayah sekunder.

Membuat kluster AKS baru

Artikel ini mengekspos aplikasi WLS menggunakan Application Gateway Ingress Controller. Di bagian ini, Anda membuat kluster AKS baru di wilayah US Barat. Kemudian, Anda mengaktifkan add-on pengontrol ingress dengan instans gateway aplikasi baru. Untuk informasi selengkapnya, lihat Mengaktifkan add-on pengontrol ingress untuk kluster AKS baru dengan instans gateway aplikasi baru.

Gunakan langkah-langkah berikut untuk membuat kluster AKS:

  1. Gunakan perintah berikut untuk membuat grup sumber daya di wilayah sekunder:

    export RG_NAME_WESTUS=wlsaks-westus-20240109
    
    az group create --name ${RG_NAME_WESTUS} --location westus
    
  2. Gunakan perintah berikut untuk menyebarkan kluster AKS dengan add-on diaktifkan:

    export AKS_NAME_WESTUS=${RG_NAME_WESTUS}aks
    export GATEWAY_NAME_WESTUS=${RG_NAME_WESTUS}gw
    
    az aks create \
        --resource-group ${RG_NAME_WESTUS} \
        --name ${AKS_NAME_WESTUS} \
        --network-plugin azure \
        --enable-managed-identity \
        --enable-addons ingress-appgw \
        --appgw-name ${GATEWAY_NAME_WESTUS} \
        --appgw-subnet-cidr "10.225.0.0/16" \
        --generate-ssh-keys
    

    Perintah ini secara otomatis membuat instans Standard_v2 SKU gateway aplikasi dengan nama ${RG_NAME_WESTUS}gw dalam grup sumber daya simpul AKS. Grup sumber daya simpul dinamai MC_resource-group-name_cluster-name_location secara default.

    Catatan

    Kluster AKS yang Anda sediakan di bagian Sebarkan WLS di AKS berjalan di tiga zona ketersediaan di wilayah US Timur. Zona ketersediaan tidak didukung di wilayah US Barat. Kluster AKS di US Barat bukan zona-redundan. Jika lingkungan produksi Anda memerlukan redundansi zona, pastikan wilayah berpasangan Anda mendukung zona ketersediaan. Untuk informasi selengkapnya, lihat bagian Gambaran Umum zona ketersediaan untuk kluster AKS dari Membuat kluster Azure Kubernetes Service (AKS) yang menggunakan zona ketersediaan.

  3. Gunakan perintah berikut untuk mendapatkan alamat IP publik instans gateway aplikasi. Simpan selain alamat IP, yang Anda gunakan nanti di artikel ini.

    export APPGW_ID=$(az aks show \
        --resource-group ${RG_NAME_WESTUS} \
        --name ${AKS_NAME_WESTUS} \
        --query 'addonProfiles.ingressApplicationGateway.config.effectiveApplicationGatewayId' \
        --output tsv)
    echo ${APPGW_ID}
    export APPGW_IP_ID=$(az network application-gateway show \
        --id ${APPGW_ID} \
        --query frontendIPConfigurations\[0\].publicIPAddress.id \
        --output tsv)
    echo ${APPGW_IP_ID}
    export APPGW_IP_ADDRESS=$(az network public-ip show \
        --id ${APPGW_IP_ID} \
        --query ipAddress \
        --output tsv)
    echo "App Gateway pubilc IP address: ${APPGW_IP_ADDRESS}"
    
  4. Gunakan perintah berikut untuk melampirkan label nama layanan nama domain (DNS) ke sumber daya alamat IP publik. Ganti <your-chosen-DNS-name> dengan nilai yang sesuai - misalnya, ejb010316.

    az network public-ip update --ids ${APPGW_IP_ID} --dns-name <your-chosen-DNS-name>
    
  5. Anda dapat memeriksa nama domain yang sepenuhnya memenuhi syarat (FQDN) DARI IP publik dengan az network public-ip show. Contoh berikut menunjukkan FQDN dengan label ejb010316DNS :

    az network public-ip show \
        --id ${APPGW_IP_ID} \
        --query dnsSettings.fqdn \
        --output tsv
    

    Perintah ini menghasilkan output yang mirip dengan contoh berikut:

    ejb010316.westus.cloudapp.azure.com
    

Catatan

Jika Anda bekerja dengan kluster AKS yang sudah ada, selesaikan dua tindakan berikut sebelum Anda melanjutkan:

  • Aktifkan add-on pengontrol ingress dengan mengikuti langkah-langkah di Mengaktifkan add-on pengontrol ingress gateway aplikasi untuk kluster AKS yang ada.
  • Jika Anda memiliki WLS yang berjalan di namespace layanan target, untuk menghindari konflik, bersihkan sumber daya WLS di namespace Operator WebLogic dan namespace WebLogic Server. Dalam artikel ini, penawaran WLS di AKS menyediakan Operator WebLogic di namespace weblogic-operator-ns dan WebLogic Server di namespace sample-domain1-nslayanan . Jalankan kubectl delete namespace weblogic-operator-ns sample-domain1-ns untuk menghapus dua namespace layanan.

Mengaktifkan Ekstensi Cadangan AKS

Sebelum melanjutkan, gunakan langkah-langkah berikut untuk menginstal Ekstensi Cadangan AKS ke kluster di wilayah sekunder:

  1. Gunakan perintah berikut untuk menyambungkan ke kluster AKS di wilayah US Barat:

    az aks get-credentials \
        --resource-group ${RG_NAME_WESTUS} \
        --name ${AKS_NAME_WESTUS}
    
  2. Gunakan perintah berikut untuk mengaktifkan driver dan rekam jepret CSI untuk kluster Anda:

    az aks update \
        --resource-group ${RG_NAME_WESTUS} \
        --name ${AKS_NAME_WESTUS} \
        --enable-disk-driver \
        --enable-file-driver \
        --enable-blob-driver \
        --enable-snapshot-controller --yes
    
  1. Buka grup sumber daya yang memiliki AKS yang disebarkan. Pilih kluster AKS dari daftar sumber daya.

  2. Pada halaman arahan AKS, pilih Pengaturan>Cadangkan>Instal Ekstensi.

  3. Pada halaman Instal ekstensi Cadangan AKS, pilih Berikutnya. Pilih akun penyimpanan dan kontainer Blob yang dibuat di langkah-langkah sebelumnya. Pilih Berikutnya lalu Buat. Dibutuhkan sekitar lima menit untuk menyelesaikan langkah ini.

Catatan

Untuk menghemat biaya, Anda dapat menghentikan kluster AKS di wilayah sekunder dengan mengikuti langkah-langkah di Menghentikan dan memulai kluster Azure Kubernetes Service (AKS). Mulai sebelum Anda memulihkan kluster WLS.

Tunggu hingga pencadangan standar Vault terjadi

Di AKS, Tingkat standar Vault adalah satu-satunya tingkatan yang mendukung Geo-redundansi dan Pemulihan Lintas Wilayah. Seperti yang dinyatakan di Tingkat penyimpanan cadangan mana yang didukung cadangan AKS?, "Hanya satu titik pemulihan terjadwal per hari yang dipindahkan ke Tingkat Vault." Anda harus menunggu pencadangan standar Vault terjadi. Batas bawah yang baik adalah menunggu 24 jam setelah menyelesaikan langkah sebelumnya sebelum melanjutkan.

Menghentikan kluster utama

Kluster WLS utama dan kluster WLS sekunder dikonfigurasi dengan database TLOG yang sama. Hanya satu kluster yang dapat memiliki database secara bersamaan. Untuk memastikan kluster sekunder berfungsi dengan benar, hentikan kluster WLS utama. Dalam artikel ini, hentikan kluster AKS untuk menonaktifkan kluster WLS dengan menggunakan langkah-langkah berikut:

  1. Buka portal Azure dan buka grup sumber daya yang Anda provisikan di bagian Sebarkan WLS di AKS.
  2. Buka kluster AKS yang tercantum dalam grup sumber daya.
  3. Pilih Hentikan untuk menghentikan kluster AKS. Pastikan penyebaran selesai sebelum melanjutkan.

Memulihkan kluster WLS

Pencadangan AKS mendukung pencadangan Tingkat Operasional dan Tingkat Vault. Hanya cadangan yang disimpan di Tingkat Vault yang dapat digunakan untuk melakukan pemulihan ke kluster di wilayah yang berbeda (Wilayah Berpasangan Azure). Sesuai aturan retensi yang ditetapkan dalam kebijakan cadangan, pencadangan pertama yang berhasil dalam sehari dipindahkan ke lintas wilayah kontainer blob. Untuk informasi selengkapnya, lihat bagian Tingkat penyimpanan cadangan mana yang didukung cadangan AKS? dari Apa itu cadangan Azure Kubernetes Service?

Setelah Anda mengonfigurasi geo-redundansi di bagian Konfigurasi geo-redundansi menggunakan Azure Backup , dibutuhkan setidaknya satu hari agar cadangan Tingkat Vault tersedia untuk pemulihan.

Gunakan langkah-langkah berikut untuk memulihkan kluster WLS:

  1. Buka portal Azure dan cari Pusat pencadangan. Pilih Pusat pencadangan di bawah Layanan.

  2. Di bawah Kelola, pilih Instans cadangan. Filter pada jenis sumber data Kubernetes Services untuk menemukan instans cadangan yang Anda buat di bagian sebelumnya.

  3. Pilih instans cadangan untuk melihat daftar titik pemulihan. Dalam artikel ini, nama instans adalah string yang mirip wlsonaks*\wlsaksinstance20240109dengan .

    Cuplikan layar portal Azure yang memperlihatkan titik pemulihan instans Backup.

  4. Pilih pencadangan standar Operasional dan Vault terbaru, lalu pilih Opsi lainnya. Pilih Pulihkan untuk memulai proses pemulihan.

  5. Pada halaman Pulihkan , panel default adalah Titik pemulihan. Pilih Sebelumnya untuk mengubah ke panel Dasar . Untuk Pulihkan Wilayah, pilih Wilayah Sekunder, lalu pilih Berikutnya: Titik pemulihan.

    Cuplikan layar portal Azure yang memperlihatkan panel Pulihkan Dasar.

  6. Pada panel Titik pemulihan, untuk Pilih tingkat yang akan dipulihkan, pilih Penyimpanan Vault, lalu pilih Berikutnya:Pulihkan parameter.

    Cuplikan layar portal Azure yang memperlihatkan panel Titik pemulihan.

  7. Pada panel Pulihkan parameter , gunakan langkah-langkah berikut:

    1. Untuk Pilih kluster Target, pilih kluster AKS yang Anda buat di wilayah US Barat. Anda mengalami masalah izin seperti yang ditunjukkan cuplikan layar berikut. Pilih Berikan Izin untuk mengurangi kesalahan.

    2. Untuk Lokasi Penahapan Cadangan, pilih Akun Penyimpanan yang Anda buat di US Barat. Anda mengalami masalah izin seperti yang ditunjukkan cuplikan layar berikut. Pilih Tetapkan peran yang hilang untuk mengurangi kesalahan.

    3. Jika kesalahan masih terjadi setelah penetapan peran selesai, pilih Validasi ulang untuk merefresh izin.

      Cuplikan layar portal Azure yang memperlihatkan panel Pulihkan parameter.

    4. Saat memberikan izin yang hilang, jika diminta untuk menentukan Cakupan, terima nilai default.

    5. Pilih Validasi. Anda akan melihat pesan, Validasi berhasil diselesaikan. Jika tidak, pecahkan masalah dan selesaikan masalah sebelum melanjutkan.

  8. Pilih Berikutnya:Tinjau + pulihkan, lalu pilih Pulihkan. Dibutuhkan sekitar 10 menit untuk memulihkan kluster WLS.

  9. Anda dapat memantau proses pemulihan dari pusat>Pencadangan Pemantauan + pelaporan>pekerjaan Pencadangan, seperti yang ditunjukkan pada cuplikan layar berikut:

    Cuplikan layar portal Azure yang memperlihatkan CrossRegionRestore sedang berlangsung.

  10. Pilih Refresh untuk melihat kemajuan terbaru.

  11. Setelah proses selesai tanpa kesalahan, hentikan kluster AKS cadangan. Kegagalan untuk melakukannya menyebabkan konflik kepemilikan saat Anda mengakses database TLOG di langkah selanjutnya.

  12. Mulai kluster utama.

Menyiapkan Azure Traffic Manager

Di bagian ini, Anda membuat Azure Traffic Manager untuk mendistribusikan lalu lintas ke aplikasi publik Anda di seluruh wilayah Azure global. Titik akhir utama menunjuk ke Azure Application Gateway di kluster WLS utama, dan titik akhir sekunder menunjuk ke Azure Application Gateway di kluster WLS sekunder.

Buat profil Azure Traffic Manager dengan mengikuti langkah-langkah di Mulai Cepat: Membuat profil Traffic Manager menggunakan portal Azure. Lewati bagian "Prasyarat". Anda hanya memerlukan bagian berikut: Membuat profil Traffic Manager, Menambahkan titik akhir Traffic Manager, dan Menguji profil Traffic Manager. Gunakan langkah-langkah berikut saat Anda menelusuri bagian ini, lalu kembali ke artikel ini setelah Anda membuat dan mengonfigurasi Azure Traffic Manager:

  1. Saat Anda mencapai bagian Membuat profil Traffic Manager, di langkah 2 Buat profil Traffic Manager, gunakan langkah-langkah berikut:

    1. Simpan selain nama profil Traffic Manager unik untuk Nama - misalnya, tmprofile-ejb120623.
    2. Simpan selain nama grup sumber daya baru untuk Grup sumber daya - misalnya, myResourceGroupTM1.
  2. Saat Anda mencapai bagian Tambahkan titik akhir Traffic Manager, gunakan langkah-langkah berikut:

    1. Setelah langkah Pilih profil dari hasil pencarian, gunakan langkah-langkah berikut:
      1. Di bawah Pengaturan, pilih Konfigurasi.
      2. Untuk DNS time to live (TTL), masukkan 10.
      3. Di bawah Pengaturan pemantauan titik akhir, untuk Jalur, masukkan /weblogic/ready.
      4. Di bawah Pengaturan failover titik akhir cepat, gunakan nilai berikut:
        • Untuk Pemeriksaan internal, masukkan 10.
        • Untuk Jumlah kegagalan yang ditoleransi, masukkan 3.
        • Untuk batas waktu pemeriksaan, 5.
      5. Pilih Simpan. Tunggu sampai selesai.
    2. Di langkah 4 untuk menambahkan titik myPrimaryEndpointakhir utama , gunakan langkah-langkah berikut:
      1. Untuk Jenis sumber daya target, pilih Alamat IP publik.
      2. Pilih menu dropdown Pilih alamat IP publik dan masukkan alamat IP Application Gateway yang disebarkan di kluster WLS US Timur yang Anda simpan sebelumnya. Anda akan melihat satu entri cocok. Pilih untuk alamat IP Publik.
    3. Di langkah 6 untuk menambahkan titik akhir failover / sekunder myFailoverEndpoint, gunakan langkah-langkah berikut:
      1. Untuk Jenis sumber daya target, pilih Alamat IP publik.
      2. Pilih menu dropdown Pilih alamat IP publik dan masukkan alamat IP Application Gateway yang disebarkan di kluster WLS US Barat yang Anda simpan sebelumnya. Anda akan melihat satu entri cocok. Pilih untuk alamat IP Publik.
    4. Tunggu sebentar. Pilih Refresh hingga status Monitor mencapai status berikut:
      • Titik akhir utama adalah Online.
      • Titik akhir failover Terdegradasi.
  3. Saat Anda mencapai bagian Menguji profil Traffic Manager, gunakan langkah-langkah berikut:

    1. Di subbagian Periksa nama DNS, di langkah 3, simpan selain nama DNS profil Traffic Manager Anda - misalnya, http://tmprofile-ejb120623.trafficmanager.net.
    2. Di sub bagian Tampilkan Traffic Manager yang sedang beraksi, gunakan langkah-langkah berikut:
      1. Pada langkah 1 dan 3, tambahkan /weblogic/ready ke nama DNS profil Traffic Manager Anda di browser web Anda - misalnya, http://tmprofile-ejb120623.trafficmanager.net/weblogic/ready. Anda akan melihat halaman kosong tanpa pesan kesalahan apa pun.
      2. Di langkah 4, Anda tidak dapat mengakses /weblogic/ready, yang diharapkan karena kluster sekunder dihentikan.
      3. Aktifkan kembali titik akhir utama.

Sekarang, titik akhir utama memiliki status Diaktifkan dan Online dan titik akhir failover memiliki status Diaktifkan dan Diturunkan di profil Traffic Manager. Biarkan halaman tetap terbuka untuk memantau status titik akhir nanti.

Uji failover dari primer ke sekunder

Untuk menguji failover, Anda secara manual mengalihkan server database utama dan kluster WLS ke server database sekunder dan kluster WLS di bagian ini.

Karena kluster utama aktif dan berjalan, kluster tersebut bertindak sebagai kluster aktif dan menangani semua permintaan pengguna yang dirutekan oleh profil Traffic Manager Anda.

Buka nama DNS profil Azure Traffic Manager Anda di tab baru browser, tambahkan akar konteks /weblogic-café aplikasi yang disebarkan - misalnya, http://tmprofile-ejb120623.trafficmanager.net/weblogic-cafe. Buat kopi baru dengan nama dan harga - misalnya, Kopi 1 dengan harga 10. Entri ini dipertahankan ke dalam tabel data aplikasi dan tabel sesi database. UI yang Anda lihat akan mirip dengan cuplikan layar berikut:

Cuplikan layar antarmuka pengguna aplikasi sampel.

Jika UI Anda tidak terlihat serupa, pecahkan masalah dan atasi masalah sebelum Melanjutkan.

Biarkan halaman tetap terbuka sehingga Anda dapat menggunakannya untuk pengujian failover nanti.

Failover ke situs sekunder

Gunakan langkah-langkah berikut untuk melakukan failover dari primer ke sekunder.

Pertama, gunakan langkah-langkah berikut untuk menghentikan kluster AKS utama:

  1. Buka portal Azure dan buka grup sumber daya yang disediakan di bagian Sebarkan WLS di AKS.
  2. Buka kluster AKS yang tercantum dalam grup sumber daya.
  3. Pilih Hentikan untuk menghentikan kluster AKS. Pastikan penyebaran selesai sebelum melanjutkan.

Selanjutnya, gunakan langkah-langkah berikut untuk mengalihkan Azure SQL Database dari server utama ke server sekunder.

  1. Beralih ke tab browser grup failover Azure SQL Database Anda.
  2. Pilih Failover>Ya.
  3. Tunggu sampai selesai.

Selanjutnya, gunakan langkah-langkah berikut untuk memulai kluster sekunder.

  1. Buka portal Azure dan buka grup sumber daya yang memiliki kluster AKS di wilayah sekunder.
  2. Buka kluster AKS yang tercantum dalam grup sumber daya.
  3. Pilih Mulai untuk memulai kluster AKS. Pastikan penyebaran selesai sebelum melanjutkan.

Terakhir, gunakan langkah-langkah berikut untuk memverifikasi aplikasi sampel setelah titik myFailoverEndpoint akhir dalam status Online :

  1. Beralih ke tab browser Traffic Manager Anda, lalu refresh halaman hingga Anda melihat bahwa nilai status Monitor titik myFailoverEndpoint akhir memasuki status Online .

  2. Beralih ke tab browser aplikasi sampel dan refresh halaman. Anda akan melihat data yang sama bertahan dalam tabel data aplikasi dan tabel sesi yang ditampilkan di UI, seperti yang ditunjukkan pada cuplikan layar berikut:

    Cuplikan layar antarmuka pengguna aplikasi sampel setelah failover.

    Jika Anda tidak mengamati perilaku ini, mungkin karena Traffic Manager membutuhkan waktu untuk memperbarui DNS untuk menunjuk ke situs failover. Masalahnya juga bisa jadi browser Anda menyimpan cache hasil resolusi nama DNS yang menunjuk ke situs yang gagal. Tunggu beberapa saat dan refresh halaman lagi.

Catatan

Solusi HA/DR siap produksi akan memperhitungkan terus menyalin konfigurasi WLS dari kluster utama ke sekunder pada jadwal reguler. Untuk informasi tentang cara melakukannya, lihat referensi ke dokumentasi Oracle di akhir artikel ini.

Untuk mengotomatiskan failover, pertimbangkan untuk menggunakan pemberitahuan pada metrik Traffic Manager dan Azure Automation. Untuk informasi selengkapnya, lihat bagian Pemberitahuan tentang metrik Traffic Manager dari metrik dan pemberitahuan Traffic Manager dan Menggunakan pemberitahuan untuk memicu runbook Azure Automation.

Gagal kembali ke situs utama

Untuk gagal kembali ke situs utama, Anda harus memastikan kedua kluster memiliki konfigurasi pencadangan cermin. Anda dapat mencapai status ini dengan menggunakan langkah-langkah berikut:

  1. Aktifkan cadangan kluster AKS di wilayah US Barat dengan mengikuti langkah-langkah di bagian Konfigurasikan geo-redundansi menggunakan Azure Backup , mulai dari langkah 4.
  2. Pulihkan cadangan Tingkat Vault terbaru ke kluster di wilayah US Timur dengan mengikuti langkah-langkah di bagian Bersiap memulihkan kluster WLS di wilayah sekunder. Lewati langkah-langkah yang sudah Anda selesaikan.
  3. Gunakan langkah serupa di bagian Failover ke situs sekunder untuk gagal kembali ke situs utama termasuk server database dan kluster.

Membersihkan sumber daya

Jika Anda tidak akan terus menggunakan kluster WLS dan komponen lain, gunakan langkah-langkah berikut untuk menghapus grup sumber daya untuk membersihkan sumber daya yang digunakan dalam tutorial ini:

  1. Dalam kotak pencarian di bagian atas portal Azure, masukkan Brankas Cadangan dan pilih vault cadangan dari hasil pencarian.
  2. Pilih Kelola>Properti>Pembaruan penghapusan>sementara. Di samping Aktifkan penghapusan sementara, batal pilih kotak centang.
  3. Pilih Kelola>instans Cadangan. Pilih instans yang Anda buat dan hapus.
  4. Masukkan nama grup sumber daya server Azure SQL Database (misalnya, myResourceGroup) di kotak pencarian di bagian atas portal Azure, dan pilih grup sumber daya yang cocok dari hasil pencarian.
  5. Pilih Hapus grup sumber daya.
  6. Di Masukkan nama grup sumber daya untuk mengonfirmasi penghapusan, masukkan nama grup sumber daya.
  7. Pilih Hapus.
  8. Ulangi langkah 4-7 untuk grup sumber daya Traffic Manager - misalnya, myResourceGroupTM1.
  9. Ulangi langkah 4-7 untuk grup sumber daya kluster WLS utama - misalnya, wls-aks-eastus-20240109.
  10. Ulangi langkah 4-7 untuk grup sumber daya kluster WLS sekunder - misalnya, wls-aks-westus-20240109.

Langkah berikutnya

Dalam tutorial ini, Anda menyiapkan solusi HA/DR yang terdiri dari tingkat infrastruktur aplikasi pasif aktif dengan tingkat database pasif aktif, dan di mana kedua tingkatan mencakup dua situs yang berbeda secara geografis. Di situs pertama, baik tingkat infrastruktur aplikasi maupun tingkat database aktif. Di situs kedua, domain sekunder dimatikan, dan database sekunder sedang siaga.

Lanjutkan menjelajahi referensi berikut untuk opsi lainnya untuk membangun solusi HA/DR dan menjalankan WLS di Azure: