PR
スポンサーリンク

[Nutanix]Nutanix Guest Toolの主要コンポーネントについて整理

スポンサーリンク
記事内に広告が含まれています。
スポンサーリンク
スポンサーリンク

はじめに

Nutanix Bibleなどに書いてあることを個人用に整理したものとなります。

Nutanix Guest Tool Serviceを構成する主な役割

NGT Proxy

  • TCP 2074でリッスン
  • 全てのCVM上で実行
  • リクエストをNGTリーダーへ転送

NGT Leader

  • TCP 2073でリッスン
  • クラスター毎に1つのNGTリーダーが動的に選出
  • Prismリーダーとして機能しているVM(VIPをホストしているVM)がNGTリーダー
  • NGTプロキシから送信されるリクエストの処理を担当
  • AOSコンポーネント(Cerebroなど)との連携を担う

確認方法

任意のCVMにnutanixユーザーでログイン。次のコマンドを実行。

nutanix_guest_tools_cli get_master_location

出力例

nutanix@NTNX-HOME-C-CVM:192.168.3.116:~$ nutanix_guest_tools_cli get_master_location
I20250428 15:52:24.000553Z 207890(0x7fa820b953c0) zookeeper_init:994] Initiating client connection, host=zk1:9876,zk2:9876,zk3:9876 sessionTimeout=20000 watcher=0x7fa82b1606c0 sessionId=0 sessionPasswd=<null> context=0x7ffe70c43840 flags=0
I20250428 15:52:24.000554Z 207890(0x7fa8201ff700) zookeeper_interest:1950] Connecting to server 192.168.3.112:9876
I20250428 15:52:24.000554Z 207890(0x7fa8201ff700) zookeeper_interest:1987] Zookeeper handle state changed to ZOO_CONNECTING_STATE for socket [192.168.3.112:9876]
I20250428 15:52:24.000554Z 207890(0x7fa8201ff700) check_events:2196] initiated connection to server [192.168.3.112:9876]
I20250428 15:52:24.000558Z 207890(0x7fa8201ff700) check_events:2244] session establishment complete on server [192.168.3.112:9876], sessionId=0x39639a7a18414e1, negotiated timeout=20000
I20250428 15:52:24.000660Z 207890(0x7fa820b953c0) zookeeper_close:3142] Closing zookeeper sessionId=0x39639a7a18414e1 to [192.168.3.112:9876]

Master's handle: 192.168.3.112:2073
Master's incarnation ID: 529406

Nutanix Guest Agent

以下のコンポーネントとの連携

  • ngtcli
  • VSS
  • SSR
  • scripts/config
  • その他

Guest AgentとGuest Tool との通信

  • ゲストエージェントサービスは、VMからCVMへのシリアルポート接続を介してゲストツールサービスと通信
  • ゲストエージェントサービスがシリアルポート経由でCVMに接続できない場合、SSLを使用したNutanixクラスターVIPへのネットワーク接続にフォールバック
  • フォールバックするための条件として、UVM ネットワークからクラスター VIPへルーティング可能であること
  • フォールバックするための条件として、UVM ネットワークからクラスター VIP への通信をポート 2074 で許可していること

証明書

  • ゲストツールサービスは証明書発行機関(CA)として機能。各NGT対応UVMに対して証明書ペアを生成
  • この証明書は、UVM用に構成されたISOに埋め込まれ、NGT展開プロセスの一部として使用
  • これらの証明書は、インストールプロセスの一環としてUVM内にインストール

Nutanix Guest Agentとの通信

任意のCVMにnutanixユーザでSSHログイン後、次のコマンドを投入してください。Nutanix Guest AgentサービスがCVMと通信していることを確認できます。

nutanix_guest_tools_cli list_vm_tools_entities include_vm_info=true vm_name=NGTをインストールしたLinuxVMのホスト名

出力例

nutanix@NTNX-HOME-C-CVM:192.168.3.116:~$ nutanix_guest_tools_cli list_vm_tools_entities include_vm_info=true vm_name=RockyLinux9.5
I20250428 16:09:28.000270Z 366110(0x7fbcf08293c0) zookeeper_init:994] Initiating client connection, host=zk1:9876,zk2:9876,zk3:9876 sessionTimeout=20000 watcher=0x7fbcfadf46c0 sessionId=0 sessionPasswd=<null> context=0x7fff2f317940 flags=0
I20250428 16:09:28.000272Z 366110(0x7fbcefefc700) zookeeper_interest:1950] Connecting to server 192.168.3.116:9876
I20250428 16:09:28.000272Z 366110(0x7fbcefefc700) zookeeper_interest:1987] Zookeeper handle state changed to ZOO_CONNECTING_STATE for socket [192.168.3.116:9876]
I20250428 16:09:28.000273Z 366110(0x7fbcefefc700) check_events:2196] initiated connection to server [192.168.3.116:9876]
I20250428 16:09:28.000277Z 366110(0x7fbcefefc700) check_events:2244] session establishment complete on server [192.168.3.116:9876], sessionId=0x19639ab3ea913c4, negotiated timeout=20000
I20250428 16:09:28.000379Z 366110(0x7fbcf08293c0) zookeeper_close:3142] Closing zookeeper sessionId=0x19639ab3ea913c4 to [192.168.3.116:9876]

vm_uuid_vec: "17e3b176-61f7-4544-be14-396bbddea92e"
vm_info_vec {
vm_uuid: "17e3b176-61f7-4544-be14-396bbddea92e"
capabilities {
file_level_restore: true
vss_snapshot: false
volume_group_snapshot: false
}
auth_key: "605b5f10100b4a42590a544455485250445459190a544b790c0a46100c4a17455e074101"
guest_tools_enabled: true
vm_info {
ngt_version: "4.1.2"
guest_os_type: kLinux
guest_os_release: "Rocky Linux-9.5"
is_64_bit: true
mobility_drivers_info {
kvm_drivers_installed: true
esx_drivers_installed: true
}
vss_installed: false
guest_os_version: "9.5"
is_installation_complete: true
backup_scripts_installed: false
multipathing_enabled_for_devices: false
network_interfaces_info {
interface: "ens3"
mac_address: "50:6B:8D:DE:67:47"
ipv4_info_vec {
ip_address: "192.168.3.102"
prefix_length: 24
gateway_ip_vec: "192.168.3.1"
is_static_ip: false
}
dns_ip_vec: "8.8.8.8"
dhcp_sever_ip_address: "192.168.3.254"
}
guest_ngt_capabilities {
in_guest_volume_attachment_enabled: true
ngt_metrics_enabled: false
}
client_cert_expiry_date: 1831435265
package_manager: "RPM"
installation_time: "36.18782949447632"
}
tools_mounted: false
client_certificates_generated: true
nfs_iso_path: ""
system_uuid: "17e3b176-61f7-4544-be14-396bbddea92e"
ngt_uuid: "377661c5-3293-4542-bf04-2298bcb595ca"
vm_name: "RockyLinux9.5"
communication_link_active: true
mounted_iso_version: ""
mounted_iso_config_only: false
is_dormant_vm: false
device_uuid: ""
client_cert_expiry_date: 1831435265
communication_type: kFallbackToIP
communication_link_over_serial_port_active: true
mark_for_communication_type_modify: false
}

その他

証明書の失効日は証明書のインストール(NGTのインストール)から1000日です。
client_cert_expiry_dateのUNIX時間から変換することで確認可能です。

UNIX時間⇒日付変換
UNIX時間(UNIX時刻)から日付に変換します。

参考

https://www.nutanixbible.com/pdf/4d-book-of-aos-services.pdf

 

コメント

タイトルとURLをコピーしました