หลังจากที่ใช้ Web Interface ของ Cacti กันคล่องแล้วจาก How-To 3 ครั้งที่ผ่านมาใน How-To ครั้งนี้มาเอาใจใครหลายคนที่ไม่ชอบ คลิกเม้าส์ อย่างน้อยก็ Writer ท่านหนึ่งใน thaiopensource.org นี่แหละครับ ใน How-To ครั้งนี้จะเป็นหัวข้อเกี่ยวกับ Cacti Scripts ซึ่งเป็น Scripts ที่ Cacti สร้างขึ้นมาในรูปแบบ ของ cli โดยใช้ภาษา php มาเริ่มกันเลย
เข้าไปที่ไดเรกทอรี่ /usr/share/cacti/cli เพื่อเข้าไปใช้งานไฟล์ .php ด้วยคำสั่ง
cd /usr/share/cacti/cli
การเพิ่มอุปกรณ์ใหม่มีขั้นตอนดังนี้
1.เรียกดู Host Template ทั้งหมดด้วยคำสั่ง
php -q add_device.php --list-host-templates
จะปรากฏรายชื่อของ Host Template ทั้งหมดโดยจะแสดงผลเป็น id ตามด้วยชื่อของ Host Template ดังรูป
2.เรียกดู Community Strings ด้วยคำสั่ง
php -q add_device.php --list-communities
จะได้รายการ Community Strings ดังรูป
3.เพิ่มอุปกรณ์ใหม่ด้วยคำสั่ง
php -q add_device.php --description="command" --ip="172.21.14.96" --template=1 --community="public"
โดยทำการเปลี่ยนค่าที่ต้องการดังนี้
- command : ชื่อเครื่องที่ต้องการให้แสดงใน Cacti
- 172.21.14.96 : หมายเลข IP Address ของเครื่องที่ต้องการให้ Cacti ไปนำข้อมูลมาแสดงเป็นกราฟ
- 1 : ค่า ID ของ Host Template ที่ต้องการใช้
- public : ชื่อ Community Strings ที่ต้องการใช้
หลังจากทำการเพิ่มอุปกรณ์ใหม่ด้วยคำสั่งข้างต้นแล้วให้เข้าไปดูที่เว็บเบราว์เซอร์แล้วเลือกที่ Devices จะพบกับชื่อเครื่องที่เราได้ทำเพิ่มมาด้วยคำสั่งดังภาพ
เข้าไปทำการตั้งค่า SNMP ผ่านหน้าเว็บเบราว์เซอร์เนื่องจากคำสั่งไม่สามารถทำการตั้งค่าในส่วนนี้ได้
วิธีการเพิ่มค่า Data Query ให้กับอุปกรณ์ที่มีอยู่เดิมในรายการของ Cacti มีขั้นตอนดังนี้
1.เรียกดูรายชื่ออุปกรณ์ทั้งหมดด้วยคำสั่ง
php -q add_data_query.php --list-hosts
จะแสดงรายชื่อของอุปกรณ์โดยมี ID และชื่อของอุปกรณ์ดังรูป
2.เรียกดูประเภทของ Data Query ด้วยคำสั่ง
php -q add_data_query.php --list-data-queries
จะแสดงรายชื่อชองอุปกรณ์โดยมี ID และชื่อของ Data Query ดังรูป
3.เพิ่ม Data Query ให้กับอุปกรณ์ด้วยคำสั่ง
php -q add_data_query.php --host-id=10 --data-query-id=8 --reindex-method=fields
โดยทำการเปลี่ยน
- 10 : หมายเลข ID ชองอุปกรณ์ที่ต้องการ
- 8 : หมายเลข ID ของ Data Query ที่ต้องการ
ถ้าการเพิ่ม Data Query เสร็จสมบูรณ์มีข้อความปรากฏขึ้นดังรูป
หลังจากทำการเพิ่ม Data Query ด้วยคำสั่งข้างต้นแล้วให้เข้าไปดูที่เว็บเบราว์เซอร์แล้วเลือกที่ Devices กดที่ชื่อเครื่องแล้วไปดูในส่วนของ Associate Data Query จะปรากฏชื่อของ Data Query ที่ทำการเพิ่มด้วยคำสั่งปรากฏขึ้น
วิธีการเพิ่ม Graph Template ให้กับอุปกรณ์ที่มีอยู่เดิมในรายการของ Cacti มีขั้นตอนดังนี้
Graph Template คือรูปแบบของกราฟที่มีการตั้งค่าเฉพาะในการแสดงผลข้อมูลของ Cacti เช่น Graph Template ของการแสดงผลการใช้งาน CPU
1.เรียกดูรายการ Graph Template ทั้งหมดด้วยคำสั่ง
php -q add_graph_template.php --list-graph-templates
จะแสดงรายชื่อชองอุปกรณ์โดยมี ID และชื่อของ Graph Template ดังรูป
2.ทำการเพิ่ม Graph Template ให้อุปกรณ์ด้วยคำสั่ง
php -q add_graph_template.php --host-id=10 --graph-template-id=11
โดยทำการเปลี่ยน
- 10 : หมายเลข ID ชองอุปกรณ์ที่ต้องการ
- 11 : หมายเลข ID ของ Graph Template ที่ต้องการ
- ถ้าการเพิ่ม Graph Template เสร็จสมบูรณ์มีข้อความปรากฏขึ้นดังรูป
หลังจากทำการเพิ่ม Graph Template ด้วยคำสั่งข้างต้นแล้วให้เข้าไปดูที่เว็บเบราว์เซอร์แล้วเลือกที่ Devices กดที่ชื่อเครื่องแล้วไปดูในส่วนของ Associate Graph Template จะปรากฏชื่อของ Graph Template ที่ทำการเพิ่มด้วยคำสั่งปรากฏขึ้น
คำสั่งในการจัดการ Tree มีดังนี้
เรียกดู Tree ทั้งหมดใช้คำสั่ง
php -q add_tree.php --list-trees
เรียกดู RRAs ทั้งหมดใช้คำสั่ง
php -q add_tree.php --list-rras
เรียกดู Nodes ทั้งหมดใช้คำสั่ง
php -q add_tree.php --list-nodes --tree-id=1
เรียกดูรายการการจับคู่ระหว่างอุปกรณ์ที่ต้องการกับกราฟใช้คำสั่ง
php -q add_tree.php --list-graphs --host-id=1
โดยทำการเปลี่ยนค่า host-id เป็นหมายเลขของอุปกรณ์ที่ต้องการเรียกดูการสร้าง Tree ใช้คำสั่ง
php -q add_tree.php --type=tree --name="TreeCommand" --sort-method=manual
โดยทำการเปลี่ยนค่า TreeCommand : ชื่อของ Tree
หลังจากทำการสร้าง Tree ด้วยคำสั่งข้างต้นแล้วให้เข้าไปดูที่เว็บเบราว์เซอร์แล้วเลือกที่ Graph Trees จะปรากกฏชื่อของ Tree ที่สร้างขึ้นมาใหม่ดังรูป
เพิ่มกราฟใน Tree ที่สร้างขึ้นใหม่ด้วยคำสั่ง
php -q add_tree.php --type=node --node-type=graph --tree-id=4 --graph-id=67 --rra-id=1
โดยทำการเปลี่ยนค่า
- 4 : ID ของ Tree ที่ต้องการเพิ่มกราฟ
- 67 : LID ของกราฟที่ต้องการ
- 1 : ID ของชนิด RRa ที่ต้องการ
หลังจากทำการเพิ่มกราฟใน Tree ด้วยคำสั่งข้างต้นแล้วให้เข้าไปดูที่เว็บเบราว์เซอร์แล้วเลือกที่ Graph Trees เลือกที่ชื่อ Tree ที่เราได้ทำการเพิ่มกราฟจะปรากฏรายชื่อของกราฟดังรูป
การกำหนดสิทธิ์ของบัญชีผู้ใช้กับ Tree ใช้คำสั่ง
php -q add_perms.php --user-id=4 --item-type=tree --item-id=1
โดยทำการเปลี่ยนค่า
- 4 : ID ของบัญชีผู้ใช้
- 1 : ID ของ Tree
การกำหนดสิทธิ์ของบัญชีผู้ใช้กับ Graph Template ใช้คำสั่ง
php -q add_perms.php --user-id=4 --item-type=graph_template --item-id=25
โดยทำการเปลี่ยนค่า
- 4 : ID ของบัญชีผู้ใช้
- 25 : ID ของ Graph Template
การกำหนดสิทธิ์ของบัญชีผู้ใช้กับกราฟใช้คำสั่ง
php -q add_perms.php --user-id=4 --item-type=graph --item-id=8
โดยทำการเปลี่ยนค่า
- 4 : ID ของบัญชีผู้ใช้
- 8 : ID ของกราฟ
คำสั่งในการคัดลอกบัญชีผู้ใช้ใช้คำสั่ง
php -q copy_user.php opensource "commanduser"
โดยทำการเปลี่ยนค่า
- opensource : บัญชีผู้ใช้ที่เป็นต้นแบบในการคัดลอก
- commanduser : เป็นบัญชีผู้ใช้ใหม่ที่ได้มาจากการคัดลอก
คำสั่ง Rebuild Poller Cache ใช้คำสั่ง
php -q rebuild_poller_cache.php
คำสั่ง Re-Index Hosts ใช้คำสั่ง
php -q poller_reindex_hosts.php -id=All
คำสั่ง Empty Poller Output Table ใช้คำสั่ง
php -q poller_output_empty.php
คำสั่ง Cacti Scripts คงทำให้การเล่น Cacti นั้นสะดวกและง่ายขึ้นนะครับ