หากคุณต้องการมอนิเตอร์สถานะของเซิร์ฟเวอร์ VMWare ESXi ในระบบการมอนิเตอร์ของคุณ คุณต้องกำหนดคอนฟิก SNMP agent บนโฮสต์ของคุณ ในบทความนี้ เราจะแสดงวิธีเปิดใช้งานและกำหนดค่า SNMP ใน VMWare ESXi 6.7 (คำแนะนำนี้ใช้ได้กับ ESXi 5.5 และใหม่กว่า)
ใน ESXi มีเอเจนต์ SNMP ในตัวที่สามารถส่งและรับคำขอและกับดัก SNMP คุณสามารถเปิดใช้งานและกำหนดค่าเอเจนต์ SNMP บนโฮสต์ ESXi ได้หลายวิธี:ใช้ vCLI, PowerCLI (แต่ต้องไม่ผ่าน GUI ของไคลเอ็นต์ vSphere)
เซิร์ฟเวอร์ SNMP ใน VMWare ESXi
จากเว็บอินเตอร์เฟส vSphere คุณสามารถตรวจสอบให้แน่ใจว่า “เซิร์ฟเวอร์ SNMP ” บริการกำลังทำงาน เปลี่ยนการตั้งค่าการเริ่มต้นหรือหยุด/เริ่มบริการ ไปที่โฮสต์ ESXi ของคุณ -> กำหนดค่า -> บริการ -> เซิร์ฟเวอร์ SNMP บริการจะหยุดโดยค่าเริ่มต้น เริ่มเลย
เปิดใช้งานการเข้าถึง SSH บนโฮสต์ ESXi และเชื่อมต่อกับมันโดยใช้ไคลเอนต์ ssh ใด ๆ (ฉันใช้ไคลเอนต์ SSH ในตัวของ Windows 10)
หากต้องการตรวจสอบการตั้งค่า SNMP ปัจจุบัน ให้เรียกใช้คำสั่งนี้:
esxcli system snmp get
ไม่ได้กำหนดค่า SNMP:พารามิเตอร์ทั้งหมดว่างเปล่า และเอเจนต์ถูกปิดใช้งาน
Authentication: Communities: Enable: false Engineid: Hwsrc: indications Largestorage: true Loglevel: info Notraps: Port: 161 Privacy: Remoteusers: Syscontact: Syslocation: Targets: Users: V3targets:
การกำหนดค่าพารามิเตอร์ตัวแทน SNMP ใน ESXi
ระบุที่อยู่ IP ของเซิร์ฟเวอร์การมอนิเตอร์ (เป้าหมาย SNMP) พอร์ต (โดยดีฟอลต์คือ 161 UDP) และชื่อชุมชน SNMP (โดยปกติ สาธารณะ ):
esxcli system snmp set --targets=192.168.99.99@161/public
หรือจะตั้งชื่อคอมมูนิตี้ก็ได้ดังนี้
esxcli system snmp set --communities YOUR_COMMUNITY_STRING
นอกจากนี้ คุณสามารถระบุตำแหน่ง:
esxcli system snmp set --syslocation "Allee 16, Mun, DE"
ข้อมูลติดต่อ:
esxcli system snmp set --syscontact [email protected]
จากนั้นเปิดใช้งานบริการ SNMP บนโฮสต์ ESXi:
esxcli system snmp set --enable true
วิธีทดสอบการกำหนดค่า SNMP:
esxcli system snmp test
หากต้องการใช้การตั้งค่า ให้รีสตาร์ทเอเจนต์ SNMP โดยใช้คำสั่งนี้:
/etc/init.d/snmpd restart
หากต้องการรีเซ็ตการตั้งค่าปัจจุบัน ให้ใช้คำสั่งต่อไปนี้:
esxcli system snmp set –r
ในการปิดใช้งาน SNMP:
esxcli system snmp set --disable true
การกำหนดค่าไฟร์วอลล์ ESXi สำหรับการรับส่งข้อมูล SNMP
คุณสามารถอนุญาตการรับส่งข้อมูล SNMP ในไฟร์วอลล์โฮสต์ ESXi ของคุณได้สองวิธี ในการอนุญาตคำขอ SMNP จากอุปกรณ์ใดๆ บนเครือข่าย:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
หรือคุณสามารถอนุญาตการรับส่งข้อมูลขาเข้าจากที่อยู่ IP ของเซิร์ฟเวอร์การมอนิเตอร์ของคุณหรือเครือข่ายย่อย IP ที่เซิร์ฟเวอร์ SNMP ของคุณตั้งอยู่:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all false
esxcli network firewall ruleset allowedip add --ruleset-id snmp --ip-address 192.168.100.0/24
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
ตอนนี้คุณสามารถตรวจสอบโฮสต์ VMWare ESXi ผ่าน SNMP ได้แล้ว
เปลี่ยนการตั้งค่า SNMP บนโฮสต์ ESXi โดยใช้ PowerCLI
หากคุณต้องการกำหนดค่าพารามิเตอร์ SNMP อย่างรวดเร็วบนโฮสต์ ESXi หลายรายการ คุณสามารถใช้สคริปต์ PowerCLI นี้:
$ESXi = 'mun-esxi01'
$Community = 'Public'
$Target = '192.168.99.99'
$Port = '161'
#Connection to an ESXi host
Connect-VIServer -Server $sESXiHost
#Clearing the current SNMP settings
Get-VMHostSnmp | Set-VMHostSnmp -ReadonlyCommunity @()
#Configure SNMP parameters
Get-VMHostSnmp | Set-VMHostSnmp -Enabled:$true -AddTarget -TargetCommunity $Community -TargetHost $Target -TargetPort $Port -ReadOnlyCommunity $Community
#Display the current SNMP parameters
$Cmd= Get-EsxCli -VMHost $ESXiHost
$Cmd.System.Snmp.Get()
หากคุณมีใบอนุญาต VMWare Enterprise Plus ขั้นสูง คุณสามารถกำหนดค่าพารามิเตอร์ SNMP บนโฮสต์ ESXi ของคุณได้โดยใช้โปรไฟล์โฮสต์ (การจัดการ -> โปรไฟล์โฮสต์ -> โปรไฟล์ของคุณ -> การกำหนดค่าตัวแทน SNMP)
การกำหนดค่า VMWare ESXi SNMPv3
เราได้กล่าวถึงวิธีการเปิดใช้งานและกำหนดค่าตัวแทน SNMP v1 และ v2 บนโฮสต์ ESXi ด้านบน เริ่มต้นจาก ESXi 5.1 มีการใช้เวอร์ชันโปรโตคอลที่ทันสมัยกว่า:SNMP v3 . ใช้คำสั่งต่อไปนี้เพื่อกำหนดค่า SNMPv3 ที่ปลอดภัยยิ่งขึ้น
ตั้งค่าโปรโตคอลการตรวจสอบสิทธิ์และการเข้ารหัส:
esxcli system snmp set -a MD5 -x AES128
สร้างแฮชสำหรับรหัสผ่านการตรวจสอบสิทธิ์และการเข้ารหัส (แทนที่ authpass
และ privhash
ด้วยรหัสผ่านของคุณ):
esxcli system snmp hash --auth-hash authpass --priv-hash privhash --raw-secret
ใช้แฮช (authhash และ Privhash) เพิ่มผู้ใช้:
esxcli system snmp set -e yes -C [email protected] -u snmpuser/authhash/privhash/priv
จากนั้นระบุที่อยู่เป้าหมาย SNMP:
esxcli system snmp set –v3targets 192.168.99.99@161/user/priv/trap
คุณสามารถตรวจสอบการกำหนดค่า SNMP จากระยะไกลได้โดยใช้ Linux snmpwalk
เครื่องมือ:
snmpwalk -v3 -u snmpuser -l AuthPriv -a SHA -A P@ssw0rd1 -x AES-X P@ssword2 192.168.1.120