GNU/Linux >> Belajar Linux >  >> Cent OS

Bagaimana Sanlock Bekerja di Virtualisasi RedHat

Di RHV, KVM Host menggunakan Sanlock untuk mendeteksi konektivitas dengan domain Storage. Ketika Sanlock diaktifkan, itu akan membuka wdmd daemon (watchdog multiplexing daemon) dan mengirim keepalive dengan detak jantung tertentu. sanlock IO ke penyimpanan tidak selesai dalam waktu yang ditentukan, sanlock berhenti mengirim keepalive ke wdmd. Saat waktu habis, daemon wdmd yang mengendalikan /dev/watchdog akan mencatat kesalahan, memperingatkan bahwa pengawas tidak akan tetap hidup, dan akan segera kedaluwarsa, lalu mengaktifkan dan menyetel ulang host KVM.

$ systemctl status sanlock
● sanlock.service - Shared Storage Lease Manager
Loaded: loaded (/usr/lib/systemd/system/sanlock.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2020-07-13 15:03:26 NZST; 1 months 19 days ago
Process: 1041 ExecStart=/usr/sbin/sanlock daemon (code=exited, status=0/SUCCESS)
Main PID: 1044 (sanlock)
Tasks: 7
Memory: 18.6M
CGroup: /system.slice/sanlock.service
├─1044 /usr/sbin/sanlock daemon
└─1045 /usr/sbin/sanlock daemon

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.
$ systemctl status wdmd
● wdmd.service - Watchdog Multiplexing Daemon
Loaded: loaded (/usr/lib/systemd/system/wdmd.service; disabled; vendor preset: disabled)
Active: active (running) since Mon 2020-07-13 15:03:26 NZST; 1 months 19 days ago
Process: 1131 ExecStart=/usr/sbin/wdmd (code=exited, status=0/SUCCESS)
Process: 1112 ExecStartPre=/lib/systemd/systemd-wdmd watchdog-check (code=exited, status=0/SUCCESS)
Main PID: 1133 (wdmd)
Tasks: 1
Memory: 2.3M
CGroup: /system.slice/wdmd.service
└─1133 /usr/sbin/wdmd

Warning: Journal has been rotated since unit was started. Log output is incomplete or unavailable.

Daemon sanlock terus menulis ke penyimpanan pada interval tetap untuk memperbarui sewanya. Sanlock akan menandai host KVM sebagai status UNKNOWN, FREE, LIVE, FAIL dan DEAD berdasarkan sanlock IO ke hasil penyimpanan.

tidak diketahui:

Host KVM memiliki sewa pada penyimpanan, tetapi clusterlock tidak dapat mengetahui apakah host tersebut hidup atau mati. Biasanya akan berlangsung selama 10-20 detik, tetapi mungkin saja ini dapat bertahan hingga 80 detik sebelum host KVM dianggap aktif atau gagal.

Gratis:

Tidak ada sewa untuk id host ini.

Langsung:

Host KVM telah memperbarui sewanya dalam 80 detik terakhir. Ini mungkin memperbarui sewanya sekarang atau tidak, kami dapat mengetahuinya hanya dengan memeriksanya lagi nanti.

Gagal:

Host belum memperbarui sewanya selama 80 detik. Akan berlangsung selama 60 detik sebelum host dianggap mati. Ketika staus host KVM ditandai sebagai 'Gagal', Anda akan di bawah log terkait:

2020-08-31 21:35:01 1665117 [1044]: s1 check_our_lease warning 72 last_success 1665045
2020-08-31 21:35:02 1665118 [1044]: s1 check_our_lease warning 73 last_success 1665045
2020-08-31 21:35:03 1665119 [1044]: s1 check_our_lease warning 74 last_success 1665045
2020-08-31 21:35:04 1665120 [1044]: s1 check_our_lease warning 75 last_success 1665045
2020-08-31 21:35:05 1665121 [1044]: s1 check_our_lease warning 76 last_success 1665045
2020-08-31 21:35:06 1665122 [1044]: s1 check_our_lease warning 77 last_success 1665045
2020-08-31 21:35:07 1665123 [1044]: s1 check_our_lease warning 78 last_success 1665045
2020-08-31 21:35:08 1665124 [1044]: s1 check_our_lease warning 79 last_success 1665045
2020-08-31 21:35:09 1665125 [1044]: s1 check_our_lease failed 80
2020-08-31 21:35:10 1665125 [1044]: s1 all pids clear
2020-08-31 21:35:21 1665137 [3859]: 8d627013 aio timeout RD 0x7f56e00009b0:0x7f56e00009c0:0x7f56f0299000 ioto 10 to_count 4
2020-08-31 21:35:21 1665137 [3859]: s1 delta_renew read timeout 10 sec offset 0 /rhev/data-center/mnt/[mountpoint]/[SD_UUID]/dom_md/ids
2020-08-31 21:35:21 1665137 [3859]: s1 renewal error -202 delta_length 20 last_success 1665045

Mati:

Tuan rumah belum memperpanjang masa sewanya selama 140 detik.

Jika sanlock IO ke penyimpanan tidak selesai dalam waktu yang ditentukan, daemon sanlock akan masuk pemulihan. Pemulihan dimulai dengan daemon sanlock yang mencoba membunuh (SIGTERM) pid apa pun menggunakan sewa pada penyimpanan yang terpengaruh. Jika ada pid yang tidak keluar setelah 10 SIGTERM selama lebih dari 10 detik, sanlock akan mencoba membunuh (SIGKILL). Jika pids masih tidak keluar dalam waktu yang ditentukan, pengawas akan menembak, mengatur ulang host. Jika semua pid keluar dalam waktu yang diperlukan, pengawas akan diperbarui dan tidak akan menyala.


Cent OS
  1. Bagaimana memulai/menghentikan Mesin Virtual di Virtualisasi RedHat

  2. Bagaimana rm bekerja? Apa yang rm lakukan?

  3. Bagaimana sebenarnya sig_atomic_t bekerja?

  1. Apa itu NGINX? Bagaimana cara kerjanya?

  2. Bagaimana cara kerja debugger di Linux?

  3. Bagaimana cara kerja perintah ps?

  1. Cara mengkonfigurasi Virtualisasi di Redhat Linux

  2. Bagaimana Cara Kerja Awk ‘!a[$0]++’?

  3. Bagaimana Cara Kerja Sticky Bit?