MIRACLE ZBX 6.0アプライアンス環境でのカーネルアップデートについて
MIRACLE ZBX 6.0アプライアンス環境でのカーネルアップデートについて
概要
MIRACLE ZBX 6.0を使ったアプライアンスでは、OSのストールを監視するためにMIRACLE FailSafeやMIRACLE CLUSTERPRO Xのユーザ空間モニタのkeepalive機能を使用しています。このkeepalive機能は専用のカーネルモジュールを使用するため、対応可能なカーネルのバージョンに制限があります。そのため、MIRACLE ZBX 6.0のアプライアンス環境ではカーネルを自由にアップデートできません。本記事では、keepalive機能の代わりにsoftdogを使用することで任意にカーネルをアップデートできるようにするための手順を説明します。
対象となる製品
- MIRACLE ZBX Virtual Appliance V6.0
- MIRACLE ZBX Virtual Appliance V6.0 Suite
- MIRACLE ZBXアプライアンス環境構築サービスにて構築したMIRACLE ZBX 6.0のアプライアンス
詳細
MIRACLE ZBX 6.0を使用したアプライアンスでは、MIRACLE FailSafeやMIRACLE CLUSTERPRO Xのユーザ空間モニタのkeepalive機能を使用してOSのストールを監視しています。keepalive機能では専用のカーネルモジュールが必要であるため、対応可能なカーネルバージョンが制限されており、自由にカーネルをアップデートできません。
この対策の1つとして、keepaliveの代わりにsoftdogを使用することが考えられます。それぞれ利点と欠点があるため、どちらを採用するべきかは運用状況などに応じて判断してください。
ただし、ミラーディスクを使用してクラスタを構築している環境では、ミラーディスクのカーネルモジュールにより対応可能なカ ーネルバージョンが制限されてしまうため、softdogに変更してもカーネルバージョンを任意にアップデートすることはできません。共有ディスクを使用してクラスタを構築している環境やクラスタを構築せずにアプライアンスを使用している環境での対策となります。
keepaliveとsoftdogの特徴について簡単にまとめると以下のようになります。
- keepaliveの特徴
- 専用のカーネルモジュールが必要でカーネルバージョンに制限がある
- クラスタ構成ではOSストールを検知したさいに他のサーバにログを記録できる
- softdogの特徴
- 専用のカーネルモジュールが不要でカーネルバージョンの制限がない
- OSストールを検知したさいにログを記録できない
デフォルトのままkeepaliveを使用する場合は変更は必要ありません。対応可能なカーネルバージョンについてはお問い合わせください。softdogに変更する場合は以下の手順に従って設定してください。
softdogへの変更手順
MIRACLE FailSafeやMIRACLE CLUSTERPRO Xの設定変更
ユーザ空間モニタをkeepaliveからsoftdogに変更する手順を説明します。
-
Cluster WebUIにアクセスするためファイアウォールの設定をします。TCPの29003番ポートへのアクセスを許可してください。
# firewall-cmd --zone=public --add-port=29003/tcp
-
ブラウザでCluster WebUIにアクセスします。以下のURLにアクセスしてください。
アプライアンスの設定によっては、httpではなくhttpsでのアクセスの場合があります。環境に合わせて読み替えてください。http://<サーバのIPアドレス>:29003
- パスワードを入力してCluster WebUIにログインします。アプライアンスの初期状態ではパスワードは「zabbix」に設定されています。
- 右上のメニューから設定モード画面を開きます。
- クラスタ名の行にある歯車とペンのアイコンをクリックして、クラスタのプロパティダイアログを開きます。
- インタコネクトタブを開き、LANのハートビートの種別をカーネルモードからユーザモードに変更します。クラスタを構築していない環境の場合はインタコネクトが存在しないため、この手順はスキップしてください。
- 監視タブを開き、シャットダウン監視の監視方法をkeepaliveからsoftdogに変更します。 変更したらOKをクリックしてダイアログを閉じます。
- userw行の歯車とペンのアイコンをクリックして、ユーザ空間モニタのプロパティダイアログを開きます。
- 監視(固有)タブを開き、監視方法をkeepaliveからsoftdogに変更します。 変更したらOKをクリックしてダイアログを閉じます。
- 画面上部のボタンから設定を反映します。 途中でクラスタのサスペンドが必要となる場合がありますが、ダイアログの指示に従って進めてください。
-
必要に応じてファイアウォールの設定を元に戻します。
# firewall-cmd --zone=public --remove-port=29003/tcp
- 変更が完了したらクラスタを再起動します。
変更後の確認
変更後の動作確認について説明します。
-
MIRACLE FailSafeまたはMIRACLE CLUSTERPRO Xの状況を確認します。以下のコマンドを実行してください。
出力例は以下のようになります。# clpstat
serverセクションのハートビートの行がKernel Mode LAN HeartbeatではなくLAN Heartbeatになっていることを確かめてください。また、userwの行がNormalになっていることを確認してください。======================== CLUSTER STATUS =========================== Cluster : zbx-server-cluster <server> *zbx-server-1 ....: Online lanhb1 : Normal LAN Heartbeat lanhb2 : Normal LAN Heartbeat lanhb3 : Normal LAN Heartbeat diskhb1 : Normal DISK Heartbeat pingnp1 : Normal ping resolution zbx-server-2 ....: Online lanhb1 : Normal LAN Heartbeat lanhb2 : Normal LAN Heartbeat lanhb3 : Normal LAN Heartbeat diskhb1 : Normal DISK Heartbeat pingnp1 : Normal ping resolution <group> failover-ZabbixA : Online current : zbx-server-1 exec-ZabbixAge : Online failover-ZabbixA : Online current : zbx-server-2 exec-ZabbixAge : Online failover-ZabbixS : Online current : zbx-server-1 disk-MySQL : Online exec-Apache : Online exec-MySQL : Online exec-PhpFpm : Online exec-SnmpTrapd : Online exec-Snmptt : Online exec-ZabbixJav : Online exec-ZabbixSer : Online fip-ZabbixServ : Online <monitor> diskw-MySQL : Normal fipw-ZabbixServe : Normal miiw-ens192 : Normal miiw-ens224 : Normal miiw-ens256 : Normal psw-Apache : Normal psw-MySQL : Normal psw-PhpFpm : Normal psw-SnmpTrapd : Normal psw-Snmptt : Normal psw-ZabbixAgent1 : Normal psw-ZabbixAgent2 : Normal psw-ZabbixJavaGa : Normal psw-ZabbixServer : Normal userw : Normal =====================================================================
-
カーネルモジュールがロードされていないことを確認します。以下のコマンドを実行して出力が何もないことを確認してください。
clpkaやclpkhbが表示された場合はkeepaliveが有効になっていると考えられるため、設定変更の手順を見直してください。# lsmod | grep clp
カーネルアップデートの無効化設定の変更
MIRACLE ZBX 6.0のアプライアンスでカーネルをアップデートできるように設定を変更します。デフォルトでは、パッケージマネージャの設定ファイル/etc/dnf/dnf.conf
で以下のように設定されています。
exclude=kernel*,kmod-kvdo
この行からkernel*
とkmod-kvdo
を削除してください。exclude
設定そのものが不要の場合はこの1行を削除しても構いません。
注意事項
- 本ドキュメントの内容は、予告なしに変更される場合があります。
- 本ドキュメントは限られた評価環境における検証結果をもとに作成しており、全ての環境での動作を保証するものではありません。
- 本ドキュメントの内容に基づき、導入、設定、運用を行なったことにより損害が生じた場合でも、弊社はその損害についての責任を負いません。あくまでお客様のご判断にてご使用ください。
更新履歴
- 2023年02月17日 新規作成