Panduan konfigurasi cluster penyebaran skala HA untuk SAP HANA di RHEL

Panduan ini menunjukkan cara men-deploy dan mengonfigurasi cluster ketersediaan tinggi (HA) Red Hat Enterprise Linux (RHEL) secara manual untuk sistem penyebaran skala SAP HANA di Google Cloud yang menggunakan Load Balancer Jaringan passthrough internal untuk mengelola alamat IP virtual (VIP).

Panduan ini mencakup langkah-langkah untuk:

Panduan ini juga mencakup langkah-langkah untuk mengonfigurasi replikasi sistem SAP HANA, tetapi baca dokumentasi SAP untuk petunjuk pastinya.

Untuk men-deploy sistem SAP HANA tanpa cluster ketersediaan tinggi Linux atau host node standby, gunakan Panduan deployment SAP HANA.

Panduan ini ditujukan bagi pengguna SAP HANA tingkat lanjut yang memahami konfigurasi ketersediaan tinggi Linux untuk SAP HANA.

Sistem yang di-deploy oleh panduan ini

Dengan mengikuti panduan ini, Anda akan men-deploy sistem SAP HANA HA multi-node yang dikonfigurasi untuk redundansi zona penuh dengan instance tambahan yang bertindak sebagai pembuat mayoritas, yang juga dikenal sebagai node tie-breaker, untuk memastikan kuorum cluster tetap terjaga jika salah satu zona hilang.

Deployment akhir terdiri dari resource berikut:

  • Situs utama dan sekunder di mana setiap instance memiliki padanan berdasarkan zona.
  • Dua situs yang dikonfigurasi untuk replikasi tersinkron.
  • Satu instance komputasi untuk bertindak sebagai pembuat mayoritas.
  • Resource manager cluster ketersediaan tinggi pacemaker dengan mekanisme pemagaran.
  • Persistent disk untuk data SAP HANA dan volume log yang terpasang ke setiap instance SAP HANA.

Ringkasan cluster Linux dengan ketersediaan tinggi untuk sistem scaleout SAP HANA multi-node

Dalam panduan ini, Anda diminta untuk menggunakan template Terraform yang disediakan oleh Google Cloud untuk men-deploy virtual machine (VM) Compute Engine dan instance SAP HANA, yang memastikan bahwa VM dan sistem SAP HANA dasar memenuhi persyaratan dukungan SAP dan sesuai dengan praktik terbaik saat ini.

SAP HANA Studio digunakan dalam panduan ini untuk menguji replikasi sistem SAP HANA. Anda dapat menggunakan SAP HANA Cockpit sebagai gantinya, jika ingin. Untuk informasi tentang cara menginstal SAP HANA Studio, lihat:

Prasyarat

Sebelum membuat cluster ketersediaan tinggi SAP HANA, pastikan prasyarat berikut terpenuhi:

  • Anda telah membaca panduan perencanaan SAP HANA dan panduan perencanaan ketersediaan tinggi SAP HANA.
  • Anda atau organisasi Anda memiliki akun Google Cloud dan telah membuat project untuk deployment SAP HANA. Untuk informasi tentang cara membuat akun dan project Google Cloud, lihat Menyiapkan akun Google di Panduan Deployment SAP HANA.
  • Jika ingin menjalankan workload SAP dengan mematuhi persyaratan residensi data, kontrol akses, staf dukungan, atau peraturan, Anda harus membuat folder Assured Workloads yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat Kepatuhan dan sovereign controls untuk SAP di Google Cloud.
  • Media penginstalan SAP HANA disimpan di bucket Cloud Storage yang tersedia di project dan region deployment Anda. Untuk informasi tentang cara mengupload media penginstalan SAP HANA ke bucket Cloud Storage, lihat Mendownload SAP HANA di Panduan Deployment SAP HANA.

  • Jika login OS diaktifkan pada metadata project, Anda harus menonaktifkan login OS untuk sementara sampai deployment selesai. Untuk tujuan deployment, prosedur ini mengonfigurasi kunci SSH dalam metadata instance. Jika login OS diaktifkan, konfigurasi kunci SSH berbasis metadata akan dinonaktifkan, dan deployment ini akan gagal. Setelah deployment selesai, Anda dapat kembali mengaktifkan login OS.

    Untuk informasi selengkapnya, lihat:

  • Jika Anda menggunakan DNS internal VPC, nilai variabel vmDnsSetting dalam metadata project Anda harus GlobalOnly atau ZonalPreferred untuk mengaktifkan resolusi nama node di seluruh zona. Setelan default vmDnsSetting adalah ZonalOnly. Untuk informasi selengkapnya, lihat:

  • Anda memiliki solusi NFS, seperti solusi Filestore terkelola, untuk berbagi volume SAP HANA /hana/shared dan /hanabackup di antara host dalam sistem SAP HANA penyebaran skala. Untuk men-deploy server Filestore NFS, lihat Membuat instance.

    • Perhatikan bahwa situs utama dan sekunder harus memiliki akses ke jalur NFS tersendiri agar untuk mencegah agar data tidak tertimpa. Untuk menggunakan instance Filestore tunggal, Anda harus mengonfigurasi deployment agar menggunakan subdirektori yang berbeda sebagai jalur pemasangan.

Membuat jaringan

Untuk tujuan keamanan, buat jaringan baru. Anda dapat mengontrol siapa saja yang memiliki akses dengan menambahkan aturan firewall atau dengan menggunakan metode kontrol akses lainnya.

Jika project Anda memiliki jaringan VPC default, jangan gunakan jaringan tersebut. Sebagai gantinya, buat jaringan VPC Anda sendiri sehingga satu-satunya aturan firewall yang berlaku adalah yang Anda buat secara eksplisit.

Selama deployment, instance VM biasanya memerlukan akses ke internet untuk mendownload Agen Google Cloud untuk SAP. Jika Anda menggunakan salah satu image Linux bersertifikasi SAP yang tersedia dari Google Cloud, instance VM juga memerlukan akses ke internet untuk mendaftarkan lisensi dan mengakses repositori vendor OS. Konfigurasi dengan gateway NAT dan dengan tag jaringan VM mendukung akses ini, meskipun VM target tidak memiliki IP eksternal.

Untuk membuat jaringan VPC bagi project Anda, selesaikan langkah-langkah berikut:

  1. Membuat jaringan mode kustom. Untuk informasi selengkapnya, lihat Membuat jaringan mode kustom.

  2. Buat subnetwork, lalu tentukan region dan rentang IP. Untuk mengetahui informasi selengkapnya, lihat Menambahkan subnet.

Menyiapkan gateway NAT

Jika perlu membuat satu atau beberapa VM tanpa alamat IP publik, Anda harus menggunakan penafsiran alamat jaringan (NAT) agar VM dapat mengakses internet. Gunakan Cloud NAT, layanan terkelola yang terdistribusi dan diatur oleh software Google Cloud. Layanan ini memungkinkan VM mengirim paket keluar ke internet dan menerima semua paket respons masuk yang ditetapkan. Atau, Anda dapat menyiapkan VM terpisah sebagai gateway NAT.

Untuk membuat instance Cloud NAT bagi project Anda, lihat Menggunakan Cloud NAT.

Setelah mengonfigurasi Cloud NAT untuk project, instance VM Anda dapat mengakses internet dengan aman tanpa alamat IP publik.

Menambahkan aturan firewall

Secara default, aturan firewall tersirat memblokir koneksi masuk dari luar jaringan Virtual Private Cloud (VPC) Anda. Untuk mengizinkan koneksi masuk, siapkan aturan firewall untuk VM Anda. Setelah koneksi masuk dibuat dengan VM, traffic diizinkan di kedua arah melalui koneksi tersebut.

Anda juga dapat membuat aturan firewall untuk mengizinkan akses eksternal ke port tertentu, atau untuk membatasi akses antar-VM di jaringan yang sama. Jika jenis jaringan VPC default digunakan, beberapa aturan default tambahan juga berlaku, seperti aturan default-allow-internal, yang memungkinkan konektivitas antar-VM di jaringan yang sama di semua port.

Bergantung pada kebijakan IT yang berlaku untuk lingkungan Anda, Anda mungkin perlu mengisolasi atau membatasi konektivitas ke host database Anda, yang dapat Anda lakukan dengan membuat aturan firewall.

Bergantung pada skenario, Anda dapat membuat aturan firewall guna mengizinkan akses untuk:

  • Port SAP default yang tercantum dalam TCP/IP dari Semua Produk SAP.
  • Koneksi dari komputer atau lingkungan jaringan perusahaan Anda ke instance VM Compute Engine. Jika tidak yakin dengan alamat IP yang harus digunakan, hubungi administrator jaringan perusahaan Anda.

Untuk membuat aturan firewall bagi project Anda, lihat Membuat aturan firewall.

Men-deploy VM dan SAP HANA

Dalam panduan ini, Anda akan menggunakan file konfigurasi Terraform yang disediakan oleh Google Cloud untuk men-deploy file berikut:

  • Dua sistem SAP HANA yang cocok, masing-masing dengan dua instance VM atau lebih.
  • Satu instance pembuat mayoritas yang juga dikenal sebagai node tie-breaker, yang memastikan kuorum cluster tetap terjaga jika salah satu zona hilang.

Sistem SAP HANA menggunakan replikasi sistem asinkron sehingga salah satu sistem SAP HANA berfungsi sebagai sistem utama yang aktif dan sistem lainnya berfungsi sebagai sistem standby sekunder. Anda men-deploy kedua sistem SAP HANA dalam region yang sama, idealnya di zona yang berbeda.

Jika Anda memerlukan sistem penyebaran skala dengan host standby untuk failover host otomatis SAP HANA, Anda harus melihat Terraform: Sistem penyebaran skala SAP HANA dengan panduan deployment failover otomatis host ini.

Opsi konfigurasi untuk cluster ketersediaan tinggi SAP HANA dapat Anda tentukan di file konfigurasi Terraform.

Petunjuk berikut menggunakan Cloud Shell, tetapi umumnya berlaku untuk terminal lokal dengan Terraform yang terinstal dan dikonfigurasi dengan Penyedia Google.

  1. Pastikan kuota resource saat ini, seperti persistent disk dan CPU, cukup untuk sistem SAP HANA yang akan diinstal. Jika kuota tidak mencukupi, deployment Anda akan gagal.

    Untuk mengetahui persyaratan kuota SAP HANA, lihat Pertimbangan harga dan kuota untuk SAP HANA.

    Buka Quotas

  2. Buka Cloud Shell atau terminal lokal Anda.

    Buka Cloud Shell

  3. Download file konfigurasi manual_sap_hana_scaleout_ha.tf ke direktori kerja Anda dengan menjalankan perintah berikut di Cloud Shell atau terminal Anda:

    $ wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana_ha/terraform/manual_sap_hana_scaleout_ha.tf
  4. Buka file manual_sap_hana_scaleout_ha.tf di editor kode Cloud Shell atau, jika Anda menggunakan terminal, buka file di editor teks pilihan Anda.

    Untuk membuka editor kode Cloud Shell, klik ikon pensil di sudut kanan atas jendela terminal Cloud Shell.

  5. Dalam file manual_sap_hana_scaleout_ha.tf, untuk sap_hana_primary dan sap_hana_secondary, perbarui nilai argumen dengan mengganti konten di dalam tanda kutip ganda dengan nilai untuk penginstalan Anda. Argumen tersebut dijelaskan dalam tabel berikut.

    Argumen Jenis data Deskripsi
    source String

    Menentukan lokasi dan versi modul Terraform yang akan digunakan selama deployment.

    File konfigurasi manual_sap_hana_scaleout_ha.tf menyertakan dua instance argumen source: satu yang aktif dan satu lagi yang disertakan sebagai komentar. Argumen source yang aktif secara default menentukan latest sebagai versi modul. Instance kedua argumen source, yang secara default dinonaktifkan oleh karakter # di awal, menentukan stempel waktu yang mengidentifikasi versi modul.

    Jika Anda ingin agar semua deployment menggunakan versi modul yang sama, hapus karakter # di awal dari argumen source yang menentukan stempel waktu versi dan tambahkan karakter tersebut ke argumen source yang menentukan latest.

    project_id String Tentukan ID project Google Cloud tempat Anda men-deploy sistem ini. Misalnya, my-project-x.
    machine_type String Tentukan jenis virtual machine (VM) Compute Engine yang diperlukan untuk menjalankan sistem SAP Anda. Jika Anda memerlukan jenis VM kustom, tentukan jenis VM yang telah ditetapkan dengan jumlah vCPU yang paling mendekati kebutuhan Anda, namun tetap lebih besar. Setelah deployment selesai, ubah jumlah vCPU dan jumlah memori.

    Misalnya, n1-highmem-32.

    network String Tentukan nama jaringan yang Anda perlukan untuk membuat load balancer yang mengelola VIP.

    Jika menggunakan jaringan VPC bersama, Anda harus menambahkan ID project host sebagai direktori induk dari nama jaringan. Misalnya, HOST_PROJECT_ID/NETWORK_NAME.

    subnetwork String Tentukan nama subnetwork yang Anda buat di langkah sebelumnya. Jika Anda men-deploy ke VPC bersama, tentukan nilai ini sebagai SHARED_VPC_PROJECT_ID/SUBNETWORK. Contoh, myproject/network1
    linux_image String Tentukan nama image sistem operasi Linux tempat Anda ingin men-deploy sistem SAP. Contohnya, rhel-9-2-sap-ha atau sles-15-sp5-sap. Untuk mengetahui daftar image sistem operasi yang tersedia, lihat halaman Image di konsol Google Cloud.
    linux_image_project String Tentukan project Google Cloud yang berisi image yang telah Anda tentukan untuk argumen linux_image. Project ini dapat berupa project Anda sendiri atau project image Google Cloud. Untuk image Compute Engine, tentukan rhel-sap-cloud atau suse-sap-cloud. Untuk menemukan project image bagi sistem operasi Anda, lihat Detail sistem operasi.
    primary_instance_name String Tentukan nama instance VM untuk sistem SAP HANA utama. Nama dapat berisi huruf kecil, angka, atau tanda hubung.
    primary_zone String Tentukan zona tempat sistem SAP HANA utama di-deploy. Zona utama dan sekunder harus berada di region yang sama. Misalnya: us-east1-c.
    secondary_instance_name String Tentukan nama instance VM untuk sistem SAP HANA sekunder. Nama dapat berisi huruf kecil, angka, atau tanda hubung.
    secondary_zone String Tentukan zona tempat sistem SAP HANA sekunder di-deploy. Zona utama dan sekunder harus berada di region yang sama. Misalnya: us-east1-b.
    sap_hana_deployment_bucket String Untuk menginstal SAP HANA secara otomatis pada VM yang di-deploy, tentukan jalur bucket Cloud Storage yang berisi file penginstalan SAP HANA. Jangan sertakan gs:// di jalur; hanya sertakan nama bucket dan nama folder. Contoh, my-bucket-name/my-folder.

    Bucket Cloud Storage harus ada di project Google Cloud yang Anda tentukan untuk argumen project_id.

    sap_hana_scaleout_nodes Bilangan Bulat Tentukan jumlah host worker yang Anda butuhkan dalam sistem penyebaran skala. Untuk men-deploy sistem penyebaran skala, Anda memerlukan setidaknya satu host worker.

    Terraform membuat host worker selain instance SAP HANA utama. Misalnya, jika Anda menentukan 3, empat instance SAP HANA di-deploy dalam sistem penyebaran skala.

    sap_hana_sid String Untuk menginstal SAP HANA secara otomatis pada VM yang di-deploy, tentukan ID sistem SAP HANA. ID harus terdiri dari tiga karakter alfanumerik dan diawali dengan huruf. Semua huruf harus dalam huruf besar. Misalnya, ED1.
    sap_hana_instance_number Bilangan bulat Opsional. Tentukan nomor instance, 0 hingga 99, dari sistem SAP HANA. Nilai defaultnya adalah 0.
    sap_hana_sidadm_password String Untuk menginstal SAP HANA secara otomatis pada VM yang di-deploy, tentukan sandi SIDadm sementara untuk skrip penginstalan yang akan digunakan selama deployment. Sandi harus berisi minimal 8 karakter dan berisi minimal satu huruf besar, satu huruf kecil, dan angka.

    Daripada menetapkan sandi sebagai teks biasa, sebaiknya gunakan secret. Untuk mengetahui informasi selengkapnya, lihat Pengelolaan sandi.

    sap_hana_sidadm_password_secret String Opsional. Jika Anda menggunakan Secret Manager untuk menyimpan sandi SIDadm, tentukan Nama secret yang terkait dengan sandi ini.

    Di Secret Manager, pastikan Nilai secret, yang merupakan sandi, berisi minimal 8 karakter dan mencakup setidaknya satu huruf besar, satu huruf kecil, dan angka.

    Untuk mengetahui informasi selengkapnya, lihat Pengelolaan sandi.

    sap_hana_system_password String Untuk menginstal SAP HANA secara otomatis pada VM yang di-deploy, tentukan sandi superuser database sementara untuk skrip penginstalan yang akan digunakan selama deployment. Sandi harus berisi minimal 8 karakter dan berisi minimal satu huruf besar, satu huruf kecil, dan angka.

    Daripada menetapkan sandi sebagai teks biasa, sebaiknya gunakan secret. Untuk mengetahui informasi selengkapnya, lihat Pengelolaan sandi.

    sap_hana_system_password_secret String Opsional. Jika Anda menggunakan Secret Manager untuk menyimpan sandi superuser database, tentukan Nama secret yang terkait dengan sandi ini.

    Di Secret Manager, pastikan Nilai secret, yang merupakan sandi, berisi minimal 8 karakter dan mencakup setidaknya satu huruf besar, satu huruf kecil, dan angka.

    Untuk mengetahui informasi selengkapnya, lihat Pengelolaan sandi.

    sap_hana_double_volume_size Boolean Opsional. Untuk menggandakan ukuran volume HANA, tentukan true. Argumen ini berguna ketika Anda ingin men-deploy beberapa instance SAP HANA atau instance SAP HANA pemulihan dari bencana di VM yang sama. Secara default, ukuran volume akan otomatis dihitung sebagai ukuran minimum yang diperlukan untuk ukuran VM Anda, sekaligus tetap memenuhi persyaratan dukungan dan sertifikasi SAP. Nilai defaultnya adalah false.
    sap_hana_backup_size Bilangan Bulat Opsional. Menentukan ukuran volume /hanabackup dalam GB. Jika Anda tidak menentukan argumen ini atau menetapkannya ke 0, skrip penginstalan akan menyediakan instance Compute Engine dengan volume cadangan HANA dua kali total memori.
    sap_hana_sidadm_uid Bilangan Bulat Opsional. Tentukan nilai untuk mengganti nilai default ID pengguna adm SID_LC. Nilai defaultnya adalah 900. Anda dapat mengubahnya menjadi nilai yang berbeda demi konsistensi dalam lanskap SAP Anda.
    sap_hana_sapsys_gid Bilangan bulat Opsional. Mengganti ID grup default untuk sapsys. Nilai defaultnya adalah 79.
    sap_vip String Tentukan alamat IP yang akan digunakan untuk VIP Anda. Alamat IP harus berada dalam rentang alamat IP yang ditetapkan ke subnetwork Anda. File konfigurasi Terraform mencadangkan alamat IP ini untuk Anda.
    primary_instance_group_name String Opsional. Tentukan nama grup instance tidak terkelola untuk node utama. Nama defaultnya adalah ig-PRIMARY_INSTANCE_NAME.
    secondary_instance_group_name String Opsional. Tentukan nama grup instance tidak terkelola untuk node sekunder. Nama defaultnya adalah ig-SECONDARY_INSTANCE_NAME.
    loadbalancer_name String Opsional. Tentukan nama Load Balancer Jaringan passthrough internal. Nama defaultnya adalah lb-SAP_HANA_SID-ilb.
    network_tags String Opsional. Tentukan satu atau beberapa tag jaringan yang dipisahkan koma yang ingin Anda kaitkan dengan instance VM untuk tujuan firewall atau pemilihan rute.

    Jika Anda menentukan public_ip = false dan tidak menentukan tag jaringan, pastikan untuk menyediakan sarana akses lain ke internet.

    nic_type String Opsional. Tentukan antarmuka jaringan yang akan digunakan dengan instance VM. Anda dapat menentukan nilai GVNIC atau VIRTIO_NET. Untuk menggunakan Google Virtual NIC (gVNIC), Anda perlu menentukan image OS yang mendukung gVNIC sebagai nilai untuk argumen linux_image. Untuk daftar image OS, lihat Detail sistem operasi.

    Jika nilai untuk argumen ini tidak ditentukan, antarmuka jaringan akan otomatis dipilih berdasarkan jenis mesin yang Anda tentukan untuk argumen machine_type.

    Argumen ini tersedia dalam modul sap_hana versi 202302060649 atau yang lebih baru.
    disk_type String Opsional. Tentukan jenis default persistent disk atau Hyperdisk yang ingin Anda deploy untuk semua volume SAP dalam deployment. Nilai defaultnya adalah pd-ssd. Berikut adalah nilai yang valid untuk argumen ini: pd-ssd, pd-balanced, hyperdisk-extreme, hyperdisk-balanced, dan pd-extreme.

    Perhatikan bahwa saat Anda menentukan nilai hyperdisk-extreme atau hyperdisk-balanced, direktori /usr/sap dipasang pada persistent disk seimbang yang terpisah (pd-balanced). Ini karena direktori /usr/sap tidak memerlukan performa setinggi direktori /hana/data atau /hana/log. Dalam deployment peningkatan skala SAP HANA, persistent disk seimbang terpisah juga di-deploy untuk direktori /hana/shared.

    Anda dapat mengganti jenis disk default ini dan ukuran disk default terkait serta IOPS default menggunakan beberapa argumen lanjutan. Untuk mengetahui informasi selengkapnya, buka direktori kerja Anda, jalankan perintah terraform init, dan lihat file /.terraform/modules/manual_sap_hana_scaleout_ha/variables.tf. Sebelum menggunakan argumen ini dalam produksi, pastikan untuk mengujinya di lingkungan pengujian.

    use_single_shared_data_log_disk Boolean Opsional. Nilai defaultnya adalahfalse , yang mengarahkan Terraform untuk men-deploy persistent disk atau Hyperdisk terpisah untuk setiap volume SAP berikut: /hana/data, /hana/log, /hana/shared, dan /usr/sap. Untuk memasang volume SAP ini di persistent disk atau Hyperdisk yang sama, tentukan true.
    include_backup_disk Boolean Opsional. Argumen ini berlaku untuk deployment peningkatan skala SAP HANA. Nilai defaultnya adalah true, yang mengarahkan Terraform untuk men-deploy persistent disk HDD standar untuk menghosting direktori /hanabackup. Ukuran disk ini ditentukan oleh argumen sap_hana_backup_size.

    Jika Anda menetapkan nilai untuk include_backup_disk sebagai false, tidak ada disk yang di-deploy untuk direktori /hanabackup.

    public_ip Boolean Opsional. Menentukan apakah alamat IP publik ditambahkan ke instance VM Anda atau tidak. Nilai defaultnya adalah true.
    service_account String Opsional. Tentukan alamat email akun layanan yang dikelola pengguna untuk digunakan oleh VM host dan oleh program yang berjalan di VM host. Contoh, svc-acct-name@project-id.iam.gserviceaccount.com

    Jika Anda menentukan argumen ini tanpa nilai, atau menghilangkannya, skrip penginstalan akan menggunakan akun layanan default Compute Engine. Untuk mengetahui informasi selengkapnya, lihat Identity and access management untuk program SAP di Google Cloud.

    sap_deployment_debug Boolean Opsional. Hanya saat Cloud Customer Care meminta Anda mengaktifkan proses debug untuk deployment, tentukan true, yang akan membuat deployment menghasilkan log deployment panjang. Nilai defaultnya adalah false.
    primary_reservation_name String Opsional. Untuk menggunakan pemesanan VM Compute Engine tertentu untuk menyediakan instance VM yang menghosting instance SAP HANA utama cluster HA Anda, tentukan nama pemesanan. Secara default, skrip penginstalan akan memilih pemesanan Compute Engine yang tersedia berdasarkan kondisi berikut.

    Agar pemesanan dapat digunakan, terlepas dari apakah Anda menentukan nama atau skrip penginstalan memilihnya secara otomatis, pemesanan harus disetel dengan cara berikut:

    • Opsi specificReservationRequired disetel ke true, atau di konsol Google Cloud, opsi Pilih pemesanan tertentu dipilih.
    • Beberapa jenis mesin Compute Engine mendukung platform CPU yang tidak tercakup dalam sertifikasi SAP jenis mesin. Jika pemesanan target adalah untuk salah satu jenis mesin berikut, pemesanan tersebut harus menentukan platform CPU minimum seperti yang ditunjukkan:
      • n1-highmem-32: Intel Broadwell
      • n1-highmem-64: Intel Broadwell
      • n1-highmem-96: Intel Skylake
      • m1-megamem-96: Intel Skylake
    • Platform CPU minimum untuk semua jenis mesin lain yang disertifikasi oleh SAP untuk digunakan di Google Cloud sesuai dengan persyaratan CPU minimum SAP.
    secondary_reservation_name String Opsional. Untuk menggunakan pemesanan VM Compute Engine tertentu guna menyediakan instance VM yang menghosting instance SAP HANA sekunder cluster HA Anda, tentukan nama pemesanan. Secara default, skrip penginstalan akan memilih pemesanan Compute Engine yang tersedia berdasarkan kondisi berikut.

    Agar pemesanan dapat digunakan, terlepas dari apakah Anda menentukan nama atau skrip penginstalan memilihnya secara otomatis, pemesanan harus disetel dengan cara berikut:

    • Opsi specificReservationRequired disetel ke true, atau di konsol Google Cloud, opsi Pilih pemesanan tertentu dipilih.
    • Beberapa jenis mesin Compute Engine mendukung platform CPU yang tidak tercakup dalam sertifikasi SAP jenis mesin. Jika pemesanan target adalah untuk salah satu jenis mesin berikut, pemesanan tersebut harus menentukan platform CPU minimum seperti yang ditunjukkan:
      • n1-highmem-32: Intel Broadwell
      • n1-highmem-64: Intel Broadwell
      • n1-highmem-96: Intel Skylake
      • m1-megamem-96: Intel Skylake
    • Platform CPU minimum untuk semua jenis mesin lain yang disertifikasi oleh SAP untuk digunakan di Google Cloud sesuai dengan persyaratan CPU minimum SAP.
    primary_static_ip String Opsional. Tentukan alamat IP statis yang valid untuk instance VM utama di cluster ketersediaan tinggi. Jika Anda tidak menentukannya, alamat IP akan otomatis dibuat untuk instance VM Anda. Misalnya, 128.10.10.10.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202306120959 atau yang lebih baru.

    secondary_static_ip String Opsional. Tentukan alamat IP statis yang valid untuk instance VM sekunder di cluster ketersediaan tinggi. Jika Anda tidak menentukannya, alamat IP akan otomatis dibuat untuk instance VM Anda. Misalnya, 128.11.11.11.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202306120959 atau yang lebih baru.

    primary_worker_static_ips List(String) Opsional. Tentukan array alamat IP statis yang valid untuk instance worker di instance utama sistem HA penyebaran skala SAP HANA. Jika Anda tidak menentukan nilai untuk argumen ini, alamat IP akan otomatis dibuat untuk setiap instance VM pekerja. Contoh, [ "1.0.0.1", "2.3.3.4" ].

    Alamat IP statis ditetapkan sesuai urutan pembuatan instance. Misalnya, jika Anda memilih untuk men-deploy 3 instance worker tetapi hanya menentukan 2 alamat IP untuk argumen tersebutprimary_worker_static_ips berarti alamat IP ini ditetapkan ke dua instance VM pertama yang di-deploy oleh konfigurasi Terraform. Untuk instance worker VM ketiga, alamat IP dibuat secara otomatis.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202307270727 atau yang lebih baru.

    secondary_worker_static_ips List(String) Opsional. Tentukan array alamat IP statis yang valid untuk instance pekerja di instance sekunder sistem HA penyebaran skala SAP HANA. Jika Anda tidak menentukan nilai untuk argumen ini, alamat IP akan otomatis dibuat untuk setiap instance worker VM. Contoh, [ "1.0.0.2", "2.3.3.5" ].

    Alamat IP statis ditetapkan sesuai urutan pembuatan instance. Misalnya, jika Anda memilih untuk men-deploy 3 instance worker tetapi hanya menentukan 2 alamat IP untuk argumen tersebutsecondary_worker_static_ips berarti alamat IP ini ditetapkan ke dua instance VM pertama yang di-deploy oleh konfigurasi Terraform. Untuk instance worker VM ketiga, alamat IP dibuat secara otomatis.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202307270727 atau yang lebih baru.

    Contoh berikut menunjukkan file konfigurasi lengkap yang menentukan cluster ketersediaan tinggi untuk sistem penyebaran skala SAP HANA. Cluster ini menggunakan Load Balancer Jaringan passthrough internal untuk mengelola VIP.

    Terraform men-deploy resource Google Cloud yang ditentukan dalam file konfigurasi, lalu skrip mengambil alih untuk mengonfigurasi sistem operasi dan menginstal SAP HANA.

  6. Dalam file manual_sap_hana_scaleout_ha.tf yang sama, perbarui nilai argumen untuk majority_maker. Argumen tersebut dijelaskan dalam tabel berikut.

    Argumen Jenis data Deskripsi
    project String Tentukan ID project Google Cloud tempat Anda men-deploy sistem ini.
    majority_maker_instance_name String

    Tentukan nama untuk instance VM Compute Engine yang berfungsi sebagai pembuat mayoritas.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202307270727 atau yang lebih baru.

    majority_maker_instance_type String Tentukan jenis virtual machine (VM) Compute Engine yang ingin Anda gunakan untuk instance pembuat mayoritas. Misalnya, n1-highmem-32.

    Jika Anda ingin menggunakan jenis VM kustom, tentukan jenis VM yang telah ditetapkan dengan jumlah vCPU yang paling mendekati jumlah yang Anda butuhkan saat masih berukuran lebih besar. Setelah deployment selesai, ubah jumlah vCPU dan jumlah memori.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202307270727 atau yang lebih baru.

    majority_maker_zone String Tentukan zona tempat instance VM pembuat mayoritas di-deploy Zona ini harus berada di region yang sama dengan zona utama dan sekunder. Contoh, us-east1-d.

    Google Cloud merekomendasikan agar instance VM pembuat mayoritas di-deploy di zona yang berbeda dari sistem SAP HANA utama dan sekunder.

    Argumen ini tersedia dalam modul sap_hana_ha versi 202307270727 atau yang lebih baru.

    majority_maker_linux_image String Dengan menggunakan nilai yang sama seperti di langkah sebelumnya, tentukan jalur gambar lengkap sebagai "linux_image_project/linux_image". Contohnya, "rhel-sap-cloud/rhel-9-0-sap-v20230708".
    subnetwork String Tentukan nama subnetwork yang Anda buat di langkah sebelumnya. Jika Anda men-deploy ke VPC bersama, tentukan nilai ini sebagai SHARED_VPC_PROJECT_ID/SUBNETWORK. Contoh, myproject/network1
    service_account String Opsional. Tentukan alamat email akun layanan yang dikelola pengguna untuk digunakan oleh VM host dan oleh program yang berjalan di VM host. Contoh, svc-acct-name@project-id.iam.gserviceaccount.com

    Jika Anda menentukan argumen ini tanpa nilai, atau menghilangkannya, skrip penginstalan akan menggunakan akun layanan default Compute Engine. Untuk mengetahui informasi selengkapnya, lihat Identity and access management untuk program SAP di Google Cloud.

    metadata_startup_script String Jangan edit argumen ini. Secara default, pembuat mayoritas akan mendownload skrip startup terbaru guna menyiapkan instance untuk pengelompokan Pacemaker.

    Agar lebih jelas, komentar dalam contoh konfigurasi berikut dihilangkan.

  module "sap_hana_primary" {
    source = "https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana/sap_hana_module.zip"

    project_id                     = "example-project-123456"
    zone                           = "us-west1-a"
    machine_type                   = "n1-highmem-32"
    subnetwork                     = "default"
    linux_image                    = "rhel-9-0-sap-v20230711"
    linux_image_project            = "rhel-sap-cloud"
    instance_name                  = "hana-ha-1"
    sap_hana_sid                   = "HA1"

    sap_hana_deployment_bucket      = "my-hana-bucket"
    sap_hana_sidadm_password_secret = "hana_sid_adm_pwd"
    sap_hana_system_password_secret = "hana_sys_pwd"
    sap_hana_scaleout_nodes         = 1
    sap_hana_shared_nfs             = "10.10.10.1:/hana_scaleout/hana_a/shared"
    sap_hana_backup_nfs             = "10.10.10.1:/hana_scaleout/hana_a/backup"

  }
  module "sap_hana_secondary" {
    source = "https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana/sap_hana_module.zip"

    project_id                     = "example-project-123456"
    zone                           = "us-west1-b"
    machine_type                   = "n1-highmem-32"
    subnetwork                     = "default"
    linux_image                    = "rhel-9-0-sap-v20230711"
    linux_image_project            = "rhel-sap-cloud"
    instance_name                  = "hana-ha-2"
    sap_hana_sid                   = "HA1"

    sap_hana_deployment_bucket      = "my-hana-bucket"
    sap_hana_sidadm_password_secret = "hana_sid_adm_pwd"
    sap_hana_system_password_secret = "hana_sys_pwd"
    sap_hana_scaleout_nodes         = 1
    sap_hana_shared_nfs             = "10.10.10.2:/hana_scaleout/hana_b/shared"
    sap_hana_backup_nfs             = "10.10.10.2:/hana_scaleout/hana_b/backup"
  }

  resource "google_compute_instance" "majority_maker" {

    project =  "example-project-123456"

    # majority_maker_instance_name
    name         = "majority-maker"

    # majority_maker_instance_type
    machine_type = "n1-standard-8"

    # majority_maker_zone
    zone         = "us-west1-c"

    boot_disk {
      initialize_params {
        # majority_maker_linux_image
        image = "rhel-sap-cloud/rhel-9-0-sap-v20230711"
      }
    }

    network_interface {
      # network or subnetwork
      network = "default"
    }

      service_account {
      # service_account (Optional)
      # email  = svc-acct-name@project-id.iam.gserviceaccount.com.
      scopes = ["cloud-platform"]
    }

    # Do not edit
    metadata_startup_script = "curl -s https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_majoritymaker/startup.sh | bash -s https://storage.googleapis.com/cloudsapdeploy/deploymentmanager/latest/dm-templates/sap_majoritymaker/startup.sh"

  }
  1. Lakukan inisialisasi direktori kerja saat ini, lalu download file plugin dan modul penyedia Terraform untuk Google Cloud:

    terraform init

    Perintah terraform init menyiapkan direktori kerja Anda untuk perintah Terraform lainnya.

    Untuk memaksa refresh plugin penyedia dan file konfigurasi di direktori kerja, tentukan flag --upgrade. Jika flag --upgrade dihilangkan dan Anda tidak membuat perubahan apa pun di direktori kerja, Terraform akan menggunakan salinan yang di-cache secara lokal, meskipun latest ditentukan dalam URL source.

    terraform init --upgrade 
  2. Jika ingin, buat rencana eksekusi Terraform:

    terraform plan

    Perintah terraform plan menunjukkan perubahan yang diperlukan oleh konfigurasi Anda saat ini. Jika Anda melewati langkah ini, perintah terraform apply akan otomatis membuat rencana baru dan meminta Anda untuk menyetujuinya.

  3. Terapkan rencana eksekusi:

    terraform apply

    Jika Anda diminta untuk menyetujui tindakan, masukkan yes.

    Perintah terraform apply menyiapkan infrastruktur Google Cloud, lalu menyerahkan kontrol ke skrip yang mengonfigurasi cluster HA dan menginstal SAP HANA sesuai dengan argumen yang ditentukan dalam file konfigurasi terraform.

    Meskipun Terraform memiliki kontrol, pesan status ditulis ke Cloud Shell. Setelah skrip dipanggil, pesan status akan ditulis ke Logging dan dapat dilihat di konsol Google Cloud, seperti yang dijelaskan dalam artikel Memeriksa log.

Memverifikasi deployment sistem HA HANA Anda

Memeriksa log

  1. Di Konsol Google Cloud, buka Cloud Logging untuk memantau progres penginstalan dan memeriksa error.

    Buka Cloud Logging

  2. Filter log:

    Logs Explorer

    1. Di halaman Logs Explorer, buka panel Query.

    2. Dari menu drop-down Resource, pilih Global, lalu klik Add.

      Jika Anda tidak melihat opsi Global, di editor kueri, masukkan kueri berikut:

      resource.type="global"
      "Deployment"
      
    3. Klik Jalankan kueri.

    Logs Viewer Lama

    • Di halaman Legacy Logs Viewer, dari menu pemilih dasar, pilih Global sebagai resource logging Anda.
  3. Analisis log yang difilter:

    • Jika "--- Finished" ditampilkan, berarti pemrosesan deployment selesai dan Anda dapat melanjutkan ke langkah berikutnya.
    • Jika Anda melihat error kuota:

      1. Di halaman Kuota IAM & Admin, tingkatkan kuota yang tidak memenuhi persyaratan SAP HANA yang tercantum dalam Panduan perencanaan SAP HANA.

      2. Buka Cloud Shell.

        Buka Cloud Shell

      3. Buka direktori kerja Anda dan hapus deployment untuk membersihkan VM dan persistent disk dari penginstalan yang gagal:

        terraform destroy

        Jika Anda diminta untuk menyetujui tindakan, masukkan yes.

      4. Jalankan kembali deployment Anda.

Memeriksa konfigurasi VM dan penginstalan SAP HANA

  1. Setelah sistem SAP HANA di-deploy tanpa error, hubungkan ke setiap VM menggunakan SSH. Dari halaman instance VM Compute Engine, Anda dapat mengklik tombol SSH untuk setiap instance VM, atau menggunakan metode SSH yang Anda inginkan.

    Tombol SSH di halaman instance VM Compute Engine.

  2. Ubah ke pengguna root.

    sudo su -
  3. Di command prompt, masukkan df -h. Pastikan Anda melihat output yang menyertakan direktori /hana, seperti /hana/data.

    [root@example-ha-vm1 ~]# df -h
      Filesystem                        Size  Used Avail Use% Mounted on
      devtmpfs                          126G     0  126G   0% /dev
      tmpfs                             126G   54M  126G   1% /dev/shm
      tmpfs                             126G   25M  126G   1% /run
      tmpfs                             126G     0  126G   0% /sys/fs/cgroup
      /dev/sda2                          30G  5.4G   25G  18% /
      /dev/sda1                         200M  6.9M  193M   4% /boot/efi
      /dev/mapper/vg_hana-shared        251G   52G  200G  21% /hana/shared
      /dev/mapper/vg_hana-sap            32G  477M   32G   2% /usr/sap
      /dev/mapper/vg_hana-data          426G  9.8G  417G   3% /hana/data
      /dev/mapper/vg_hana-log           125G  7.0G  118G   6% /hana/log
      /dev/mapper/vg_hanabackup-backup  512G  9.3G  503G   2% /hanabackup
      tmpfs                              26G     0   26G   0% /run/user/900
      tmpfs                              26G     0   26G   0% /run/user/899
      tmpfs                              26G     0   26G   0% /run/user/1003

Membersihkan dan mencoba ulang deployment

Jika salah satu langkah verifikasi deployment di bagian sebelumnya menunjukkan bahwa penginstalan tidak berhasil, Anda harus mengurungkan deployment dan mencobanya lagi dengan menyelesaikan langkah-langkah berikut:

  1. Atasi error yang ada untuk memastikan deployment Anda tidak gagal lagi karena alasan yang sama. Untuk informasi cara memeriksa log atau menyelesaikan error terkait kuota, lihat Memeriksa log.

  2. Buka Cloud Shell atau, jika Anda telah menginstal Google Cloud CLI di workstation lokal Anda, buka terminal.

    Buka Cloud Shell

  3. Buka direktori yang berisi file konfigurasi Terraform yang Anda gunakan untuk deployment ini.

  4. Hapus semua resource yang merupakan bagian dari deployment Anda dengan menjalankan perintah berikut:

    terraform destroy

    Jika Anda diminta untuk menyetujui tindakan, masukkan yes.

  5. Coba lagi deployment Anda sesuai petunjuk sebelumnya dalam panduan ini.

Memvalidasi penginstalan Agen Google Cloud untuk SAP

Setelah Anda men-deploy semua instance dan menginstal sistem SAP, validasikan bahwa Agen Google Cloud untuk SAP berfungsi dengan baik.

Memastikan bahwa Agen Google Cloud untuk SAP berjalan

Untuk memastikan bahwa agen sedang berjalan, ikuti langkah-langkah berikut:

  1. Buat koneksi SSH dengan instance VM host Anda.

  2. Jalankan perintah berikut:

    systemctl status google-cloud-sap-agent

    Jika agen berfungsi dengan baik, output akan berisi active (running). Contoh:

    google-cloud-sap-agent.service - Google Cloud Agent for SAP
    Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled)
    Active:  active (running)  since Fri 2022-12-02 07:21:42 UTC; 4 days ago
    Main PID: 1337673 (google-cloud-sa)
    Tasks: 9 (limit: 100427)
    Memory: 22.4 M (max: 1.0G limit: 1.0G)
    CGroup: /system.slice/google-cloud-sap-agent.service
           └─1337673 /usr/bin/google-cloud-sap-agent
    

Jika agen tidak berjalan, mulai ulang agen.

Memverifikasi bahwa Agen Host SAP menerima metrik

Untuk memverifikasi bahwa metrik infrastruktur dikumpulkan oleh Agen Google Cloud untuk SAP dan dikirim dengan benar ke Agen Host SAP, ikuti langkah-langkah berikut:

  1. Di sistem SAP, masukkan transaksi ST06.
  2. Di panel ringkasan, periksa ketersediaan dan konten kolom berikut untuk penyiapan infrastruktur pemantauan SAP dan Google yang menyeluruh dan benar:

    • Penyedia Cloud: Google Cloud Platform
    • Akses Pemantauan yang Ditingkatkan: TRUE
    • Detail Enhanced Monitoring: ACTIVE

Menyiapkan pemantauan untuk SAP HANA

Secara opsional, Anda dapat memantau instance SAP HANA menggunakan Agen Google Cloud untuk SAP. Dari versi 2.0, Anda dapat mengonfigurasi agen untuk mengumpulkan metrik pemantauan SAP HANA dan mengirimkannya ke Cloud Monitoring. Dengan Cloud Monitoring, Anda dapat membuat dasbor untuk memvisualisasikan metrik ini, menyiapkan pemberitahuan berdasarkan batas metrik, dan lainnya.

Untuk mengetahui informasi selengkapnya tentang pengumpulan metrik pemantauan SAP HANA menggunakan Agen Google Cloud untuk SAP, lihat Pengumpulan metrik pemantauan SAP HANA.

(Opsional) Membuat daftar instance untuk otomatisasi skrip

Untuk mengotomatiskan sebagian tugas yang berulang selama konfigurasi sistem SAP HANA dan cluster Pacemaker, Anda dapat menggunakan skrip bash. Dalam panduan ini, skrip bash tersebut digunakan untuk mempercepat konfigurasi sistem SAP HANA dan cluster Pacemaker. Skrip ini memerlukan daftar semua instance VM yang di-deploy dan zona yang sesuai sebagai input.

Untuk mengaktifkan otomatisasi ini, buat file bernama nodes.txt dan sertakan detail semua instance VM yang di-deploy dalam format berikut: nama zona, whitespace, lalu nama instance VM. File contoh berikut digunakan dalam panduan ini:

# cat nodes.txt
  us-west1-a hana-ha-vm-1
  us-west1-a hana-ha-vm-1w1
  us-west1-a hana-ha-vm-1w2
  us-west1-b hana-majoritymaker
  us-west1-c hana-ha-vm-2
  us-west1-c hana-ha-vm-2w1
  us-west1-c hana-ha-vm-2w2
 

Menyiapkan akses SSH tanpa sandi

Untuk mengonfigurasi cluster Pacemaker dan menyinkronkan kunci penyimpanan aman (SSFS) SAP HANA, akses SSH tanpa sandi diperlukan di antara semua node, termasuk instance pembuat mayoritas. Untuk akses SSH tanpa sandi, Anda perlu menambahkan kunci publik SSH ke metadata instance dari semua instance yang di-deploy.

Format metadata-nya adalah USERNAME: PUBLIC-KEY-VALUE.

Untuk mengetahui informasi selengkapnya tentang menambahkan kunci SSH ke VM, lihat Menambahkan kunci SSH ke VM yang menggunakan kunci SSH berbasis metadata.

Langkah manual

  1. Untuk setiap instance di sistem utama dan sekunder, serta instance pembuat mayoritas, kumpulkan kunci publik untuk root pengguna.

    gcloud compute ssh --quiet --zone ZONE_ID INSTANCE_NAME -- sudo cat /root/.ssh/id_rsa.pub
  2. Tambahkan kunci dengan string root: di awal, lalu tulis kunci sebagai baris baru di dalam file bernama public-ssh-keys.txt, misalnya:

    root:ssh-rsa AAAAB3NzaC1JfuYnOI1vutCs= root@INSTANCE_NAME
  3. Setelah mengumpulkan semua kunci publik SSH, upload kunci tersebut sebagai metadata ke semua instance:

    gcloud compute instances add-metadata --metadata-from-file ssh-keys=public-ssh-keys.txt --zone ZONE_ID INSTANCE_NAME

Langkah otomatis

Atau, untuk mengotomatiskan proses penyiapan akses SSH tanpa sandi untuk semua instance yang tercantum di nodes.txt, lakukan langkah-langkah berikut melalui Konsol Google Cloud:

  1. Buat daftar kunci publik dari semua instance yang di-deploy:

    while read -u10 ZONE HOST ;  do echo "Collecting public-key from $HOST"; { echo 'root:'; gcloud compute ssh --quiet --zone $ZONE $HOST --tunnel-through-iap -- sudo cat /root/.ssh/id_rsa.pub; } | tr -ds '\n' " " >> public-ssh-keys.txt; done 10< nodes.txt

  2. Tetapkan kunci publik SSH sebagai entri metadata ke semua instance:

    while read -u10 ZONE HOST ;  do echo "Adding public keys to $HOST"; gcloud compute instances add-metadata --metadata-from-file ssh-keys=public-ssh-keys.txt --zone $ZONE $HOST; done 10< nodes.txt 

Menonaktifkan mulai otomatis SAP HANA

Langkah manual

Untuk setiap instance SAP HANA dalam cluster, pastikan mulai otomatis SAP HANA dinonaktifkan. Untuk failover, Pacemaker mengelola proses mulai dan berhenti instance SAP HANA dalam cluster.

  1. Pada setiap host sebagai SID_LCadm, hentikan SAP HANA:

    > HDB stop
  2. Pada setiap host, buka profil SAP HANA dengan menggunakan editor, seperti vi:

    vi /usr/sap/SID/SYS/profile/SID_HDBINST_NUM_HOST_NAME
  3. Tetapkan properti Autostart ke 0.

    Autostart=0
  4. Simpan profil.

  5. Pada setiap host sebagai SID_LCadm, mulai SAP HANA:

    > HDB start

Langkah otomatis

Atau, untuk menonaktifkan mulai otomatis SAP HANA untuk semua instance yang tercantum di nodes.txt, jalankan skrip berikut dari Konsol Google Cloud:

while read -u10 ZONE HOST ;
 do gcloud compute ssh --verbosity=none --zone $ZONE $HOST -- "echo Setting Autostart=0 on \$HOSTNAME;
 sudo sed -i 's/Autostart=1/Autostart=0/g' /usr/sap/SID/SYS/profile/SID_HDBINST_NUM_\$HOSTNAME";
 done 10< nodes.txt
 

Mengaktifkan Mulai Ulang Cepat SAP HANA

Google Cloud sangat merekomendasikan pengaktifan Mulai Ulang Cepat SAP HANA untuk setiap instance SAP HANA, terutama untuk instance yang lebih besar. Mulai Ulang Cepat SAP HANA mengurangi waktu mulai ulang jika SAP HANA dihentikan, tetapi sistem operasi tetap berjalan.

Seperti yang dikonfigurasi oleh skrip otomatisasi yang disediakan Google Cloud, setelan sistem operasi dan kernel sudah mendukung Mulai Ulang Cepat SAP HANA. Anda perlu menentukan sistem file tmpfs dan mengonfigurasi SAP HANA.

Untuk menentukan sistem file tmpfs dan mengonfigurasi SAP HANA, Anda dapat mengikuti langkah-langkah manual atau menggunakan skrip otomatisasi yang disediakan Google Cloud untuk mengaktifkan Mulai Ulang Cepat SAP HANA. Untuk mengetahui informasi selengkapnya, lihat:

Untuk mengetahui petunjuk otoritatif lengkap terkait Mulai Ulang Cepat SAP HANA, lihat dokumentasi Opsi Mulai Ulang Cepat SAP HANA.

Langkah manual

Mengonfigurasi sistem file tmpfs

Setelah VM host dan sistem SAP HANA dasar berhasil di-deploy, Anda harus membuat dan memasang direktori untuk node NUMA di sistem file tmpfs.

Menampilkan topologi NUMA VM Anda

Sebelum dapat memetakan sistem file tmpfs yang diperlukan, Anda perlu mengetahui jumlah node NUMA yang dimiliki VM Anda. Untuk menampilkan node NUMA yang tersedia di VM Compute Engine, masukkan perintah berikut:

lscpu | grep NUMA

Misalnya, jenis VM m2-ultramem-208 memiliki empat node NUMA bernomor 0-3, seperti yang ditunjukkan pada contoh berikut:

NUMA node(s):        4
NUMA node0 CPU(s):   0-25,104-129
NUMA node1 CPU(s):   26-51,130-155
NUMA node2 CPU(s):   52-77,156-181
NUMA node3 CPU(s):   78-103,182-207
Membuat direktori node NUMA

Buat direktori untuk setiap node NUMA di VM Anda dan tetapkan izinnya.

Misalnya, untuk empat node NUMA yang bernomor 0-3:

mkdir -pv /hana/tmpfs{0..3}/SID
chown -R SID_LCadm:sapsys /hana/tmpfs*/SID
chmod 777 -R /hana/tmpfs*/SID
Instal direktori node NUMA ke tmpfs

Instal direktori sistem file tmpfs dan tentukan preferensi node NUMA untuk setiap direktori dengan mpol=prefer:

SID menentukan SID dengan huruf besar.

mount tmpfsSID0 -t tmpfs -o mpol=prefer:0 /hana/tmpfs0/SID
mount tmpfsSID1 -t tmpfs -o mpol=prefer:1 /hana/tmpfs1/SID
mount tmpfsSID2 -t tmpfs -o mpol=prefer:2 /hana/tmpfs2/SID
mount tmpfsSID3 -t tmpfs -o mpol=prefer:3 /hana/tmpfs3/SID
Update /etc/fstab

Untuk memastikan direktori pemasangan tersedia setelah sistem operasi dimulai ulang, tambahkan entri ke tabel sistem file, /etc/fstab:

tmpfsSID0 /hana/tmpfs0/SID tmpfs rw,relatime,mpol=prefer:0
tmpfsSID1 /hana/tmpfs1/SID tmpfs rw,relatime,mpol=prefer:1
tmpfsSID1 /hana/tmpfs2/SID tmpfs rw,relatime,mpol=prefer:2
tmpfsSID1 /hana/tmpfs3/SID tmpfs rw,relatime,mpol=prefer:3

Opsional: menetapkan batas penggunaan memori

Sistem file tmpfs dapat bertambah dan mengecil secara dinamis.

Untuk membatasi memori yang digunakan oleh sistem file tmpfs, Anda dapat menetapkan batas ukuran untuk volume node NUMA dengan opsi size. Contoh:

mount tmpfsSID0 -t tmpfs -o mpol=prefer:0,size=250G /hana/tmpfs0/SID

Anda juga dapat membatasi penggunaan memori tmpfs secara keseluruhan untuk semua node NUMA untuk instance SAP HANA tertentu dan node server tertentu, dengan menetapkan parameter persistent_memory_global_allocation_limit di bagian [memorymanager] dari file global.ini.

Mengonfigurasi SAP HANA untuk Mulai Ulang Cepat

Guna mengonfigurasi SAP HANA untuk Fast Restart, update file global.ini dan tentukan tabel yang akan disimpan dalam memori persisten.

Perbarui bagian [persistence] dalam file global.ini

Konfigurasi bagian [persistence] di file global.ini SAP HANA untuk mereferensikan lokasi tmpfs. Pisahkan setiap lokasi tmpfs dengan titik koma:

[persistence]
basepath_datavolumes = /hana/data
basepath_logvolumes = /hana/log
basepath_persistent_memory_volumes = /hana/tmpfs0/SID;/hana/tmpfs1/SID;/hana/tmpfs2/SID;/hana/tmpfs3/SID

Contoh sebelumnya menentukan empat volume memori untuk empat node NUMA, yang sesuai dengan m2-ultramem-208. Jika menjalankan m2-ultramem-416, Anda perlu mengonfigurasi delapan volume memori (0..7).

Mulai ulang SAP HANA setelah mengubah file global.ini.

SAP HANA kini dapat menggunakan lokasi tmpfs sebagai ruang memori persisten.

SAP HANA kini dapat menggunakan lokasi sebagai ruang memori persisten.

Menentukan tabel atau partisi kolom tertentu yang akan disimpan di memori persisten.

Misalnya, untuk mengaktifkan memori persisten pada tabel yang sudah ada, jalankan kueri SQL:

ALTER TABLE exampletable persistent memory ON immediate CASCADE

Guna mengubah default untuk tabel baru, tambahkan parameter table_default dalam file indexserver.ini. Contoh:

[persistent_memory]
table_default = ON

Untuk informasi selengkapnya tentang cara mengontrol kolom, tabel, dan tampilan pemantauan mana yang memberikan informasi mendetail, lihat Memori Persisten SAP HANA.

Langkah otomatis

Skrip otomatisasi yang disediakan Google Cloud untuk mengaktifkan Mulai Ulang Cepat SAP HANA guna membuat perubahan pada direktori /hana/tmpfs*, file /etc/fstab, dan konfigurasi SAP HANA. Saat menjalankan skrip, Anda mungkin perlu melakukan langkah tambahan, bergantung pada apakah ini adalah deployment awal sistem SAP HANA atau Anda mengubah ukuran mesin ke ukuran NUMA yang berbeda.

Untuk deployment awal sistem SAP HANA atau mengubah ukuran mesin guna meningkatkan jumlah node NUMA, pastikan SAP HANA berjalan selama eksekusi skrip otomatisasi yang disediakan Google Cloud untuk mengaktifkan Mulai Ulang Cepat SAP HANA.

Jika Anda mengubah ukuran mesin untuk mengurangi jumlah node NUMA, pastikan SAP HANA dihentikan selama eksekusi skrip otomatisasi yang disediakan Google Cloud untuk mengaktifkan Mulai Ulang Cepat SAP HANA. Setelah skrip dijalankan, Anda harus memperbarui konfigurasi SAP HANA secara manual untuk menyelesaikan penyiapan Mulai Ulang Cepat SAP HANA. Untuk mengetahui informasi selengkapnya, lihat Konfigurasi SAP HANA untuk Mulai Ulang Cepat.

Untuk mengaktifkan Mulai Ulang Cepat SAP HANA, ikuti langkah-langkah berikut:

  1. Buat koneksi SSH dengan VM host Anda.

  2. Beralih ke root:

    sudo su -

  3. Download skrip sap_lib_hdbfr.sh:

    wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/lib/sap_lib_hdbfr.sh
  4. Setel agar file dapat dieksekusi:

    chmod +x sap_lib_hdbfr.sh
  5. Pastikan bahwa skrip tidak memiliki error:

    vi sap_lib_hdbfr.sh
    ./sap_lib_hdbfr.sh -help

    Jika perintah menampilkan error, hubungi Cloud Customer Care. Untuk mengetahui informasi selengkapnya tentang cara menghubungi Layanan Pelanggan, lihat Mendapatkan dukungan untuk SAP di Google Cloud.

  6. Jalankan skrip setelah mengganti ID sistem (SID) dan sandi SAP HANA untuk pengguna SISTEM dari database SAP HANA. Untuk memberikan sandi dengan aman, sebaiknya gunakan secret di Secret Manager.

    Jalankan skrip menggunakan nama secret di Secret Manager. Secret ini harus ada di project Google Cloud yang berisi instance VM host Anda.

    sudo ./sap_lib_hdbfr.sh -h 'SID' -s SECRET_NAME 

    Ganti kode berikut:

    • SID: menentukan SID dengan huruf besar. Contoh, AHA.
    • SECRET_NAME: menentukan nama secret yang sesuai dengan sandi untuk pengguna SISTEM dari database SAP HANA. Secret ini harus ada di project Google Cloud yang berisi instance VM host Anda.

    Atau, Anda dapat menjalankan skrip menggunakan sandi teks biasa. Setelah Mulai Ulang Cepat SAP HANA diaktifkan, pastikan untuk mengubah sandi Anda. Sebaiknya jangan gunakan sandi teks biasa karena sandi Anda akan dicatat dalam histori command line VM Anda.

    sudo ./sap_lib_hdbfr.sh -h 'SID' -p 'PASSWORD'

    Ganti kode berikut:

    • SID: menentukan SID dengan huruf besar. Contoh, AHA.
    • PASSWORD: menentukan sandi untuk pengguna SISTEM dari database SAP HANA.

Agar operasi awal berhasil, Anda akan melihat output yang mirip dengan output berikut ini:

INFO - Script is running in standalone mode
ls: cannot access '/hana/tmpfs*': No such file or directory
INFO - Setting up HANA Fast Restart for system 'TST/00'.
INFO - Number of NUMA nodes is 2
INFO - Number of directories /hana/tmpfs* is 0
INFO - HANA version 2.57
INFO - No directories /hana/tmpfs* exist. Assuming initial setup.
INFO - Creating 2 directories /hana/tmpfs* and mounting them
INFO - Adding /hana/tmpfs* entries to /etc/fstab. Copy is in /etc/fstab.20220625_030839
INFO - Updating the HANA configuration.
INFO - Running command: select * from dummy
DUMMY
"X"
1 row selected (overall time 4124 usec; server time 130 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistence', 'basepath_persistent_memory_volumes') = '/hana/tmpfs0/TST;/hana/tmpfs1/TST;'
0 rows affected (overall time 3570 usec; server time 2239 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('global.ini', 'SYSTEM') SET ('persistent_memory', 'table_unload_action') = 'retain';
0 rows affected (overall time 4308 usec; server time 2441 usec)

INFO - Running command: ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') SET ('persistent_memory', 'table_default') = 'ON';
0 rows affected (overall time 3422 usec; server time 2152 usec)

Langkah otomatis

Untuk mengotomatiskan proses ini, gunakan nodes.txt dan skrip berikut dari Konsol Google Cloud:

  1. Buat file hosts.txt dengan daftar alamat IP dan nama host:

    while read -u10 ZONE HOST ; do gcloud compute instances list --filter="name=( 'NAME' $HOST )" --format="csv[separator=' ',no-heading](networkInterfaces[0].networkIP,name)" >> hosts.txt; done 10< nodes.txt
  2. Pastikan file hosts.txt Anda terlihat seperti contoh berikut:

    10.138.0.1 rhel-hana-primary
    10.138.0.2 rhel-hana-primaryw1
    10.138.0.3 rhel-hana-secondary
    10.138.0.4 rhel-hana-secondaryw1
    10.138.0.5 rhel-sap-mm
    
  3. Pada semua host di cluster, termasuk produsen mayoritas, perbarui file /etc/hosts untuk menyertakan nama host dan alamat IP internal semua instance di cluster Pacemaker.

    while read -u10 ZONE HOST ;  do gcloud compute ssh --tunnel-through-iap --quiet $HOST --zone $ZONE -- "sudo tee -a /etc/hosts" < hosts.txt; done 10< nodes.txt

Mencadangkan database

Buat cadangan database Anda guna memulai logging database untuk replikasi sistem SAP HANA dan membuat titik pemulihan.

Jika Anda memiliki beberapa database tenant di konfigurasi MDC, cadangkan setiap database tenant.

Template Deployment Manager menggunakan /hanabackup/data/SID sebagai direktori pencadangan default.

Untuk membuat cadangan database SAP HANA baru:

  1. Di host utama, alihkan ke SID_LCadm. Bergantung pada image OS Anda, perintahnya mungkin berbeda.

    sudo -i -u SID_LCadm
  2. Buat cadangan database:

    • Untuk sistem container-database tunggal SAP HANA:

      > hdbsql -t -u system -p SYSTEM_PASSWORD -i INST_NUM \
        "backup data using file ('full')"

      Contoh berikut menunjukkan respons yang berhasil dari sistem SAP HANA baru:

      0 rows affected (overall time 18.416058 sec; server time 18.414209 sec)
    • Untuk sistem multi-database-container (MDC) SAP HANA, buat cadangan database sistem serta database tenant:

      > hdbsql -t -d SYSTEMDB -u system -p SYSTEM_PASSWORD -i INST_NUM \
        "backup data using file ('full')"
      > hdbsql -t -d SID -u system -p SYSTEM_PASSWORD -i INST_NUM \
        "backup data using file ('full')"

    Contoh berikut menunjukkan respons yang berhasil dari sistem SAP HANA baru:

    0 rows affected (overall time 16.590498 sec; server time 16.588806 sec)
  3. Pastikan mode logging disetel ke normal:

    > hdbsql -u system -p SYSTEM_PASSWORD -i INST_NUM \
      "select value from "SYS"."M_INIFILE_CONTENTS" where key='log_mode'"

    Anda akan melihat:

    VALUE
    "normal"

Mengaktifkan replikasi sistem SAP HANA

Sebagai bagian dari pengaktifan replikasi sistem SAP HANA, Anda perlu menyalin data dan file kunci untuk penyimpanan aman SAP HANA di sistem file (SSFS) dari host utama ke host sekunder. Metode yang digunakan prosedur ini untuk menyalin file hanyalah salah satu metode yang dapat Anda gunakan.

  1. Pada host utama sesuai SID_LCadm, aktifkan replikasi sistem:

    > hdbnsutil -sr_enable --name=PRIMARY_HOST_NAME
  2. Pada host sekunder:

    1. Sebagai SID_LCadm, hentikan SAP HANA:

      > sapcontrol -nr INST_NUM -function StopSystem
    2. Sebagai root, arsipkan file kunci dan data SSFS yang ada:

      # cd /usr/sap/SID/SYS/global/security/rsecssfs/
      # mv data/SSFS_SID.DAT data/SSFS_SID.DAT-ARC
      # mv key/SSFS_SID.KEY key/SSFS_SID.KEY-ARC
    3. Salin file data dari host utama:

      # scp -o StrictHostKeyChecking=no \
      PRIMARY_HOST_NAME:/usr/sap/SID/SYS/global/security/rsecssfs/data/SSFS_SID.DAT \
      /usr/sap/SID/SYS/global/security/rsecssfs/data/SSFS_SID.DAT
    4. Salin file kunci dari host utama:

      # scp -o StrictHostKeyChecking=no \
      PRIMARY_HOST_NAME:/usr/sap/SID/SYS/global/security/rsecssfs/key/SSFS_SID.KEY \
      /usr/sap/SID/SYS/global/security/rsecssfs/key/SSFS_SID.KEY
    5. Perbarui kepemilikan file:

      # chown SID_LCadm:sapsys /usr/sap/SID/SYS/global/security/rsecssfs/data/SSFS_SID.DAT
      # chown SID_LCadm:sapsys /usr/sap/SID/SYS/global/security/rsecssfs/key/SSFS_SID.KEY
    6. Perbarui izin untuk file:

      # chmod 644 /usr/sap/SID/SYS/global/security/rsecssfs/data/SSFS_SID.DAT
      # chmod 640 /usr/sap/SID/SYS/global/security/rsecssfs/key/SSFS_SID.KEY
    7. Sebagai SID_LCadm, daftarkan sistem SAP HANA sekunder dengan replikasi sistem SAP HANA:

      > hdbnsutil -sr_register --remoteHost=PRIMARY_HOST_NAME --remoteInstance=INST_NUM \
      --replicationMode=syncmem --operationMode=logreplay --name=SECONDARY_HOST_NAME
    8. Sebagai SID_LCadm, mulai SAP HANA:

      > sapcontrol -nr INST_NUM -function StartSystem

Memvalidasi replikasi sistem

Pada host utama sebagai SID_LCadm, konfirmasi bahwa replikasi sistem SAP HANA aktif dengan menjalankan skrip python berikut:

$ python $DIR_INSTANCE/exe/python_support/systemReplicationStatus.py

Jika replikasi disiapkan dengan benar, di antara indikator lainnya, nilai berikut akan ditampilkan untuk layanan xsengine, nameserver, dan indexserver:

  • Secondary Active Status adalah YES.
  • Replication Status adalah ACTIVE.

Selain itu, overall system replication status menampilkan ACTIVE.

Mengaktifkan hook penyedia HA/DR SAP HANA

Red Hat merekomendasikan agar Anda mengaktifkan hook penyedia HA/DR SAP HANA, yang memungkinkan SAP HANA mengirimkan notifikasi untuk peristiwa tertentu dan meningkatkan deteksi kegagalan. Hook penyedia HA/DR SAP HANA memerlukan SAP HANA 2.0 SPS 03 atau versi yang lebih baru.

Di situs utama dan sekunder, selesaikan langkah-langkah berikut:

  1. Sebagai SID_LCadm, hentikan SAP HANA:

    > sapcontrol -nr 00 -function StopSystem

  1. Sebagai root atau SID_LCadm, buka file global.ini untuk mengedit:

    > vi /hana/shared/SID/global/hdb/custom/config/global.ini
  2. Tambahkan definisi berikut ke file global.ini:

    [ha_dr_provider_SAPHanaSR]
    provider = SAPHanaSR
    path = /usr/share/SAPHanaSR-ScaleOut/
    execution_order = 1
    
    [trace]
    ha_dr_saphanasr = info
    

  3. Sebagai root, buat file konfigurasi kustom di direktori /etc/sudoers.d dengan menjalankan perintah berikut. File konfigurasi baru ini memungkinkan pengguna SID_LCadm mengakses atribut node cluster saat metode hook srConnectionChanged() dipanggil.

    > sudo visudo -f /etc/sudoers.d/20-saphana
  4. Di file /etc/sudoers.d/20-saphana, tambahkan teks berikut:

    Ganti SID_LC dengan SID dengan format huruf kecil.

    Cmnd_Alias SOK = /usr/sbin/crm_attribute -n hana_SID_LC_glob_srHook -v SOK -t crm_config -s SAPHanaSR
    Cmnd_Alias SFAIL = /usr/sbin/crm_attribute -n hana_SID_LC_glob_srHook -v SFAIL -t crm_config -s SAPHanaSR
    SID_LCadm ALL=(ALL) NOPASSWD: SOK, SFAIL
    Defaults!SOK, SFAIL !requiretty

  5. Di file /etc/sudoers Anda, pastikan teks berikut disertakan:

    #includedir /etc/sudoers.d

    Perhatikan bahwa # dalam teks ini adalah bagian dari sintaksis dan bukan berarti baris tersebut merupakan komentar.

  6. Sebagai SID_LCadm, mulai SAP HANA:

    > sapcontrol -nr 00 -function StartSystem

  7. Pada host utama sebagai SID_LCadm, uji status yang dilaporkan oleh skrip hook:

    > cdtrace
    > awk '/ha_dr_SAPHanaSR.*crm_attribute/ { printf "%s %s %s %s\n",$2,$3,$5,$16 }' nameserver_*

Mengonfigurasi dukungan failover Cloud Load Balancing

Layanan Load Balancer Jaringan passthrough internal dengan dukungan failover mengarahkan traffic ke host aktif di cluster SAP HANA berdasarkan layanan health check.

Mencadangkan alamat IP untuk IP virtual

Alamat IP virtual (VIP), yang terkadang disebut sebagai alamat IP mengambang, mengikuti sistem SAP HANA yang aktif. Load balancer mengarahkan traffic yang dikirim ke VIP ke VM yang saat ini menghosting sistem SAP HANA yang aktif.

  1. Buka Cloud Shell:

    Buka Cloud Shell

  2. Cadangkan alamat IP untuk IP virtual. Ini adalah alamat IP yang digunakan aplikasi untuk mengakses SAP HANA. Jika Anda mengabaikan flag --addresses, alamat IP dalam subnet tersebut akan dipilih untuk Anda:

    $ gcloud compute addresses create VIP_NAME \
      --region CLUSTER_REGION --subnet CLUSTER_SUBNET \
      --addresses VIP_ADDRESS

    Untuk mengetahui informasi selengkapnya tentang pemesanan IP statis, lihat Memesan alamat IP internal statis.

  3. Konfirmasi reservasi alamat IP:

    $ gcloud compute addresses describe VIP_NAME \
      --region CLUSTER_REGION

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    address: 10.0.0.19
    addressType: INTERNAL
    creationTimestamp: '2020-05-20T14:19:03.109-07:00'
    description: ''
    id: '8961491304398200872'
    kind: compute#address
    name: vip-for-hana-ha
    networkTier: PREMIUM
    purpose: GCE_ENDPOINT
    region: https://www.googleapis.com/compute/v1/projects/example-project-123456/regions/us-central1
    selfLink: https://www.googleapis.com/compute/v1/projects/example-project-123456/regions/us-central1/addresses/vip-for-hana-ha
    status: RESERVED
    subnetwork: https://www.googleapis.com/compute/v1/projects/example-project-123456/regions/us-central1/subnetworks/example-subnet-us-central1

Membuat grup instance untuk VM host

  1. Di Cloud Shell, buat dua grup instance yang tidak dikelola dan tetapkan VM host master utama ke salah satunya, dan VM host master sekunder ke grup lainnya:

    $ gcloud compute instance-groups unmanaged create PRIMARY_IG_NAME \
      --zone=PRIMARY_ZONE
    $ gcloud compute instance-groups unmanaged add-instances PRIMARY_IG_NAME \
      --zone=PRIMARY_ZONE \
      --instances=PRIMARY_HOST_NAME
    $ gcloud compute instance-groups unmanaged create SECONDARY_IG_NAME \
      --zone=SECONDARY_ZONE
    $ gcloud compute instance-groups unmanaged add-instances SECONDARY_IG_NAME \
      --zone=SECONDARY_ZONE \
      --instances=SECONDARY_HOST_NAME
    
  2. Konfirmasi pembuatan grup instance:

    $ gcloud compute instance-groups unmanaged list

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    NAME          ZONE           NETWORK          NETWORK_PROJECT        MANAGED  INSTANCES
    hana-ha-ig-1  us-central1-a  example-network  example-project-123456 No       1
    hana-ha-ig-2  us-central1-c  example-network  example-project-123456 No       1

Membuat health check Compute Engine

  1. Di Cloud Shell, buat health check. Untuk port yang digunakan oleh health check, pilih port yang berada dalam rentang pribadi, 49152-65535, agar tidak bentrok dengan layanan lain. Nilai interval pemeriksaan dan waktu tunggu sedikit lebih panjang daripada nilai default sehingga dapat meningkatkan toleransi failover selama peristiwa migrasi langsung Compute Engine. Anda dapat menyesuaikan nilainya, jika perlu:

    $ gcloud compute health-checks create tcp HEALTH_CHECK_NAME --port=HEALTHCHECK_PORT_NUM \
      --proxy-header=NONE --check-interval=10 --timeout=10 --unhealthy-threshold=2 \
      --healthy-threshold=2
  2. Konfirmasi pembuatan health check:

    $ gcloud compute health-checks describe HEALTH_CHECK_NAME

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    checkIntervalSec: 10
    creationTimestamp: '2020-05-20T21:03:06.924-07:00'
    healthyThreshold: 2
    id: '4963070308818371477'
    kind: compute#healthCheck
    name: hana-health-check
    selfLink: https://www.googleapis.com/compute/v1/projects/example-project-123456/global/healthChecks/hana-health-check
    tcpHealthCheck:
     port: 60000
     portSpecification: USE_FIXED_PORT
     proxyHeader: NONE
    timeoutSec: 10
    type: TCP
    unhealthyThreshold: 2

Membuat aturan firewall untuk health check

Tentukan aturan firewall untuk port dalam rentang pribadi yang mengizinkan akses ke VM host Anda dari rentang IP yang digunakan oleh health check Compute Engine, 35.191.0.0/16 dan 130.211.0.0/22. Untuk mengetahui informasi selengkapnya, lihat Membuat aturan firewall untuk health check.

  1. Jika belum ada, tambahkan tag jaringan ke VM host Anda. Tag jaringan ini digunakan oleh aturan firewall untuk health check.

    $ gcloud compute instances add-tags PRIMARY_HOST_NAME \
      --tags NETWORK_TAGS \
      --zone PRIMARY_ZONE
    $ gcloud compute instances add-tags SECONDARY_HOST_NAME \
      --tags NETWORK_TAGS \
      --zone SECONDARY_ZONE
    
  2. Jika belum ada, buat aturan firewall untuk mengizinkan health check:

    $ gcloud compute firewall-rules create RULE_NAME \
      --network NETWORK_NAME \
      --action ALLOW \
      --direction INGRESS \
      --source-ranges 35.191.0.0/16,130.211.0.0/22 \
      --target-tags NETWORK_TAGS \
      --rules tcp:HLTH_CHK_PORT_NUM

    Contoh:

    gcloud compute firewall-rules create  fw-allow-health-checks \
    --network example-network \
    --action ALLOW \
    --direction INGRESS \
    --source-ranges 35.191.0.0/16,130.211.0.0/22 \
    --target-tags cluster-ntwk-tag \
    --rules tcp:60000

Mengonfigurasi load balancer dan grup failover

  1. Buat layanan backend load balancer:

    $ gcloud compute backend-services create BACKEND_SERVICE_NAME \
      --load-balancing-scheme internal \
      --health-checks HEALTH_CHECK_NAME \
      --no-connection-drain-on-failover \
      --drop-traffic-if-unhealthy \
      --failover-ratio 1.0 \
      --region CLUSTER_REGION \
      --global-health-checks
  2. Tambahkan grup instance utama ke layanan backend:

    $ gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
      --instance-group PRIMARY_IG_NAME \
      --instance-group-zone PRIMARY_ZONE \
      --region CLUSTER_REGION
  3. Tambahkan grup instance failover sekunder ke layanan backend:

    $ gcloud compute backend-services add-backend BACKEND_SERVICE_NAME \
      --instance-group SECONDARY_IG_NAME \
      --instance-group-zone SECONDARY_ZONE \
      --failover \
      --region CLUSTER_REGION
  4. Membuat aturan penerusan. Untuk alamat IP, tentukan alamat IP yang Anda reservasi untuk VIP. Jika Anda perlu mengakses sistem SAP HANA dari luar region yang ditentukan di bawah, sertakan flag --allow-global-access dalam definisi:

    $ gcloud compute forwarding-rules create RULE_NAME \
      --load-balancing-scheme internal \
      --address VIP_ADDRESS \
      --subnet CLUSTER_SUBNET \
      --region CLUSTER_REGION \
      --backend-service BACKEND_SERVICE_NAME \
      --ports ALL

    Untuk mengetahui informasi selengkapnya tentang akses lintas region ke sistem ketersediaan tinggi SAP HANA, lihat Load Balancing TCP/UDP Internal.

Menguji konfigurasi load balancer

Meskipun grup backend instance Anda tidak akan dianggap berfungsi dengan baik hingga nanti, Anda dapat menguji konfigurasi load balancer dengan menyiapkan pemroses untuk merespons health check. Setelah menyiapkan pemroses, jika load balancer dikonfigurasi dengan benar, status grup backend instance akan berubah menjadi berfungsi dengan baik.

Bagian berikut menyajikan berbagai metode yang dapat Anda gunakan untuk menguji konfigurasi.

Menguji load balancer dengan utilitas socat

Anda dapat menggunakan utilitas socat untuk memproses sementara port health check.

  1. Pada VM host master primer dan sekunder, instal utilitas socat:

    $ sudo yum install -y socat

  2. Mulai proses socat untuk memproses selama 60 detik di port health check:

    $ sudo timeout 60s socat - TCP-LISTEN:HLTH_CHK_PORT_NUM,fork

  3. Di Cloud Shell, setelah menunggu beberapa detik hingga health check mendeteksi pemroses, periksa kondisi grup backend instance Anda:

    $ gcloud compute backend-services get-health BACKEND_SERVICE_NAME \
      --region CLUSTER_REGION

    Anda akan melihat output yang mirip dengan berikut ini:

    ---
    backend: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-a/instanceGroups/hana-ha-ig-1
    status:
     healthStatus:
     ‐ healthState: HEALTHY
       instance: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-a/instances/hana-ha-vm-1
       ipAddress: 10.0.0.35
       port: 80
     kind: compute#backendServiceGroupHealth
    ---
    backend: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-c/instanceGroups/hana-ha-ig-2
    status:
     healthStatus:
     ‐ healthState: HEALTHY
       instance: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-c/instances/hana-ha-vm-2
       ipAddress: 10.0.0.34
       port: 80
     kind: compute#backendServiceGroupHealth

Menguji load balancer menggunakan port 22

Jika port 22 terbuka untuk koneksi SSH pada VM host, Anda dapat mengedit sementara health checker agar menggunakan port 22, yang memiliki pemroses untuk merespons health checker.

Agar dapat menggunakan port 22 untuk sementara, ikuti langkah-langkah berikut:

  1. Klik health check di konsol:

    Buka halaman Health check

  2. Klik Edit.

  3. Di kolom Port, ubah nomor port menjadi 22.

  4. Klik Save dan tunggu satu atau dua menit.

  5. Di Cloud Shell, periksa kondisi grup backend instance Anda:

    $ gcloud compute backend-services get-health BACKEND_SERVICE_NAME \
      --region CLUSTER_REGION

    Anda akan melihat output yang mirip dengan berikut ini:

    ---
    backend: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-a/instanceGroups/hana-ha-ig-1
    status:
     healthStatus:
     ‐ healthState: HEALTHY
       instance: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-a/instances/hana-ha-vm-1
       ipAddress: 10.0.0.35
       port: 80
     kind: compute#backendServiceGroupHealth
    ---
    backend: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-c/instanceGroups/hana-ha-ig-2
    status:
     healthStatus:
     ‐ healthState: HEALTHY
       instance: https://www.googleapis.com/compute/v1/projects/example-project-123456/zones/us-central1-c/instances/hana-ha-vm-2
       ipAddress: 10.0.0.34
       port: 80
     kind: compute#backendServiceGroupHealth
  6. Setelah selesai, ubah nomor port health check kembali ke nomor port asli.

Menyiapkan Pacemaker

Prosedur berikut mengonfigurasi implementasi Red Hat dari cluster Pacemaker di VM Compute Engine untuk SAP HANA.

Prosedur ini didasarkan pada dokumentasi Red Hat untuk mengonfigurasi cluster dengan ketersediaan tinggi, termasuk (langganan Red Hat diperlukan):

Langkah manual

Selesaikan langkah-langkah berikut di semua host. Pada image RHEL-for-SAP yang disediakan Google, beberapa paket sudah diinstal, tetapi diperlukan beberapa modifikasi tambahan.

  1. Sebagai root, hapus agen resource SAP HANA Scale-Up yang sudah diinstal sebelumnya pada image:

    # yum -y remove resource-agents-sap-hana
  2. Instal Alat Pacemaker dan agen resource yang tidak ada:

    # yum -y install pcs pacemaker fence-agents-gce resource-agents-gcp resource-agents-sap-hana-scaleout

  3. Mengupdate paket ke versi terbaru:

    # pembaruan yum -y

  4. Setel sandi untuk pengguna hacluster yang dibuat sebagai bagian dari paket:

    # passwd hacluster
  5. Tentukan sandi untuk hacluster saat diminta.

  6. Pada image RHEL-for-SAP yang disediakan oleh Google Cloud, layanan firewall OS aktif secara default. Konfigurasi layanan firewall untuk mengizinkan traffic ketersediaan tinggi:

    # firewall-cmd --permanent --add-service=high-availability
    # firewall-cmd --reload
  7. Mulai layanan pcs dan setel konfigurasi agar dimulai pada waktu booting:

    # systemctl start pcsd.service
    # systemctl enable pcsd.service
  8. Periksa status layanan pcs:

    # systemctl status pcsd.service

    Anda akan melihat output yang mirip dengan berikut ini:

    ● pcsd.service - PCS GUI and remote configuration interface
      Loaded: loaded (/usr/lib/systemd/system/pcsd.service; enabled; vendor preset: disabled)
      Active: active (running) since Sat 2020-06-13 21:17:05 UTC; 25s ago
        Docs: man:pcsd(8)
              man:pcs(8)
    Main PID: 31627 (pcsd)
      CGroup: /system.slice/pcsd.service
              └─31627 /usr/bin/ruby /usr/lib/pcsd/pcsd
    Jun 13 21:17:03 hana-ha-1 systemd[1]: Starting PCS GUI and remote configuration interface...
    Jun 13 21:17:05 hana-ha-1 systemd[1]: Started PCS GUI and remote configuration interface.

Langkah otomatis

Untuk mengotomatiskan proses ini, Anda dapat menggunakan nodes.txt dan skrip berikut dari Konsol Google Cloud.

Pada perintah, masukkan sandi yang akan digunakan oleh pengguna hacluster yang dibuat saat menginstal agen resource Alat Pacemaker.

echo "Set password for hacluster user:"; read -r HA_PASSWD; while read -u10 HOST ;  do gcloud compute ssh --tunnel-through-iap --quiet --zone $HOST -- "sudo yum -y remove resource-agents-sap-hana; sudo yum -y install pcs pacemaker fence-agents-gce resource-agents-sap-hana-scaleout resource-agents-gcp; sudo yum update -y; sudo firewall-cmd --permanent --add-service=high-availability; sudo firewall-cmd --reload; sudo systemctl start pcsd.service; sudo systemctl enable pcsd.service; yes $HA_PASSWD | sudo passwd hacluster"; done 10< nodes.txt

Memperbarui file /etc/hosts

Pada semua host di cluster, termasuk produsen mayoritas, perbarui file /etc/hosts untuk menyertakan nama host dan alamat IP internal semua instance di cluster Pacemaker.

Output file /etc/hosts akan terlihat seperti contoh di bawah ini:

127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1                localhost localhost.localdomain localhost6 localhost6.localdomain6
10.138.0.1 rhel-hana-primary.us-west1-a.c.project-name.internal rhel-hana-primary # Added by Google
169.254.169.254 metadata.google.internal # Added by Google
10.138.0.1 rhel-hana-primary
10.138.0.2 rhel-hana-primaryw1
10.138.0.3 rhel-hana-secondary
10.138.0.4 rhel-hana-secondaryw1
10.138.0.5 rhel-sap-mm

Untuk mengetahui informasi selengkapnya dari Red Hat tentang menyiapkan file /etc/hosts pada node cluster RHEL, lihat https://access.redhat.com/solutions/81123

Membuat cluster

  1. Sebagai root di host master utama, izinkan pengguna hacluster. Penting untuk menyertakan setiap host cluster dalam perintah ini, yang harus menjadi bagian dari cluster.

    RHEL 8.0 dan yang lebih baru

    pcs host auth primary-master-name primary-worker-name(s) secondary-master-name secondary-worker-name(s) majority-maker-name
    

    RHEL 7.6 dan yang lebih baru

    pcs cluster auth primary-master-name primary-worker-name(s) secondary-master-name secondary-worker-name(s) majority-maker-name
    
  2. Pada perintah, masukkan nama pengguna hacluster dan sandi yang Anda tetapkan untuk pengguna hacluster di bagian sebelumnya.

  3. Setel cluster ke mode pemeliharaan.

    pcs property set maintenance-mode=true
  4. Buat dan sinkronkan konfigurasi corosync.

    RHEL 8.0 dan yang lebih baru

    pcs cluster setup scale_out_hsr primary-master-name primary-worker-name(s) secondary-master-name secondary-worker-name(s) majority-maker-name

    RHEL 7.6 dan yang lebih baru

    pcs cluster setup --start --name hanascaleoutsr primary-master-name primary-worker-name(s) secondary-master-name secondary-worker-name(s) majority-maker-name

Mengedit setelan default corosync.conf

  1. Buka file /etc/corosync/corosync.conf menggunakan editor pilihan Anda.

  2. Hapus parameter consensus.

  3. Ubah parameter lainnya sesuai dengan rekomendasi Google Cloud.

    Tabel berikut menunjukkan parameter totem yang nilainya direkomendasikan oleh Google Cloud, beserta dampak dari perubahan nilai tersebut. Untuk nilai default parameter ini, yang dapat berbeda di antara distribusi Linux, lihat dokumentasi untuk distribusi Linux Anda.
    Parameter Nilai yang direkomendasikan Dampak perubahan nilai
    secauth off Menonaktifkan autentikasi dan enkripsi untuk semua pesan totem.
    join 60 (md) Meningkatkan durasi tunggu node untuk pesan join dalam protokol keanggotaan.
    max_messages 20 Meningkatkan jumlah maksimum pesan yang mungkin dikirim oleh node setelah menerima token.
    token 20000 (md)

    Meningkatkan waktu tunggu node protokol totem sebelum node mendeklarasikan hilangnya token, mengasumsikan kegagalan node, dan mulai mengambil tindakan.

    Meningkatkan nilai parameter token membuat cluster lebih toleran terhadap peristiwa infrastruktur sesaat, seperti migrasi langsung. Namun, hal ini juga dapat membuat cluster memerlukan waktu lebih lama untuk mendeteksi dan pulih dari kegagalan node.

    Nilai parameter token juga menentukan nilai default parameter consensus, yang mengontrol durasi tunggu node konsensus dicapai sebelum mencoba untuk membangun kembali konfigurasi keanggotaan.

    consensus T/A

    Menentukan, dalam milidetik, waktu tunggu hingga konsensus tercapai sebelum memulai tahap baru konfigurasi keanggotaan.

    Sebaiknya hapus parameter ini. Jika parameter consensus tidak ditentukan, Corosync akan menetapkan nilainya ke 1,2 kali nilai parameter token. Jika Anda menggunakan nilai yang direkomendasikan oleh parameter token, yaitu 20000, maka parameter consesus akan ditetapkan dengan nilai 24000.

    Jika Anda menentukan nilai untuk consensus secara eksplisit, pastikan nilainya adalah 24000 atau 1.2*token, mana saja yang lebih besar.

    token_retransmits_before_loss_const 10 Meningkatkan jumlah token yang ditransmisikan ulang oleh node sebelum menyimpulkan bahwa node penerima gagal dan mengambil tindakan.
    transport
    • Untuk SLES: udpu
    • Untuk RHEL 8 atau yang lebih baru: knet
    • Untuk RHEL 7: udpu
    Menentukan mekanisme transpor yang digunakan oleh corosync.
  4. Dari host yang berisi file corosync.conf yang diedit, sinkronkan konfigurasi corosync di seluruh cluster:

    RHEL 8 dan yang lebih baru

    # pcs cluster sync corosync

    RHEL 7

    # pcs cluster sync
  5. Setel cluster agar dimulai secara otomatis:

    # pcs cluster enable --all
    # pcs cluster start --all
  6. Pastikan setelan corosync baru aktif di cluster dengan menggunakan utilitas corosync-cmapctl:

    # corosync-cmapctl

Menetapkan penundaan untuk memulai ulang Corosync

Langkah manual

  1. Di semua host sebagai root, buat file drop-in systemd yang menunda startup Corosync untuk memastikan urutan peristiwa yang tepat setelah VM dengan pagar dimulai ulang:

    systemctl edit corosync.service
  2. Tambahkan baris berikut ke file:

    [Service]
    ExecStartPre=/bin/sleep 60
  3. Simpan file dan keluar dari editor.

  4. Muat ulang konfigurasi pengelola sistem.

    systemctl daemon-reload
  5. Pastikan bahwa file drop-in telah dibuat:

    service corosync status

    Anda semestinya akan melihat baris untuk file drop-in, seperti yang ditunjukkan pada contoh berikut:

    ● corosync.service - Corosync Cluster Engine
       Loaded: loaded (/usr/lib/systemd/system/corosync.service; disabled; vendor preset: disabled)
      Drop-In: /etc/systemd/system/corosync.service.d
               └─override.conf
       Active: active (running) since Tue 2021-07-20 23:45:52 UTC; 2 days ago

Langkah otomatis

Atau, untuk mengotomatiskan proses ini bagi semua instance yang tercantum di nodes.txt, jalankan skrip berikut dari Konsol Google Cloud:

while read -u10 HOST;  do gcloud compute ssh --tunnel-through-iap --quiet --zone $HOST   --  "sudo mkdir -p /etc/systemd/system/corosync.service.d/; sudo echo -e '[Service]\nExecStartPre=/bin/sleep 60' | sudo tee -a /etc/systemd/system/corosync.service.d/override.conf; sudo systemctl daemon-reload"; done 10< nodes.txt

Menyiapkan pagar

Image RHEL yang disediakan Google Cloud menyertakan agen anggar bernama fence_gce, yang dikhususkan untuk Google Cloud. Anda menggunakan fence_gce untuk membuat perangkat pagar untuk setiap VM host.

Untuk memastikan bahwa urutan peristiwa yang benar terjadi setelah tindakan fence, Anda harus mengonfigurasi sistem operasi untuk menunda mulai ulang Corosync setelah VM di-fence. Anda juga harus menyesuaikan waktu tunggu Alat pacu jantung untuk memulai ulang guna memperhitungkan penundaan.

Untuk melihat semua opsi yang tersedia dengan agen anggar fence_gce, jalankan fence_gce -h.

Langkah manual

  1. Di host utama, sebagai pengguna root, buat perangkat anggar untuk semua host, termasuk produsen mayoritas:

    pcs stonith create STONITH-host-name fence_gce \
    port=host-name \
    zone=host-zone \
    project=project-id \
    pcmk_host_list=host-name pcmk_reboot_timeout=300 pcmk_monitor_retries=4 \
    op monitor interval="300s" timeout="120s" \
    op start interval="0" timeout="60s"
  2. Tetapkan batasan lokasi untuk perangkat pagar:

    pcs constraint location STONITH-host-name avoids host-name

  3. Ulangi dua langkah sebelumnya untuk semua host lain pada cluster utama dan sekunder, serta host produsen mayoritas, dengan memasukkan nilai yang sesuai untuk variabel host-name dan host-zone.

Langkah otomatis

Untuk mengotomatiskan proses ini, Anda harus menggunakan file nodes.txt dan skrip berikut dari Konsol Google Cloud:

while read -u10 ZONE HOST; do gcloud compute ssh $HOST --tunnel-through-iap --quiet --zone $ZONE -- "sudo pcs stonith create STONITH-$HOST fence_gce project=project-id port=$HOST zone=$ZONE pcmk_host_list=$HOST pcmk_reboot_timeout=300 pcmk_monitor_retries=4 op monitor interval=300s timeout=120s op start interval=0 timeout=60s && sudo pcs constraint location STONITH-$HOST avoids $HOST"; done 10< nodes.txt

Menetapkan setelan default cluster

Siapkan batas migrasi dan kelekatan untuk menentukan jumlah failover pada upaya yang dilakukan sebelum gagal, dan untuk menetapkan sistem agar mencoba memulai ulang pada host saat ini terlebih dahulu. Langkah ini hanya perlu ditetapkan pada satu node agar berlaku seluruh cluster.

  1. Sebagai root dari host mana pun, setel default resource:

    RHEL 8.0 dan yang lebih baru

    # pcs resource defaults update resource-stickiness=1000
    # pcs resource defaults update migration-threshold=5000

    RHEL 7.6 dan yang lebih baru

    # pcs resource defaults resource-stickiness=1000
    # pcs resource defaults migration-threshold=5000

    Properti resource-stickiness mengontrol seberapa besar kemungkinan layanan akan tetap berjalan di tempatnya. Nilai yang lebih tinggi membuat layanan lebih melekat. Nilai 1000 berarti layanan tersebut sangat melekat.

    Properti migration-threshold menentukan jumlah kegagalan yang harus terjadi sebelum layanan beralih ke host lain. Nilai 5000 sudah cukup tinggi untuk mencegah failover saat terjadi situasi error yang lebih singkat.

    Anda dapat memeriksa default resource dengan memasukkan pcs resource defaults.

  2. Tetapkan setelan default waktu tunggu operasi resource:

    RHEL 8.0 dan yang lebih baru

    # pcs resource op defaults update timeout=600s

    RHEL 7.6 dan yang lebih baru

    # pcs resource op defaults timeout=600s

    Anda dapat memeriksa default pengoperasian resource dengan memasukkan pcs resource op defaults.

  3. Tetapkan properti cluster di bawah ini:

    # pcs property set stonith-enabled="true"
    # pcs property set stonith-timeout="300s"
    

    Anda dapat memeriksa setelan properti dengan pcs property list.

Membuat resource SAPHanaTopology

Resource SAPHanaTopology mendapatkan status dan konfigurasi Replikasi Sistem HANA pada node. Perintah ini juga memeriksa agen host SAP.

  1. Sebagai root pada salah satu host, buat resource SAPHanaTopology:

    RHEL 8.0 dan yang lebih baru

    # pcs resource create rsc_SAPHanaTopology_SID_HDBinstNr SAPHanaTopology SID=SID \
    InstanceNumber=inst_num \
    op methods interval=0s timeout=5 \
    op monitor interval=10 timeout=600 \
    clone meta clone-node-max=1 interleave=true

    RHEL 7.6 dan yang lebih baru

    # pcs resource create rsc_SAPHanaTopology_SID_HDBinstNr SAPHanaTopologyScaleOut SID=SID \
    InstanceNumber=inst_num \
    op start timeout=600 \
    op stop timeout=300 \
    op monitor interval=10 timeout=600
    # pcs resource clone  rsc_SAPHanaTopology_SID_HDBinstNr meta clone-node-max=1 interleave=true
  2. Setelah resource dibuat, periksa konfigurasi. Tambahkan -clone ke nama resource untuk menyertakan informasi kumpulan clone dalam respons.

    RHEL 8.0 dan yang lebih baru

    # pcs resource config rsc_SAPHanaTopology_SID_HDBinstNr-clone

    Anda akan melihat output yang mirip dengan berikut ini:

    Clone: SAPHanaTopology_HA1_00-clone
    Meta Attrs: clone-node-max=1 interleave=true
    Resource: SAPHanaTopology_HA1_00 (class=ocf provider=heartbeat type=SAPHanaTopology)
    Attributes: InstanceNumber=00 SID=HA1
    Operations: methods interval=0s timeout=5 (SAPHanaTopology_HA1_00-methods-interval-0s)
           monitor interval=10 timeout=600 (SAPHanaTopology_HA1_00-monitor-interval-10)
           start interval=0s timeout=600 (SAPHanaTopology_HA1_00-start-interval-0s)
           stop interval=0s timeout=300 (SAPHanaTopology_HA1_00-stop-interval-0s)

    RHEL 7.6 dan yang lebih baru

    # pcs resource show rsc_SAPHanaTopology_SID_HDBinstNr-clone

    Anda akan melihat output yang mirip dengan berikut ini:

    Clone: rsc_SAPHanaTopology_HA1_HDB00-clone
    Meta Attrs: clone-node-max=1 interleave=true
    Resource: rsc_SAPHanaTopology_HA1_HDB00 (class=ocf provider=heartbeat type=SAPHanaTopologyScaleOut)
    Attributes: InstanceNumber=00 SID=HA1
    Meta Attrs: clone-node-max=1 interleave=true
    Operations: methods interval=0s timeout=5 (rsc_SAPHanaTopology_HA1_HDB00-methods-interval-0s)
           monitor interval=10 timeout=600 (rsc_SAPHanaTopology_HA1_HDB00-monitor-interval-10)
           start interval=0s timeout=600 (rsc_SAPHanaTopology_HA1_HDB00-start-interval-0s)
           stop interval=0s timeout=300 (rsc_SAPHanaTopology_HA1_HDB00-stop-interval-0s)

Anda juga dapat memeriksa atribut cluster dengan menggunakan perintah crm_mon -A1.

Membuat resource SAPHanaController

Agen resource SAPHanaController mengelola database yang dikonfigurasi untuk replikasi sistem SAP HANA.

Parameter dalam definisi resource SAPHana berikut bersifat opsional:

  • AUTOMATED_REGISTER, yang jika ditetapkan ke true, akan otomatis mendaftarkan data primer sebelumnya sebagai sekunder saat DUPLICATE_PRIMARY_TIMEOUT berakhir setelah pengambilalihan. Defaultnya adalah false.

    Untuk cluster SAP HANA HA multi-tingkat, jika Anda menggunakan versi yang lebih lama dari SAP HANA 2.0 SP03, tetapkan AUTOMATED_REGISTER ke false. Hal ini mencegah instance yang dipulihkan mencoba mendaftar secara mandiri untuk replikasi ke sistem HANA yang telah memiliki target replikasi yang telah dikonfigurasi. Untuk SAP HANA 2.0 SP03 atau yang lebih baru, Anda dapat menetapkan AUTOMATED_REGISTER ke true untuk konfigurasi SAP HANA yang menggunakan replikasi sistem multitingkat.

  • DUPLICATE_PRIMARY_TIMEOUT, yang menetapkan perbedaan waktu dalam detik antara dua stempel waktu utama jika terjadi situasi ganda. Defaultnya adalah 7200.

  • PREFER_SITE_TAKEOVER, yang menentukan apakah mulai ulang lokal dicoba sebelum failover dimulai. Defaultnya adalah false.

Untuk informasi tambahan tentang parameter ini, lihat Menginstal dan Mengonfigurasi Cluster Ketersediaan Tinggi Red Hat Enterprise Linux 7.6 (dan yang lebih baru) di Google Cloud. Perlu langganan Red Hat.

  1. Sebagai root di salah satu host, buat resource SAPHanaController:

    RHEL 8.0 dan yang lebih baru

    # pcs resource create rsc_SAPHana_SID_HDBinstNr SAPHanaController SID=SID \
    InstanceNumber=inst_num \
    PREFER_SITE_TAKEOVER=true DUPLICATE_PRIMARY_TIMEOUT=7200 AUTOMATED_REGISTER=true \
    op demote interval=0s timeout=320 \
    op methods interval=0s timeout=5 \
    op monitor interval=59 \
    role="Master" timeout=700 \
    op monitor interval=61 \
    role="Slave" timeout=700 \
    op promote interval=0 timeout=3600 \
    op start interval=0 timeout=3600 \
    op stop interval=0 timeout=3600e
    # pcs resource promotable rsc_SAPHana_SID_HDBinstNr meta master-max="1" clone-node-max=1 interleave=true

    RHEL 7.6 dan yang lebih baru

    # pcs resource create rsc_SAPHana_SID_HDBinstNr SAPHanaController SID=SID \
    InstanceNumber=inst_num \
    PREFER_SITE_TAKEOVER=true DUPLICATE_PRIMARY_TIMEOUT=7200 AUTOMATED_REGISTER=true \
    op start interval=0 timeout=3600 \
    op stop interval=0 timeout=3600 \
    op promote interval=0 timeout=3600 \
    op monitor interval=60 \
    role="Master" timeout=700 \
    op monitor interval=61 \
    role="Slave" timeout=700
    # pcs resource master msl_rsc_SAPHana_SID_HDBinstNr rsc_SAPHana_SID_HDBinstNr master-max="1" clone-node-max=1 interleave=true
  2. Periksa atribut resource yang dihasilkan:

    RHEL 8.0 dan yang lebih baru

    # pcs resource config rsc_SAPHana_SID_HDBinstNr-clone

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    Resource: SAPHana_HA1_00 (class=ocf provider=heartbeat type=SAPHanaController)
    Attributes: AUTOMATED_REGISTER=true DUPLICATE_PRIMARY_TIMEOUT=7200 InstanceNumber=00 PREFER_SITE_TAKEOVER=true SID=HA1
    Operations: demote interval=0s timeout=320 (SAPHana_HA1_00-demote-interval-0s)
          methods interval=0s timeout=5 (SAPHana_HA1_00-methods-interval-0s)
          monitor interval=59 role=Master timeout=700 (SAPHana_HA1_00-monitor-interval-59)
          promote interval=0 timeout=3600 (SAPHana_HA1_00-promote-interval-0)
          reload interval=0s timeout=5 (SAPHana_HA1_00-reload-interval-0s)
          start interval=0 timeout=3600 (SAPHana_HA1_00-start-interval-0)
          stop interval=0 timeout=3600 (SAPHana_HA1_00-stop-interval-0)
          monitor interval=61 role=Slave timeout=700 (SAPHana_HA1_00-monitor-interval-61)

    RHEL 7.6 dan yang lebih baru

    # pcs resource show msl_rsc_SAPHana_SID_HDBinstNr

    Anda akan melihat output yang mirip dengan contoh berikut ini:

    Master: msl_rsc_SAPHana_HA1_HDB00
    Meta Attrs: clone-node-max=1 interleave=true master-max=1
    Resource: rsc_SAPHana_HA1_HDB00 (class=ocf provider=heartbeat type=SAPHanaController)
    Attributes: AUTOMATED_REGISTER=true DUPLICATE_PRIMARY_TIMEOUT=7200 InstanceNumber=00 PREFER_SITE_TAKEOVER=true SID=HA1
    Operations: demote interval=0s timeout=320 (rsc_SAPHana_HA1_HDB00-demote-interval-0s)
           methods interval=0s timeout=5 (rsc_SAPHana_HA1_HDB00-methods-interval-0s)
           monitor interval=60 role=Master timeout=700 (rsc_SAPHana_HA1_HDB00-monitor-interval-60)
           monitor interval=61 role=Slave timeout=700 (rsc_SAPHana_HA1_HDB00-monitor-interval-61)
           promote interval=0 timeout=3600 (rsc_SAPHana_HA1_HDB00-promote-interval-0)
           start interval=0 timeout=3600 (rsc_SAPHana_HA1_HDB00-start-interval-0)
           stop interval=0 timeout=3600 (rsc_SAPHana_HA1_HDB00-stop-interval-0)

Membuat resource alamat IP virtual

Anda perlu membuat resource cluster untuk VIP. Resource VIP dilokalkan ke sistem operasi utama dan tidak dapat dirutekan oleh host lain. Load balancer merutekan traffic yang dikirim ke VIP, lalu ke host backend berdasarkan health check.

Sebagai root pada salah satu host:

# pcs resource create rsc_ip_SAPHANA_SID_HDBinstNr \
  IPaddr2 ip="vip-address" nic=eth0 cidr_netmask=32 \
  op monitor interval=3600s timeout=60s

Nilai vip-address adalah alamat IP yang sama dengan yang Anda cadangkan sebelumnya dan ditentukan dalam aturan penerusan untuk frontend load balancer Anda. Ubah antarmuka jaringan sesuai konfigurasi Anda.

Membuat batasan

Anda membuat batasan untuk menentukan layanan mana yang harus dimulai terlebih dahulu, dan layanan mana yang perlu dijalankan bersama pada host yang sama.

  1. Tentukan batasan urutan awal:

    RHEL 8.0 dan yang lebih baru

    # pcs constraint order start rsc_SAPHanaTopology_SID_HDBinstNr-clone then start rsc_SAPHana_SID_HDBinstNr-clone

    RHEL 7.6

    # pcs constraint order rsc_SAPHanaTopology_SID_HDBinstNr-clone then rsc_SAPHana_SID_HDBinstNr-master

  2. Konfigurasi mayoritas agar tidak mengambil peran aktif di lingkungan cluster:

    RHEL 8.0 dan yang lebih baru

    # pcs constraint location rsc_SAPHana_SID_HDBinstNr-clone avoids majority-maker-name
    
    # pcs constraint location rsc_SAPHanaTopology_SID_HDBinstNr-clone avoids majoritymaker

    RHEL 7.6

    # pcs constraint location msl_rsc_SAPHana_SID_HDBinstNr avoids majoritymaker
    
    # pcs constraint location rsc_SAPHanaTopology_SID_HDBinstNr-clone avoids majoritymaker
  3. Periksa batasan:

    # pcs constraint

    Anda akan melihat output yang mirip dengan berikut ini:

    Location Constraints:
    Resource: STONITH-hana-ha-1
      Disabled on: hana-ha-1 (score:-INFINITY)
    Resource: STONITH-hana-ha-1w1
      Disabled on: hana-ha-1w1 (score:-INFINITY)
    Resource: STONITH-hana-ha-2
      Disabled on: hana-ha-2 (score:-INFINITY)
    Resource: STONITH-hana-ha-2w1
      Disabled on: hana-ha-2w1 (score:-INFINITY)
    Resource: STONITH-majority-maker
      Disabled on: majority-maker (score:-INFINITY)
    Resource: rsc_SAPHanaTopology_HA1_HDB00-clone
      Disabled on: majority-maker (score:-INFINITY)
    Resource: rsc_SAPHana_HA1_HDB00-master
      Disabled on: majority-maker (score:-INFINITY)
    Ordering Constraints:
      start rsc_SAPHanaTopology_HA1_HDB00-clone then start rsc_SAPHana_HA1_HDB00-master (kind:Mandatory)

Menginstal pemroses dan membuat resource health check

Untuk mengonfigurasi resource health check, Anda harus menginstal pemroses terlebih dahulu.

Menginstal pemroses

Load balancer menggunakan pemroses pada port health check setiap host untuk menentukan tempat instance utama cluster SAP HANA berjalan. 1. Sebagai root pada instance master di sistem utama dan sekunder, instal pemroses TCP. Petunjuk ini menginstal dan menggunakan HAProxy sebagai pemroses.

# yum install haproxy

  1. Buka file konfigurasi haproxy.cfg untuk mengedit:

    # vi /etc/haproxy/haproxy.cfg
    1. Di bagian defaults pada haproxy.cfg, ubah mode menjadi tcp.

    2. Setelah bagian defaults, buat bagian baru dengan menambahkan:

      #---------------------------------------------------------------------
      # Health check listener port for SAP HANA HA cluster
      #---------------------------------------------------------------------
      listen healthcheck
        bind *:healthcheck-port-num

      Port bind adalah port yang sama dengan yang Anda gunakan saat membuat health check.

      Setelah selesai, update yang Anda lakukan akan terlihat seperti contoh berikut:

      #---------------------------------------------------------------------
      # common defaults that all the 'listen' and 'backend' sections will
      # use if not designated in their block
      #---------------------------------------------------------------------
      defaults
        mode                    tcp
        log                     global
        option                  tcplog
        option                  dontlognull
        option http-server-close
        # option forwardfor       except 127.0.0.0/8
        option                  redispatch
        retries                 3
        timeout http-request    10s
        timeout queue           1m
        timeout connect         10s
        timeout client          1m
        timeout server          1m
        timeout http-keep-alive 10s
        timeout check           10s
        maxconn                 3000
      
      #---------------------------------------------------------------------
      # Set up health check listener for SAP HANA HA cluster
      #---------------------------------------------------------------------
      listen healthcheck
       bind *:60000
  2. Pada setiap host sebagai root, mulai layanan untuk mengonfirmasi bahwa konfigurasinya sudah benar:

    # systemctl start haproxy.service
  3. Pada halaman Load balancer di Konsol Google Cloud, klik entri load balancer Anda:

    Halaman load balancing

    Di bagian Backend pada halaman Load balancer details, jika layanan HAProxy aktif di kedua host, Anda akan melihat 1/1 di kolom Healthy dari setiap entri grup instance.

    Screenshot menampilkan `1/1` di kolom Healthy pada kedua grup instance, yang menunjukkan bahwa keduanya responsif.

  4. Pada setiap host, hentikan layanan HAProxy:

    # systemctl stop haproxy.service

    Setelah Anda menghentikan layanan HAProxy di setiap host, 0/1 akan ditampilkan di kolom Healthy dari setiap grup instance.

    Screenshot menampilkan `0/1` di kolom Healthy pada setiap grup instance, yang menunjukkan bahwa tidak ada pemroses aktif.

    Kemudian, saat health check dikonfigurasi, cluster akan memulai ulang pemroses di node master.

Membuat resource health check

  1. Dari host apa pun sebagai root, buat resource health check untuk layanan HAProxy:

    # pcs resource create hc_SID_HDBinstNr service:haproxy op monitor interval=10s timeout=20s
  2. Kelompokkan resource VIP dan health check:

    # pcs resource group add rsc-group-name hc_SID_HDBinstNr rsc_ip_SAPHANA_SID_HDBinstNr
  3. Buat batasan yang menempatkan grup pada node yang sama dengan instance SAP HANA master.

    RHEL 8.0 dan yang lebih baru

    # pcs constraint colocation add rsc-group-name with master rsc_SAPHana_SID_HDBinstNr-clone

    RHEL 7.6 dan yang lebih baru

    # pcs constraint colocation add rsc-group-name with master msl_rsc_SAPHana_SID_HDBinstNr
  4. Buat batasan pesanan untuk memulai grup hanya setelah HANA dipromosikan:

    # pcs constraint order promote rsc_SAPHana_SID_HDBinstNr-clone then start rsc-group-name

    Batasan akhir Anda akan terlihat seperti contoh berikut:

    # pcs constraint
    
    Location Constraints:
    Resource: STONITH-hana-ha-1
     Disabled on: hana-ha-1 (score:-INFINITY)
    Resource: STONITH-hana-ha-1w1
     Disabled on: hana-ha-1w1 (score:-INFINITY)
    Resource: STONITH-hana-ha-2
     Disabled on: hana-ha-2 (score:-INFINITY)
    Resource: STONITH-hana-ha-2w1
     Disabled on: hana-ha-2w1 (score:-INFINITY)
    Resource: STONITH-majority-maker
     Disabled on: majority-maker (score:-INFINITY)
    Resource: rsc_SAPHanaTopology_HA1_HDB00-clone
     Disabled on: majority-maker (score:-INFINITY)
    Resource: rsc_SAPHana_HA1_HDB00-master
     Disabled on: majority-maker (score:-INFINITY)
    Ordering Constraints:
     start rsc_SAPHanaTopology_HA1_HDB00-clone then start rsc_SAPHana_HA1_HDB00-master (kind:Mandatory)
     promote rsc_SAPHana_HA1_HDB00-clone then start g-primary (kind:Mandatory) (id:order-rsc_SAPHana_HA1_HDB00-clone-g-primary-mandatory)
    Colocation Constraints:
     g-primary with rsc_SAPHana_HA1_HDB00-master (score:INFINITY) (rsc-role:Started) (with-rsc-role:Master)
    Ticket Constraints:

Selesaikan penyiapan

  1. Bawa cluster dari mode pemeliharaan.

    pcs property set maintenance-mode=false
  2. Setelah resource dimulai, periksa atribut node untuk melihat status database SAP HANA saat ini pada node:

    # crm_mon -A1

    Anda akan melihat output yang mirip dengan berikut ini:

    RHEL 8.0 dan yang lebih baru

    Cluster Summary:
    Stack: corosync
    Current DC: hana-ha-2w1 (version 2.0.5-9.el8_4.7-ba59be7122) - partition with quorum
    Last updated: Wed Oct 11 17:59:51 2023
    Last change:  Wed Oct 11 17:59:48 2023 by hacluster via crmd on hana-ha-2
    5 nodes configured
    17 resource instances configured
    
    Node List:
    Online: [ hana-ha-1 hana-ha-1w1 hana-ha-2 hana-ha-2w1 dru-somm ]
    
    Active Resources:
    STONITH-hana-ha-1     (stonith:fence_gce):     Started hana-ha-2
    STONITH-hana-ha-1w1   (stonith:fence_gce):     Started hana-ha-1
    STONITH-hana-ha-2     (stonith:fence_gce):     Started hana-ha-2w1
    STONITH-hana-ha-2w1   (stonith:fence_gce):     Started dru-somm
    STONITH-dru-somm    (stonith:fence_gce):     Started hana-ha-1
    Clone Set: SAPHanaTopology_HA1_00-clone [SAPHanaTopology_HA1_00]:
     Started: [ hana-ha-1 hana-ha-1w1 hana-ha-2 hana-ha-2w1 ]
    Clone Set: SAPHana_HA1_00-clone [SAPHana_HA1_00]-(promotable):
     Slaves: [ hana-ha-1w1 hana-ha-2w1 ]
    Resource Group: g-primary:
     healthcheck_HA1   (service:haproxy):       Started hana-ha-1
     ip_SAPHANA_HA1_00 (ocf::heartbeat:IPaddr2):        Started hana-ha-1
    
    Node Attributes:
    Node: hana-ha-1:
     hana_ha1_clone_state              : PROMOTED
     hana_ha1_gra                      : 2.0
     hana_ha1_remoteHost               : hana-ha-2w1
     hana_ha1_roles                    : master1:master:worker:master
     hana_ha1_site                     : hana-ha-1
     hana_ha1_sra                      : -
     hana_ha1_srmode                   : syncmem
     hana_ha1_vhost                    : hana-ha-1
     master-SAPHana_HA1_00             : 5
    Node: hana-ha-1w1:
     hana_ha1_clone_state              : DEMOTED
     hana_ha1_gra                      : 2.0
     hana_ha1_remoteHost               : hana-ha-2w1
     hana_ha1_roles                    : slave:slave:worker:slave
     hana_ha1_site                     : hana-ha-1
     hana_ha1_srmode                   : syncmem
     hana_ha1_vhost                    : hana-ha-1w1
     master-SAPHana_HA1_00             : -INFINITY
    Node: hana-ha-2:
     hana_ha1_clone_state              : DEMOTED
     hana_ha1_gra                      : 2.0
     hana_ha1_remoteHost               : hana-ha-1w1
     hana_ha1_roles                    : master1:master:worker:master
     hana_ha1_site                     : hana-ha-2
     hana_ha1_sra                      : -
     hana_ha1_srmode                   : syncmem
     hana_ha1_vhost                    : hana-ha-2
     master-SAPHana_HA1_00             : 100
    Node: hana-ha-2w1:
     hana_ha1_clone_state              : DEMOTED
     hana_ha1_gra                      : 2.0
     hana_ha1_remoteHost               : hana-ha-1w1
     hana_ha1_roles                    : slave:slave:worker:slave
     hana_ha1_site                     : hana-ha-2
     hana_ha1_srmode                   : syncmem
     hana_ha1_vhost                    : hana-ha-2w1
     master-SAPHana_HA1_00             : -12200
    Node: dru-somm:
     hana_ha1_remoteHost               : hana-ha-2w1
     hana_ha1_srmode                   : syncmem

    RHEL 7.6 dan yang lebih baru

    Stack: corosync
    Current DC: majority-maker (version 1.1.23-1.el7_9.1-9acf116022) - partition with quorum
    Last updated: Wed Oct 11 17:58:07 2023
    Last change: Wed Oct 11 17:57:57 2023 by hacluster via crmd on hana-ha-2w1
    
    5 nodes configured
    17 resource instances configured
    
    Online: [ hana-ha-1 hana-ha-1w1 hana-ha-2 hana-ha-2w1 majority-maker ]
    
    Active resources:
    
    STONITH-hana-ha-1 (stonith:fence_gce):    Started hana-ha-1w1
    STONITH-hana-ha-1w1       (stonith:fence_gce):    Started hana-ha-2
    STONITH-hana-ha-2 (stonith:fence_gce):    Started hana-ha-1
    STONITH-hana-ha-2w1       (stonith:fence_gce):    Started majority-maker
    STONITH-majority-maker (stonith:fence_gce):    Started hana-ha-1w1
    Master/Slave Set: msl_rsc_SAPHana_HA1_HDB00 [rsc_SAPHana_HA1_HDB00]
     rsc_SAPHana_HA1_HDB00      (ocf::heartbeat:SAPHanaController):     Master hana-ha-1 (Monitoring)
     Slaves: [ hana-ha-1w1 hana-ha-2 hana-ha-2w1 ]
    Clone Set: rsc_SAPHanaTopology_HA1_HDB00-clone [rsc_SAPHanaTopology_HA1_HDB00]
     Started: [ hana-ha-1 hana-ha-1w1 hana-ha-2 hana-ha-2w1 ]
    Resource Group: g-primary
     hc_HA1_HDB00       (service:haproxy):      Started hana-ha-1
     rsc_ip_SAPHANA_HA1_HDB00   (ocf::heartbeat:IPaddr2):       Started hana-ha-1
    
    Node Attributes:
    Node hana-ha-1:
      hana_ha1_clone_state              : PROMOTED
      hana_ha1_remoteHost               : hana-ha-2
      hana_ha1_roles                    : master1:master:worker:master
      hana_ha1_site                     : hana-ha-1
      hana_ha1_srmode                   : syncmem
      hana_ha1_vhost                    : hana-ha-1
      master-rsc_SAPHana_HA1_HDB00      : 150
    Node hana-ha-1w1:
      hana_ha1_clone_state              : DEMOTED
      hana_ha1_remoteHost               : hana-ha-2w1
      hana_ha1_roles                    : slave:slave:worker:slave
      hana_ha1_site                     : hana-ha-1
      hana_ha1_srmode                   : syncmem
      hana_ha1_version                  : 2.00.052.00.1599235305
      hana_ha1_vhost                    : hana-ha-1w1
      master-rsc_SAPHana_HA1_HDB00      : -10000
    Node hana-ha-2:
      hana_ha1_clone_state              : DEMOTED
      hana_ha1_remoteHost               : hana-ha-2w1
      hana_ha1_roles                    : master1:master:worker:master
      hana_ha1_site                     : hana-ha-2
      hana_ha1_srmode                   : syncmem
      hana_ha1_vhost                    : hana-ha-2
      master-rsc_SAPHana_HA1_HDB00      : 100
    Node hana-ha-2w1:
      hana_ha1_clone_state              : DEMOTED
      hana_ha1_remoteHost               : hana-ha-1
      hana_ha1_roles                    : slave:slave:worker:slave
      hana_ha1_site                     : hana-ha-2
      hana_ha1_srmode                   : syncmem
      hana_ha1_vhost                    : hana-ha-2w1
      master-rsc_SAPHana_HA1_HDB00      : -12200
    Node majority-maker:
      hana_ha1_srmode                   : syncmem
  3. Jika ada resource cluster yang gagal, Anda mungkin perlu menjalankan perintah berikutnya:

    pcs resource cleanup

Menguji failover

Uji cluster Anda dengan menyimulasikan kegagalan pada host utama. Gunakan sistem pengujian atau jalankan pengujian pada sistem produksi Anda sebelum sistem dirilis untuk digunakan.

Cadangkan sistem sebelum pengujian.

Anda dapat menyimulasikan kegagalan dengan berbagai cara, termasuk:

  • HDB stop
  • HDB kill
  • reboot (di node aktif)
  • ip link set eth0 down
  • echo c > /proc/sysrq-trigger

Petunjuk ini menggunakan ip link set eth0 down untuk membuat antarmuka jaringan menjadi offline, karena antarmuka tersebut memvalidasi failover serta pagar.

  1. Pada host yang aktif, sebagai root, buat antarmuka jaringan menjadi offline:

    # ip link set eth0 down
  2. Hubungkan kembali ke host menggunakan SSH dan ubah ke pengguna root.

  3. Masukkan pcs status untuk mengonfirmasi bahwa host utama kini aktif di VM yang sebelumnya berisi host sekunder. Mulai ulang otomatis diaktifkan dalam cluster, sehingga host yang dihentikan akan memulai ulang dan mengambil peran host sekunder, seperti yang ditunjukkan dalam contoh berikut.

    Cluster name: hana-ha-cluster
    Stack: corosync
    Current DC: hana-ha-vm-2 (version 1.1.19-8.el7_6.5-c3c624ea3d) - partition with quorum
    Last updated: Wed Jun 17 01:04:36 2020
    Last change: Wed Jun 17 01:03:58 2020 by root via crm_attribute on hana-ha-vm-2
    
    2 nodes configured
    8 resources configured
    
    Online: [ hana-ha-vm-1 hana-ha-vm-2 hana-ha-vm-1w1 hana-ha-vm-2w1]
    
    Full list of resources:
    
    STONITH-hana-ha-vm-1   (stonith:fence_gce):    Started hana-ha-vm-2
    STONITH-hana-ha-vm-2   (stonith:fence_gce):    Started hana-ha-vm-1
    STONITH-hana-ha-vm-1w1   (stonith:fence_gce):    Started hana-ha-vm-2w1
    STONITH-hana-ha-vm-1w1   (stonith:fence_gce):    Started hana-ha-vm-mm
    STONITH-hana-ha-vm-mm   (stonith:fence_gce):    Started hana-ha-vm-1w1
    Clone Set: SAPHanaTopology_HA1_22-clone [SAPHanaTopology_HA1_22]
        Started: [ hana-ha-vm-1 hana-ha-vm-2 hana-ha-vm-1w1 hana-ha-vm-2w1
        Stopped: [ hana-ha-vm-mm ] ]
    Master/Slave Set: SAPHana_HA1_22-master [SAPHana_HA1_22]
        Masters: [ hana-ha-vm-2 ]
        Slaves: [ hana-ha-vm-1 hana-ha-vm-1w1 hana-ha-vm-2w1
        Stopped: [ hana-ha-vm-mm ] ]
    Resource Group: g-primary
        rsc_healthcheck_HA1        (service:haproxy):      Started hana-ha-vm-2
        rsc_vip_HA1_22     (ocf::heartbeat:IPaddr2):       Started hana-ha-vm-2
    
    Daemon Status:
     corosync: active/enabled
     pacemaker: active/enabled
     pcsd: active/enabled

Pemecahan masalah

Guina memecahkan masalah konfigurasi ketersediaan tinggi untuk SAP HANA di RHEL, lihat Memecahkan masalah konfigurasi ketersediaan tinggi untuk SAP.

Mendapatkan dukungan untuk SAP HANA di RHEL

Jika Anda memerlukan bantuan untuk menyelesaikan masalah dengan cluster ketersediaan tinggi untuk SAP HANA di RHEL, kumpulkan informasi diagnostik yang diperlukan dan hubungi Cloud Customer Care. Untuk informasi selengkapnya, lihat Cluster ketersediaan tinggi pada informasi diagnostik RHEL.

Dukungan

Untuk masalah terkait infrastruktur atau layanan Google Cloud, hubungi Layanan Pelanggan. Anda dapat menemukan informasi kontak di Halaman Support Overview di Konsol Google Cloud. Jika Layanan Pelanggan menentukan bahwa ada masalah dalam sistem SAP, Anda akan dirujuk ke Dukungan SAP.

Untuk masalah terkait produk SAP, catat permintaan dukungan Anda ke dalam log dengan dukungan SAP. SAP mengevaluasi tiket dukungan dan, jika tampaknya merupakan masalah infrastruktur Google Cloud, mentransfer tiket tersebut ke komponen Google Cloud BC-OP-LNX-GOOGLE atau BC-OP-NT-GOOGLE.

Persyaratan dukungan

Sebelum dapat menerima dukungan untuk sistem SAP serta infrastruktur dan layanan Google Cloud yang digunakannya, Anda harus memenuhi persyaratan paket dukungan minimum.

Guna mengetahui informasi selengkapnya tentang persyaratan dukungan minimum untuk SAP di Google Cloud, lihat:

Menghubungkan ke SAP HANA

Jika VM host tidak memiliki alamat IP eksternal untuk SAP HANA, Anda hanya dapat terhubung ke instance SAP HANA melalui instance bastion menggunakan SSH atau melalui server Windows melalui SAP HANA Studio.

  • Untuk terhubung ke SAP HANA melalui instance bastion, hubungkan ke bastion host, lalu ke instance SAP HANA dengan menggunakan klien SSH pilihan Anda.

  • Untuk terhubung ke database SAP HANA melalui SAP HANA Studio, gunakan klien desktop jarak jauh untuk terhubung ke instance Windows Server. Setelah terhubung, instal SAP HANA Studio secara manual dan akses database SAP HANA Anda.

Tugas pascadeployment

Setelah Anda menyelesaikan deployment, selesaikan dengan langkah-langkah berikut:

  1. Ubah sandi sementara untuk administrator sistem dan superuser database SAP HANA. Contoh:

    sudo passwd SID_LCadm

    Untuk informasi dari SAP tentang cara mengubah sandi, lihat Mereset Sandi Pengguna SISTEM Database Sistem.

  2. Sebelum menggunakan instance SAP HANA, konfigurasikan dan cadangkan database SAP HANA baru Anda.

  3. Jika sistem SAP HANA Anda di-deploy pada antarmuka jaringan VirtIO, sebaiknya pastikan bahwa nilai parameter TCP /proc/sys/net/ipv4/tcp_limit_output_bytes ditetapkan ke 1048576. Modifikasi ini membantu meningkatkan throughput jaringan secara keseluruhan pada antarmuka jaringan VirtIO tanpa memengaruhi latensi jaringan.

Untuk informasi selengkapnya, lihat:

Langkah selanjutnya

Lihat referensi berikut untuk informasi selengkapnya: