Ubuntu 24.04
Sponsored Link

KVM : VirtualBMC का प्रयोग करें2024/05/10

 

वर्चुअल मशीनों पर IPMI कमांड सक्षम करने के लिए VirtualBMC इंस्टॉल करें।
VirtualBMC पावर ऑन/ऑफ ऑपरेशन जैसे IPMI कमांड के एक छोटे से हिस्से का समर्थन करता है, हालांकि, यह कभी-कभी उपयोगी होता है।

[1] KVM होस्ट पर VirtualBMC इंस्टॉल करें।
root@dlp:~#
apt -y install python3-pip python3-venv ipmitool
# [/opt/virtualbmc] के अंतर्गत Python वर्चुअल वातावरण बनाएं

root@dlp:~#
python3 -m venv --system-site-packages /opt/virtualbmc
# VirtualBMC इंस्टॉल करें

root@dlp:~#
/opt/virtualbmc/bin/pip3 install virtualbmc
# एक systemd सेटिंग फ़ाइल बनाएँ

root@dlp:~#
vi /usr/lib/systemd/system/virtualbmc.service
# नया निर्माण

[Unit]
Description=Virtual BMC Service
After=network.target libvirtd.service

[Service]
Type=simple
ExecStart=/opt/virtualbmc/bin/vbmcd --foreground
ExecStop=/bin/kill -HUP $MAINPID
User=root
Group=root

[Install]
WantedBy=multi-user.target

root@dlp:~#
systemctl daemon-reload

root@dlp:~#
systemctl enable --now virtualbmc.service
# स्थिति दिखाएं (यदि कोई त्रुटि नहीं दिखाई गई है तो ठीक है)

root@dlp:~#
/opt/virtualbmc/bin/vbmc list
[2] वर्चुअलबीएमसी को वर्चुअल मशीन पर सेट करें।
root@dlp:~#
virsh list --all

 Id   Name   State
-----------------------
 -    rx-7   shut off
 -    rx-8   shut off

# VirtualBMC को VM [rx-7] पर सेट करें
# [port], [username], [password] के लिए, अपनी पसंद का कोई भी मान सेट करना ठीक है

root@dlp:~#
/opt/virtualbmc/bin/vbmc add rx-7 --port 6230 --username vbmcadmin --password adminpassword
root@dlp:~#
/opt/virtualbmc/bin/vbmc list

+-------------+--------+---------+------+
| Domain name | Status | Address | Port |
+-------------+--------+---------+------+
| rx-7        | down   | ::      | 6230 |
+-------------+--------+---------+------+

# VirtualBMC प्रारंभ करें

root@dlp:~#
/opt/virtualbmc/bin/vbmc start rx-7
root@dlp:~#
/opt/virtualbmc/bin/vbmc list

+-------------+---------+---------+------+
| Domain name | Status  | Address | Port |
+-------------+---------+---------+------+
| rx-7        | running | ::      | 6230 |
+-------------+---------+---------+------+

root@dlp:~#
/opt/virtualbmc/bin/vbmc show rx-7

+-----------------------+----------------+
| Property              | Value          |
+-----------------------+----------------+
| active                | True           |
| address               | ::             |
| domain_name           | rx-7           |
| libvirt_sasl_password | ***            |
| libvirt_sasl_username | None           |
| libvirt_uri           | qemu:///system |
| password              | ***            |
| port                  | 6230           |
| status                | running        |
| username              | vbmcadmin      |
+-----------------------+----------------+

# VirtualBMC के माध्यम से [rx-7] पर बिजली की स्थिति दिखाएं

root@dlp:~#
ipmitool -I lanplus -H 127.0.0.1 -p 6230 -U vbmcadmin -P adminpassword power status

Chassis Power is off
# VirtualBMC के माध्यम से बिजली चालू करें

root@dlp:~#
ipmitool -I lanplus -H 127.0.0.1 -p 6230 -U vbmcadmin -P adminpassword power on

Chassis Power Control: Up/On
root@dlp:~#
virsh list --all

 Id   Name   State
-----------------------
 3    rx-7   running
 -    rx-8   shut off

# VirtualBMC के माध्यम से बिजली बंद करें

root@dlp:~#
ipmitool -I lanplus -H 127.0.0.1 -p 6230 -U vbmcadmin -P adminpassword power off

Chassis Power Control: Down/Off
root@dlp:~#
virsh list --all

 Id   Name   State
-----------------------
 -    rx-7   shut off
 -    rx-8   shut off
[3] यदि आप VirtualBMC का उपयोग स्थानीय KVM होस्ट पर नहीं बल्कि अन्य दूरस्थ होस्ट पर करना चाहते हैं, तो निम्नानुसार कॉन्फ़िगर करें।
SSH कुंजी-जोड़ी सेटिंग्स के लिए, कुंजी-जोड़ी सेट करने के बाद ssh सेटिंग को [PermitRootLogin निषेध-पासवर्ड] में बदलना बेहतर होगा।
# SSH कुंजी-जोड़ी उत्पन्न करें और इसे स्वयं के होस्ट पर सेट करें

root@dlp:~#
ssh-keygen -q -N ""

Enter file in which to save the key (/root/.ssh/id_ed25519):
root@dlp:~#
mv ~/.ssh/id_ed25519.pub ~/.ssh/authorized_keys

root@dlp:~#
ssh 10.0.0.30 hostname

dlp.srv.world
root@dlp:~#
virsh list --all

 Id   Name   State
-----------------------
 -    rx-7   shut off
 -    rx-8   shut off

# VirtualBMC को [rx-8] पर सेट करें
# [--libvirt-uri] के लिए, KVM होस्ट निर्दिष्ट करें

root@dlp:~#
/opt/virtualbmc/bin/vbmc add rx-8 --port 6231 --username vbmcadmin --password adminpassword --libvirt-uri qemu+ssh://root@10.0.0.30/system

root@dlp:~#
/opt/virtualbmc/bin/vbmc start rx-8
root@dlp:~#
/opt/virtualbmc/bin/vbmc list

+-------------+---------+---------+------+
| Domain name | Status  | Address | Port |
+-------------+---------+---------+------+
| rx-7        | running | ::      | 6230 |
| rx-8        | running | ::      | 6231 |
+-------------+---------+---------+------+

root@dlp:~#
/opt/virtualbmc/bin/vbmc show rx-8

+-----------------------+----------------------------------+
| Property              | Value                            |
+-----------------------+----------------------------------+
| active                | True                             |
| address               | ::                               |
| domain_name           | rx-8                             |
| libvirt_sasl_password | ***                              |
| libvirt_sasl_username | None                             |
| libvirt_uri           | qemu+ssh://root@10.0.0.30/system |
| password              | ***                              |
| port                  | 6231                             |
| status                | running                          |
| username              | vbmcadmin                        |
+-----------------------+----------------------------------+

# ठीक है
# KVM होस्ट पर उत्पन्न SSH कुंजी-जोड़ी के लिए,
# इसे निजी-कुंजी [id_ed25519] को उन होस्ट्स में स्थानांतरित करने की आवश्यकता है जिन्हें आप VirtualBMC का उपयोग करना चाहते हैं
# उदाहरण के लिए, [rx-7] होस्ट पर ipmitool को [rx-8] होस्ट पर निष्पादित करें

root@rx-7:~#
ll .ssh

total 20
drwx------ 2 root root 4096 May 10 04:04 ./
drwx------ 5 root root 4096 May 10 01:02 ../
-rw------- 1 root root    0 May  9 08:15 authorized_keys
-rw------- 1 root root  411 May 10 04:04 id_ed25519
-rw------- 1 root root  978 May 10 04:03 known_hosts
-rw-r--r-- 1 root root  142 May 10 04:03 known_hosts.old

root@rx-7:~#
ssh 10.0.0.30 hostname

dlp.srv.world
root@rx-7:~#
ipmitool -I lanplus -H 10.0.0.30 -p 6231 -U vbmcadmin -P adminpassword power status

Chassis Power is off
root@rx-7:~#
ipmitool -I lanplus -H 10.0.0.30 -p 6231 -U vbmcadmin -P adminpassword power on

Chassis Power Control: Up/On
root@rx-7:~#
ssh 10.0.0.30 "virsh list"

 Id   Name   State
----------------------
 4    rx-7   running
 5    rx-8   running
मिलान सामग्री