Memigrasikan Persistent Disk ke Hyperdisk untuk SAP HANA

Dokumen ini menjelaskan cara memigrasikan volume Persistent Disk yang digunakan oleh database SAP HANA ke volume Hyperdisk Google Cloud.

Hyperdisk, terutama Hyperdisk Extreme, memberikan performa yang lebih baik untuk SAP HANA dibandingkan jenis Persistent Disk berbasis SSD.

Untuk memigrasikan volume Persistent Disk yang digunakan oleh database SAP HANA ke volume Hyperdisk, Anda menggunakan snapshot disk Google Cloud dan Opsi Mulai Ulang Cepat SAP HANA.

Meninjau pertimbangan migrasi

  • Data migrasi: Opsi Mulai Ulang Cepat SAP HANA digunakan sebagai helper. Tindakan ini akan mengurangi periode nonaktif saat memotong disk dengan menghilangkan keharusan menunggu tabel database dimuat. Namun, pastikan untuk memperhitungkan waktu yang diperlukan untuk memuat ulang penyimpanan baris dan jenis data Objek Besar Biner (BLOB).
  • Periode nonaktif: Meskipun proses migrasi memerlukan periode nonaktif minimal, durasi periode nonaktif sebenarnya bergantung pada waktu yang dibutuhkan untuk menyelesaikan tugas berikut:

    • Membuat snapshot disk.

      Untuk mengurangi periode nonaktif saat mengambil snapshot disk, Anda dapat mengambil snapshot disk sebelum aktivitas migrasi yang direncanakan, lalu mengambil beberapa snapshot tambahan lebih dekat ke aktivitas, sehingga menghasilkan perbedaan yang lebih kecil di antara snapshot tersebut.

    • Membuat volume Hyperdisk menggunakan snapshot volume Persistent Disk Anda.

    • Memuat ulang tabel SAP HANA ke dalam memori SAP HANA.

  • Mengembalikan ke disk yang ada: Jika terjadi masalah selama migrasi, Anda dapat mengembalikan ke disk yang ada karena disk tersebut tidak terpengaruh oleh prosedur ini, dan tersedia hingga Anda menghapusnya sendiri. Untuk informasi selengkapnya, lihat Kembali ke disk yang ada.

Sebelum memulai

Sebelum memigrasikan volume Persistent Disk yang digunakan oleh database SAP HANA ke volume Hyperdisk, pastikan kondisi berikut terpenuhi:

  • SAP HANA berjalan di instance Compute Engine bersertifikasi SAP yang mendukung Hyperdisk.
  • Volume /hana/data dan /hana/log dihosting di disk terpisah.
  • Pengelolaan volume logis Linux digunakan untuk persistensi penyimpanan SAP HANA. Meskipun penyimpanan langsung dapat digunakan, opsi ini memerlukan pemetaan ulang perangkat eksplisit melalui tabel /etc/fstab.
  • Opsi Mulai Ulang Cepat SAP HANA diaktifkan untuk sistem SAP HANA Anda.

    Untuk mengetahui informasi tentang cara mengaktifkannya, lihat Mengaktifkan Mulai Ulang Cepat SAP HANA.

  • Tersedia cadangan database SAP HANA yang valid. Cadangan ini dapat digunakan untuk memulihkan database, jika diperlukan.

  • Jika instance Compute Engine target adalah bagian dari cluster ketersediaan tinggi (HA), pastikan cluster berada dalam mode pemeliharaan.

  • Jika database SAP HANA Anda menggunakan deployment skala, ulangi prosedur dalam panduan ini untuk setiap instance SAP HANA.

  • Database SAP HANA sudah aktif dan berjalan.

  • Sistem file tmpfs dimuat sepenuhnya dengan konten fragmen data MAIN. Untuk melihat penggunaan sistem file, jalankan perintah berikut:

    df -Th

    Outputnya mirip dengan contoh berikut:

    #  df -Th
    Filesystem                        Type      Size  Used Avail Use% Mounted on
    ...
    /dev/mapper/vg_hana_shared-shared xfs       1.0T   56G  968G   6% /hana/shared
    /dev/mapper/vg_hana_data-data     xfs        14T  5.7T  8.2T  41% /hana/data
    /dev/mapper/vg_hana_log-log       xfs       512G  7.2G  505G   2% /hana/log
    /dev/mapper/vg_hana_usrsap-usrsap xfs        32G  276M   32G   1% /usr/sap
    tmpfsDB10                         tmpfs     5.7T  800G  4.9T  14% /hana/tmpfs0/DB1
    tmpfsDB11                         tmpfs     5.7T  796G  4.9T  14% /hana/tmpfs1/DB1
    tmpfsDB12                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs2/DB1
    tmpfsDB13                         tmpfs     5.7T  780G  4.9T  14% /hana/tmpfs3/DB1
    tmpfsDB14                         tmpfs     5.7T  816G  4.9T  15% /hana/tmpfs4/DB1
    tmpfsDB15                         tmpfs     5.7T  780G  4.9T  14% /hana/tmpfs5/DB1
    tmpfsDB16                         tmpfs     5.7T  816G  4.9T  15% /hana/tmpfs6/DB1
    tmpfsDB17                         tmpfs     5.7T  780G  4.9T  14% /hana/tmpfs7/DB1
    

Memigrasikan volume Persistent Disk ke volume Hyperdisk

Bagian ini menjelaskan cara memigrasikan volume /hana/data dan /hana/log dari volume Persistent Disk ke volume Hyperdisk.

Untuk menggambarkan proses migrasi, contoh konfigurasi berikut digunakan:

  • Jenis mesin: m2-ultramem-416 (memori 12 TB, 416 vCPU)
  • Sistem peningkatan skala SAP HANA yang di-deploy menggunakan dokumen Google Cloud Terraform: Panduan deployment peningkatan skala SAP HANA.
    • OS: SLES untuk SAP 15 SP1
    • SAP HANA: HANA 2 SPS06, Patch 63
    • Jenis disk default: SSD Persistent Disk (pd-ssd)
    • Volume /hana/data dan /hana/log dipasang di disk terpisah dan dibuat menggunakan LVM dan XFS
    • Opsi Mulai Ulang Cepat SAP HANA diaktifkan dan 6 TB data dimuat ke dalam database. Untuk mengetahui informasi tentang cara melakukannya, lihat Mengaktifkan Mulai Ulang Cepat SAP HANA.

Untuk memigrasikan volume Persistent Disk ke volume Hyperdisk, lakukan langkah-langkah berikut:

  1. Hentikan database SAP HANA dengan menjalankan perintah HDB stop:

    HDB stop
    

    Atau, Anda dapat menjalankan perintah sapcontrol:

    sapcontrol -nr INSTANCE_NUMBER -function StopSystem HDB
    

    Ganti INSTANCE_NUMBER dengan nomor instance untuk sistem SAP HANA Anda.

    Untuk informasi selengkapnya, lihat dokumen SAP Memulai dan Menonaktifkan Sistem SAP HANA.

  2. Lepaskan volume /hana/data dan /hana/log dari sistem file:

    umount /hana/data
    umount /hana/log
    
  3. Tentukan nama disk yang menghosting volume /hana/data dan /hana/log menggunakan salah satu metode berikut:

    • Jalankan perintah ls:

      ls -l /dev/disk/by-id/
      

      Output menunjukkan pemetaan nama disk ke perangkat, mirip dengan contoh berikut:

      ...
      lrwxrwxrwx 1 root root  9 May 18 20:14 google-hana-vm-data00001 -> ../../sdb
      lrwxrwxrwx 1 root root  9 May 18 20:14 google-hana-vm-log00001 -> ../../sdc
      ...
      
    • Jalankan perintah gcloud compute instances describe:

      gcloud compute instances describe INSTANCE_NAME
          --zone=ZONE
      

      Ganti kode berikut:

      • INSTANCE_NAME: nama instance komputasi.
      • ZONE: zona instance komputasi.

      Output akan menampilkan detail tentang instance komputasi, termasuk disk yang terpasang. Contoh:

      gcloud compute instances describe hana-vm --zone europe-west4-a
      ...
      disks:
      - autoDelete: false
      deviceName: hana-vm-shared00001
      diskSizeGb: '1024'
      - autoDelete: false
      deviceName: hana-vm-usrsap00001
      diskSizeGb: '32'
      - autoDelete: false
      deviceName: hana-vm-data00001
      diskSizeGb: '14093'
      - autoDelete: false
      deviceName: hana-vm-log00001
      diskSizeGb: '512'
      
    • Di konsol Google Cloud, buka halaman Instance VM Compute Engine, lalu klik nama instance komputasi. Bagian Penyimpanan menampilkan informasi disk terkait.

  4. Buat snapshot disk yang menghosting volume /hana/data dan /hana/log:

    gcloud compute snapshots create DATA_DISK-snapshot \
      --project=PROJECT_ID \
      --source-disk-zone=SOURCE_DISK_ZONE  \
      --source-disk=DATA_DISK \
    gcloud compute snapshots create LOG_DISK-snapshot \
      --project=PROJECT_ID \
      --source-disk-zone=SOURCE_DISK_ZONE \
      --source-disk=LOG_DISK
    

    Ganti kode berikut:

    • DATA_DISK: nama disk yang menghosting volume /hana/data, yang ditetapkan sebagai awalan untuk snapshot disk data
    • LOG_DISK: nama disk yang menghosting volume /hana/log, yang ditetapkan sebagai awalan untuk snapshot disk log
    • PROJECT_ID: ID project Google Cloud tempat disk di-deploy
    • SOURCE_DISK_ZONE: zona Compute Engine tempat disk di-deploy

    Untuk mengetahui informasi selengkapnya tentang cara membuat snapshot, lihat Membuat dan mengelola snapshot disk.

  5. Dengan menggunakan snapshot disk yang Anda buat, buat volume Hyperdisk untuk volume /hana/data dan /hana/log:

    gcloud compute disks create DATA_DISK-hd \
         --project=PROJECT_ID \
         --zone=ZONE \
         --type=HYPERDISK_TYPE \
         --provisioned-iops=IOPS_DATA_DISK \
         --source-snapshot=DATA_DISK-snapshot \
     gcloud compute disks create LOG_DISK-hd \
         --project=PROJECT_ID \
         --zone=ZONE \
         --type=HYPERDISK_TYPE \
         --provisioned-iops=IOPS_LOG_DISK \
         --source-snapshot=LOG_DISK-snapshot
    

    Ganti kode berikut:

    • DATA_DISK: nama volume Persistent Disk yang menghosting volume /hana/data, yang ditetapkan sebagai awalan untuk nama volume Hyperdisk yang Anda buat
    • LOG_DISK: nama volume Persistent Disk yang menghosting volume /hana/log, yang ditetapkan sebagai awalan untuk nama volume Hyperdisk yang Anda buat
    • PROJECT_ID: ID project Google Cloud
    • HYPERDISK_TYPE: jenis Hyperdisk yang ingin Anda buat, seperti hyperdisk-extreme
    • ZONE: zona Compute Engine tempat Anda perlu men-deploy volume Hyperdisk
    • IOPS_DATA_DISK: IOPS yang ingin Anda tetapkan untuk Hyperdisk yang Anda buat untuk menghosting /hana/data. Anda menetapkan IOPS sesuai dengan persyaratan performa Anda.
    • IOPS_LOG_DISK: IOPS yang ingin Anda tetapkan untuk Hyperdisk yang Anda buat untuk menghosting /hana/log. Anda menetapkan IOPS sesuai dengan persyaratan performa Anda.

    Jika membuat volume Hyperdisk Balanced (hyperdisk-balanced), Anda juga dapat menetapkan throughput-nya.

    Untuk mengetahui informasi tentang ukuran minimum, IOPS, dan throughput yang perlu Anda tetapkan untuk menggunakan volume Hyperdisk dengan SAP HANA, lihat baris yang sesuai dengan jenis mesin Compute Engine Anda di Ukuran minimum untuk volume Hyperdisk dan Persistent Disk berbasis SSD.

    Untuk mengetahui informasi selengkapnya tentang cara memulihkan disk dari snapshot, lihat Memulihkan dari snapshot.

  6. Dari instance Compute Engine yang menghosting database SAP HANA, lepaskan volume Persistent Disk yang menghosting volume /hana/data dan /hana/log:

    gcloud compute instances detach-disk INSTANCE_NAME \
      --disk=DATA_DISK \
      --zone=ZONE
    gcloud compute instances detach-disk INSTANCE_NAME \
      --disk=LOG_DISK \
      --zone=ZONE
    

    Ganti kode berikut:

    • INSTANCE_NAME: nama instance Compute Engine Anda
    • DATA_DISK: nama volume Persistent Disk yang menghosting volume /hana/data, yang ingin Anda lepaskan
    • LOG_DISK: nama volume Persistent Disk yang menghosting volume /hana/log, yang ingin Anda lepaskan
    • ZONE: zona Compute Engine tempat disk di-deploy
  7. Lampirkan volume Hyperdisk yang Anda buat ke instance Compute Engine yang menghosting database SAP HANA Anda:

    gcloud compute instances attach-disk INSTANCE_NAME \
        --disk=DATA_DISK-hd \
        --zone=ZONE
    gcloud compute instances attach-disk INSTANCE_NAME \
       --disk=LOG_DISK-hd \
        --zone=ZONE
    

    Ganti kode berikut:

    • INSTANCE_NAME: nama instance Compute Engine
    • DATA_DISK: nama volume Hyperdisk yang ingin Anda gunakan untuk menghosting volume /hana/data
    • LOG_DISK: nama volume Hyperdisk yang ingin Anda gunakan untuk menghosting volume /hana/log
    • ZONE: zona Compute Engine tempat Hyperdisk di-deploy
  8. Untuk memasang volume Hyperdisk, lakukan langkah-langkah berikut sebagai root atau pengguna yang memiliki akses sudo:

    1. Hapus semua definisi pemetaan perangkat untuk menghindari konflik pemetaan perangkat LVM:

      dmsetup remove_all
      
    2. Pindai semua disk untuk menemukan grup volume, build ulang cache, dan buat volume yang hilang, termasuk LVM:

      vgscan -v --mknodes
      

      Outputnya mirip dengan hal berikut ini:

      Scanning all devices to initialize lvmetad.
      Reading volume groups from cache.
      Found volume group "vg_hana_data" using metadata type lvm2
      Found volume group "vg_hana_shared" using metadata type lvm2
      Found volume group "vg_hana_log" using metadata type lvm2
      Found volume group "vg_hana_usrsap" using metadata type lvm2
      
    3. Aktifkan grup volume:

      vgchange -ay
      

      Outputnya mirip dengan hal berikut ini:

      1 logical volume(s) in volume group "vg_hana_data" now active
      1 logical volume(s) in volume group "vg_hana_shared" now active
      1 logical volume(s) in volume group "vg_hana_log" now active
      1 logical volume(s) in volume group "vg_hana_usrsap" now active
      
    4. Pindai volume logis:

      lvscan
      

      Outputnya mirip dengan hal berikut ini:

      ACTIVE            '/dev/vg_hana_data/data' [13.76 TiB] inherit
      ACTIVE            '/dev/vg_hana_shared/shared' [1024.00 GiB] inherit
      ACTIVE            '/dev/vg_hana_log/log' [512.00 GiB] inherit
      ACTIVE            '/dev/vg_hana_usrsap/usrsap' [32.00 GiB] inherit
      
    5. Pasang disk:

      mount -av
      

      Outputnya mirip dengan hal berikut ini:

      /                        : ignored
      /boot/efi                : already mounted
      /hana/shared             : already mounted
      /hana/data               : already mounted
      /hana/log                : already mounted
      /usr/sap                 : already mounted
      swap                     : ignored
      /hana/tmpfs0/DB1         : already mounted
      /hana/tmpfs1/DB1         : already mounted
      /hana/tmpfs2/DB1         : already mounted
      /hana/tmpfs3/DB1         : already mounted
      /hana/tmpfs4/DB1         : already mounted
      /hana/tmpfs5/DB1         : already mounted
      /hana/tmpfs6/DB1         : already mounted
      /hana/tmpfs7/DB1         : already mounted
      
  9. Verifikasi volume baru:

    • Verifikasi penggunaan sistem file:

      df -Th
      

      Outputnya mirip dengan hal berikut ini:

      Filesystem                        Type      Size  Used Avail Use% Mounted on
      ...
      /dev/mapper/vg_hana_shared-shared xfs       1.0T   56G  968G   6% /hana/shared
      /dev/mapper/vg_hana_usrsap-usrsap xfs        32G  277M   32G   1% /usr/sap
      tmpfsDB10                         tmpfs     5.7T  784G  4.9T  14% /hana/tmpfs0/DB1
      tmpfsDB11                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs1/DB1
      tmpfsDB12                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs2/DB1
      tmpfsDB13                         tmpfs     5.7T  782G  4.9T  14% /hana/tmpfs3/DB1
      tmpfsDB14                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs4/DB1
      tmpfsDB15                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs5/DB1
      tmpfsDB16                         tmpfs     5.7T  783G  4.9T  14% /hana/tmpfs6/DB1
      tmpfsDB17                         tmpfs     5.7T  782G  4.9T  14% /hana/tmpfs7/DB1
      /dev/mapper/vg_hana_log-log       xfs       512G  7.2G  505G   2% /hana/log
      /dev/mapper/vg_hana_data-data     xfs        14T  5.7T  8.2T  41% /hana/data
      
    • Pastikan perangkat ditautkan ke volume baru:

      lsblk
      

      Outputnya mirip dengan hal berikut ini:

      NAME                    MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
      ...
      sdd                       8:48   0    1T  0 disk
      └─vg_hana_shared-shared 254:0    0 1024G  0 lvm  /hana/shared
      sde                       8:64   0   32G  0 disk
      └─vg_hana_usrsap-usrsap 254:3    0   32G  0 lvm  /usr/sap
      sdf                       8:80   0 13.8T  0 disk
      └─vg_hana_data-data     254:1    0 13.8T  0 lvm  /hana/data
      sdg                       8:96   0  512G  0 disk
      └─vg_hana_log-log       254:2    0  512G  0 lvm  /hana/log
      
  10. Mulai database SAP HANA Anda menggunakan salah satu perintah berikut:

    • Jalankan perintah HDB start:

      HDB start
      
    • Jalankan perintah sapcontrol:

      sapcontrol -nr INSTANCE_NUMBER -function StartSystem HDB
      

      Ganti INSTANCE_NUMBER dengan nomor instance untuk database SAP HANA Anda.

      Untuk mengetahui informasi selengkapnya, lihat Memulai dan Menghentikan Sistem SAP HANA.

Kembali ke disk yang ada

Jika migrasi disk gagal, Anda dapat kembali menggunakan volume Persistent Disk yang ada karena berisi data seperti aslinya sebelum prosedur migrasi dimulai.

Untuk memulihkan database SAP HANA ke status awalnya, lakukan langkah-langkah berikut:

  1. Hentikan instance Compute Engine yang menghosting database SAP HANA Anda.
  2. Lepaskan volume Hyperdisk yang Anda buat.
  3. Pasang kembali volume Persistent Disk yang ada ke instance komputasi.
  4. Mulai instance komputasi.