আপনি যদি আপনার মনিটরিং সিস্টেমে আপনার VMware ESXi সার্ভারদের অবস্থা মনিটর করতে চান, তবে আপনাকে আপনার হোস্টগুলিতে SNMP এজেন্ট কনফিগার করতে হবে। এই নিবন্ধে আমরা VMware ESXi 6.7-এ SNMP সক্রিয় এবং কনফিগার করার পদ্ধতি দেখাব (গাইডটি ESXi 5.5 এবং nieuwere সংস্করণের জন্য প্রযোজ্য)।
ESXi-তে একটি বিল্ট-ইন SNMP এজেন্ট থাকে যা SNMP রিকোয়েস্ট এবং ট্র্যাপ পাঠাতে এবং গ্রহণ করতে পারে। আপনি ESXi হোস্টে SNMP এজেন্টকে বেশ কিছু উপায়ে সক্রিয় এবং কনফিগার করতে পারেন: vCLI, PowerCLI ব্যবহার করে (কিন্তু vSphere ক্লায়েন্ট GUI-এর মাধ্যমে নয়)।
VMware ESXi-এ SNMP সার্ভার
vSphere ওয়েব ইন্টারফেস থেকে, আপনি শুধুমাত্র নিশ্চিত করতে পারেন যে "SNMP server" সার্ভিসটি চলছে, এর স্টার্টআপ সেটিংস পরিবর্তন করতে পারেন বা সার্ভিসটি স্টপ/স্টার্ট করতে পারেন। আপনার ESXi হোস্ট → Configure → Services → SNMP Server-এ যান। সার্ভিসটি ডিফল্টভাবে বন্ধ থাকে। এটিকে শুরু করুন।

ESXi হোস্টে SSH অ্যাক্সেস সক্রিয় করুন এবং যেকোনো SSH ক্লায়েন্ট ব্যবহার করে সংযুক্ত হন (আমি Windows 10 বিল্ট-ইন SSH ক্লায়েন্ট ব্যবহার করছি)।
বর্তমান 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:
ESXi-এ SNMP এজেন্ট প্যারামিটার কনফিগারেশন
মনিটরিং সার্ভার IP ঠিকানা (SNMP টার্গেট), পোর্ট (ডিফল্টভাবে, ১৬১ UDP) এবং SNMP কমিউনিটি নাম (সাধারণত, public) নির্দিষ্ট করুন:
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 admin@woshub.com
তারপর ESXi হোস্টে SNMP সার্ভিস সক্রিয় করুন:
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
SNMP ট্রাফিকের জন্য ESXi ফায়ারওয়াল কনফিগারেশন
আপনি দুটি উপায়ে আপনার ESXi হোস্ট ফায়ারওয়ালে SNMP ট্রাফিক অনুমতি দিতে পারেন। নেটওয়ার্কের যেকোনো ডিভাইস থেকে SNMP রিকোয়েস্ট অনুমতি দিতে:
esxcli network firewall ruleset set --ruleset-id snmp --allowed-all true
esxcli network firewall ruleset set --ruleset-id snmp --enabled true
অথবা আপনি আপনার মনিটরিং সার্ভারের 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
এখন আপনি SNMP ব্যবহার করে আপনার VMware ESXi হোস্টগুলো মনিটর করতে পারেন।
PowerCLI ব্যবহার করে ESXi হোস্টে SNMP সেটিংস পরিবর্তন
আপনি যদি একাধিক ESXi হোস্টে দ্রুত SNMP প্যারামিটার কনফিগার করতে চান, তবে আপনি এই PowerCLI স্ক্রিপ্টটি ব্যবহার করতে পারেন:
$ESXi = 'mun-esxi01'
$Community = 'Public'
$Target = '192.168.99.99'
$Port = '161'
#ESXi হোস্টের সাথে সংযোগ
Connect-VIServer -Server $sESXiHost
#বর্তমান SNMP সেটিংস ক্লিয়ার করুন
Get-VMHostSnmp | Set-VMHostSnmp -ReadonlyCommunity @()
#SNMP প্যারামিটার কনফিগার করুন
Get-VMHostSnmp | Set-VMHostSnmp -Enabled:$true -AddTarget -TargetCommunity $Community -TargetHost $Target -TargetPort $Port -ReadOnlyCommunity $Community
#বর্তমান SNMP প্যারামিটার প্রদর্শন করুন
$Cmd= Get-EsxCli -VMHost $ESXiHost
$Cmd.System.Snmp.Get()
আপনার যদি উন্নত VMware Enterprise Plus লাইসেন্স থাকে, তবে আপনি Host Profiles ব্যবহার করে আপনার ESXi হোস্টগুলিতে SNMP প্যারামিটার কনফিগার করতে পারেন (Management → Host Profiles → your Profile → SNMP Agent Configuration)।
VMware ESXi SNMPv3 কনফিগারেশন
আমরা উপরে ESXi হোস্টে SNMP এজেন্ট v1 এবং v2 সক্রিয় এবং কনফিগার করার পদ্ধতি আলোচনা করেছি। 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 snmp@woshub.com -u snmpuser/authhash/privhash/priv
তারপর SNMP টার্গেট ঠিকানা নির্দিষ্ট করুন:
esxcli system snmp set –v3targets 192.168.99.99@161/user/priv/trap
আপনি Linux snmpwalk টুল ব্যবহার করে দূর থেকে SNMP কনফিগারেশন চেক করতে পারেন:
snmpwalk -v3 -u snmpuser -l AuthPriv -a SHA -A P@ssw0rd1 -x AES-X P@ssword2 192.168.1.120