NetHAM กับข้อมูลที่ไม่สามารถเข้าถึงได้โดยวิธีปกติ (Windows)

หัวข้อที่แล้วติดตั้ง daemon บนเครื่อง remote host ที่เป็นระบบปฏิบัติการ Linux สาวกคุณ Bill ไม่ต้องน้อยใจกันไปนะครับวันนี้มีของ windows มาฝาก ตัว daemon ที่จะทำงานที่เครื่อง Remote Windows Host จะเป็น NSClient++ ครับ
ซึ่งตัว NSClient++ นั้น จากที่ได้ทดสอบ จะรองรับการทำงานบน
• Windows 2000
• Windows XP
• Windows 2003
• Windows Vista

แต่การติดตั้งวันนี้ผมจะทำบน Remote Windows Host ที่เป็น Windows XP นะครับ (ไม่คล่องใช้งาน windows เลย อิอิ…)

1. ก่อนอื่น ต้องมี NSClient++ ก่อนครับโดยดาวน์โหลดได้ที่
http://inms.in.th/netham/files/












- Copy Folder NSClient++ ที่ได้ทำการ Unzip แล้วไปไว้ที่ Local Disk (C:)
- เข้าสู่ Dos โดยไปที่ Start Menu > Runs > พิมพ์ cmd > กด OK
- เข้าสู่ folder NSClient++ โดยพิมพ์คำสั่ง
cd c:\
cd “NSClient++”






- ทำการติดตั้ง NSClient++ โดยพิมพ์
nsclient++.exe /install





2. หลังจากติดตั้ง NSClient++ เรียบร้อยแล้ว เราจะต้องตั้งค่าขั้นต้นกันครับ
- กลับสู่ folder NSClient++ ใน C:
- เปิดไฟล์คอนฟิก nsc.ini เราจะเปิดด้วย Text editor อะไรก็ได้ แล้วแต่สะดวกครับ จากนั้นให้เอา comment ออกที่ตำแหน่ง














หัวข้อ [modules] ให้เอา “ ; ” หน้าข้อความต่อไปนี้ออก







ในหัวข้อ [Settings] ให้เอา “ ; ” หน้าข้อความ allowed_hosts ออก และทำการเติมหมายเลข IP Address ของ NetHAM










ในหัวข้อ [NSClient] ให้เอา “ ; ” หน้าข้อความ port=12489 ออก







3. จากการตั้งค่าขั้นต้น ได้เปิด port 12489 ไว้เพื่อให้ NSClient ติดต่อกับ NetHam ซึ่งถ้า Windows ของคุณปิด Firewall อยู่แล้ว ก็ไม่จำเป็นต้อง Config อะไรบน Windows เพิ่มครับ แต่เพื่อความปลอดภัยแล้ว ควรเปิด Firewall และสร้าง Exception port แค่ที่เราต้องการใช้งาน เพื่อป้องกันการบุกรุกจากผู้ไม่ประสงค์ดีครับ

- สั่งให้ firewall เปิด port 12489
Control Panel > Windows Firewall > Exceptions > คลิก Add Port…































กรอกข้อมูลดังต่อไปนี้ แล้วกด OK

















4. สั่งให้ NSClient++ ทำงานเป็น daemon โดย คลิกขวาที่ My Computer และเลือก Service






















- คลิกขวาที่ Process ชื่อ NSClientpp (Nagios) 0.3.7.82 2009-07-19 w32 กด Start
















5. ทดสอบคำสั่งโดยพิมพ์คำสั่งที่ NetHAM ดังนี้
cd /usr/local/nagios/libexec/
./check_nt -H -p 12489 -v UPTIME













6. การสร้างชุดคำสั่ง Command line ใน NetHAM
- เข้าสู่ NetHAM
- สร้างคำสั่งโดยไปที่เมนู คำสั่ง > คลิกกำหนดคำสั่ง




























7. สร้างคำสั่งโดยกรอกรายละเอียดดังต่อไปนี้











** Command line ต้องทำการใส่คำสั่งตาม Pattern ดังนี้
$USER1$/check_nt -H $HOSTADDRESS$ -p 12489
แล้วตามด้วย Command line ที่จะส่งไปตรวจสอบเครื่องบริการ

-- การเพิ่มเซอร์วิสเพื่อใช้ในหน้าจอมอนิเตอร์ --

1. เข้าสู่ เมนู คอนฟิก และ คลิก เซอร์วิส














2. คลิกที่ เพิ่ม เพื่อทำการสร้างเซอร์วิส













3. กรอกข้อมูลของเซอร์วิสในหน้าจอกำหนดเซอร์วิส

หมายเลขที่ 1 เป็นชื่อของเซอ
ร์วิส ซึ่งเราจะตั้งอย่างไรก็ได้ แต่ต้องไม่ซ้ำกับเซอร์วิสอื่นๆ เนื่องจาก ชื่อเซอร์วิสตรงนี้จะไปปรากฏในหน้าจอมอนิเตอร์ครับ
หมายเลขที่ 2 เป็นรายละเอียด หรือ Description อย่างง่าย
หมายเลขที่ 3 เป็นการกำหนดให้เซอร์วิสนี้พร้อมใช้งาน
หมายเลขที่ 4 เป็นการ mapping กับ command ที่สร้างไว้ในขั้นตอนแรก

หมายเลขที่ 5 เป็นการบันทึกการตั้งค่าทั้งหมด
4. กลับเข้าสู่หน้า Monitor เมื่อคลิกที่เครื่องบริการจะพบเซอร์วิสที่ได้จากการตรวจสอบโดย NSClient++
ซึ่งเราสามารถตรวจสอบได้ทั้ง CPU Load, Disk Usage, Uptime, Process state ของโปรแกรมที่รันบน client ได้ครับ




สรุป
การเข้าถึงข้อมูลที่เป็น Local Status เช่น ข้อมูล CPU Load, Memory Usage ซึ่งเป็นข้อมูลที่โดยปกติไม่สามารถเข้าถึงได้จากภายนอก จำเป็นต้องติดตั้ง agent ไว้ที่ server ก่อน จากตัวอย่างคือ NSClient++ โดย agent จะส่งข้อมูลที่ต้องการผ่าน port ที่ตั้งค่าไว้ เมื่อ NetHAM รับค่าได้ ก็จะนำมาประมวลผล และแสดงในผลลัพท์ที่ผู้ใช้ต้องการครับ


แหล่งที่มา
เอกสารในงานอบรมการใช้โปรแกรมตรวจสอบสถานะของเครือข่ายและบริการ NetHAM (Network Health Analysis and Monitoring) โดย ชาวีร์ อิสริยภัทร์ , ธนชัย คงพูล
เว็บไซต์ http://nsclient.org/nscp/

ไม่มีความคิดเห็น:

แสดงความคิดเห็น