วันอาทิตย์ที่ 6 กรกฎาคม พ.ศ. 2557

ทำไม Cacti ไม่สร้างกราฟ

วันนี้จะทดสอบว่าทำไม Cacti ไม่สร้างกราฟ
โจทย์คือ
1. ทำการติดตั้ง Cacti บน Ubuntu 13.10 Desktop
2. ให้สร้างกราฟปริมาณการใช้งานของ Wireless  1 ตัว

ก่อนอื่นเลยให้ทำการติดตั้ง Ubuntu 13.10 Desktop (ที่เลือก Desktop เพราะจะนำไปสอนด้วยครับ)
สำหรับผู้ที่ไม่เคยติดตั้งให้ทำตามลิงค์ข้างล่างได้เลย

ติดตั้ง Ubuntu 13.10 Desktop บน Vmware เพื่อลง CactiและWeather Map (ตอนที่1)

เมื่อทำการติดตั้งเสร็จแล้วให้พิมพ์คำสั่งต่อไปนี้ เพื่อ Update และ Upgrade แพ็คเกจให้ใหม่ล่าสุด
$sudo su
[sudo] password for testadmin: ใส่รหัสผ่าน
root@ubuntu:/home/testadmin#
#apt-get update
#apt-get upgrade

เสร็จกระบวนการ upgrade แล้ว ก็ติดตั้ง Cacti กันเลย โดยในตัวอย่างนี้ จะให้ระบบทำการติดตั้งแพ็คเกจที่จำเป็นทั้งหมดเลย (แบบง่ายที่สุด แต่ผู้ติดตั้งต้องมีพื้นฐานระบบพอสมควร)

ขั้นตอนติดตั้ง Cacti และ Cacti-spine
โดยพิมพ์คำสั่ง
#apt-get install cacti cacti-spine

ระบบให้กำหนดรหัส root 
  ให้ใส่รหัส MySQL
  ยืนยันรหัส MySQL

ระบแจ้งเตือนเปลี่ยนค่า php

ระบบให้เลือก web server  ก็ให้เลือก apache2

ระบบแจ้งเตือนการตั้งค่า cacti
  ให้ใส่รหัส database's administrative user:
  ให้ใส่รหัส Mysql สำหรับ Cacti :
  ยืนยันรหัส :

แค่นี้ก็เสร็จสิ้นการติดตั้งแพ็คเกจทั้งหมดที่เกี่ยวข้องกับ Cacti

ขั้นตอนติดตั้ง Cacti ผ่านเบราเซอร์
ให้เปิดเบราเซอร์ http://localhost/cacti
next
next
ตรวจสอบว่าแพ็คเกจครับหรือไม่ ถ้าครบ
finish

ระบบจะเข้าให้ User Login
ใส่ admin / admin
เปลี่ยนรหัสผ่าน
password / password

เสร็จสิ้นขั้นตอนติดตั้ง cacti
เราก็จะได้หน้าจอดังภาพ ถือว่า สมูบรณ์ ดังรูป



เราได้ทำการติดตั้ง cacti-spine มาด้วยเพื่อให้การดึงข้อมูลเร็วขึ้น
เมนู Setting >  Poller
ตรง Poller Type ให้เปลี่ยนจาก cmd.php มาเปลี่ยน spine
Save

ต่อมาให้ทำการเพิ่มอุปกรณ์เพื่อจะสร้างกราฟปริมาณข้อมูลที่วิ่ง เข้า-ออก Wireless
เมนู Devices > Add
Description : ชื่ออุปกรณ์  , Hostname : ไอพี , Host Template : Cisco Router
Create

ขั้นตอนต่อมาให้สร้างกราฟ
เมนู Devices > ชื่ออุปกรณ์ > Create Graphs for this Host
เลือก interface ที่ต้องการจับ Traffic
Create

เมื่อเพิ่มอุปกรณ์เรียบร้อยแล้ว ก็มาเพิ่มใน Graph Trees
เมนู Grapg Trees > Default > Add >  Tree item Type : Host และ Host : ชื่ออุปกรณ์
Create

เสร็จแล้ว ให้ทำการเพิ่มคำสั่งใน crontab ให้พิมพ์ crontab –e แล้วพิมพ์คำสั่งต่อไปนี้ลงไป
*/5 * * * * www-data php /usr/share/cacti/site/poller.php > /dev/null 2>&1
บันทึกแล้วทำการรีสตาร์ต crontab ด้วยคำสั่ง

#/etc/init.d/cron restart
รออีก 5 นาที Cacti ถึงจะสร้างกราฟ Traffic ขึ้นมา

รอแล้ว ก็รออีก ไม่มาจริงๆ แห่ะ 


อ้าวมาถึงวิธีการที่เราจะเริ่มตรวจสอบปัญหาที่เกิดขึ้นทีละขั้นตอน
1. ตรวจสอบว่า poller.php ทำงานปกติหรือไม่

พิมพ์คำสั่ง
#php /usr/share/cacti/site/poller.php
error ปรากฎ
PHP Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected the timezone 'UTC' for now, but please set date.timezone to select your timezone. in /usr/share/cacti/site/include/global_arrays.php on line 677
สรุปก็คือเกี่ยวกับ ฟังก์ชั่น วันเวลาใน php ไม่สามารถดึงข้อมูลได้ 

2. ทำการตั้งเวลาให้เครื่องให้ตรงกับวันเวลาจริง
ให้พิมพ์คำสั่ง
#date  ดูวัน เวลาของเครื่อง
# ln -sf /usr/share/zoneinfo/Asia/Bangkok /etc/localtime
#ntpdate time1.nimt.or.th

3. มาแก้ค่าใน php.ini
อัพเดรตฐาน เพื่อการค้นหา
#updatedb
ค้นหาว่า php.ini มีอยู่ที่ไหนบ้าง
#locate php.ini
เราสนใจแค่ 2 ตัวนี้ครับ (เคยแก้แค่ตัวเดียวแล้วไม่ผ่าน)
/etc/php5/apache2/php.ini
/etc/php5/cli/php.ini

ให้พิมพ์คำสั่ง
#pico /etc/php5/apache2/php.ini
ค้นหา date.timezone  เอา ; ออก แล้วพิมพ์
date.timezone = “Asia/Bangkok”
#pico /etc/php5/cli/php.ini
ค้นหา date.timezone  เอา ; ออก แล้วพิมพ์
date.timezone = “Asia/Bangkok”

4. #service apache2 restart

5. ทดสอบการทำงานของ php อีกครั้ง
#php /usr/share/cacti/site/poller.php
ผล
OK u:0.00 s:0.00 r:0.00
OK u:0.00 s:0.01 r:0.02
OK u:0.00 s:0.01 r:0.07
OK u:0.00 s:0.01 r:0.12
OK u:0.00 s:0.01 r:0.21
OK u:0.00 s:0.01 r:0.28
OK u:0.00 s:0.01 r:0.31
OK u:0.00 s:0.01 r:0.37
OK u:0.00 s:0.01 r:0.42
07/06/2014 02:59:32 PM - SYSTEM STATS: Time:0.5771 Method:cmd.php Processes:1 Threads:N/A Hosts:3 HostsPerProcess:3 DataSources:13 RRDsProcessed:9
เรียบร้อยแล้วครับ แค่นี้ cacti ก็จะสามารถดึงข้อมูลผ่าน php ได้แล้ว อิอิ


ความยากไม่มี ถ้าไม่คิดจะทำ ฉะนั้นใครว่ามันยาก แสดงว่ามันไม่เคยทำต่างหาก

2 ความคิดเห็น:

  1. ขอโทดนะครับผมขอสอบถามหน่อยครับ พอดีผม Set up Cacti ขึ้นมาแล้ว แต่ว่า กราฟไม่มีการแสดงผล ผมทำตามของคุณแล้วแต่ก็ยังไม่ได้อะครับ ลอง Export ข้อมูลออกมาในรูปแบบของ Excel แต่ข้อมูลที่ได้ก็จะเป็นแบบนี้อะครับ Date = ######## Total = Nan Used = Nan ผมต้องทำการแก้ไขตรงส่วนไหนหลอครับ ขอบคุณครับ

    ตอบลบ
  2. ไม่ระบุชื่อ30 มีนาคม 2565 เวลา 18:23

    How To Network And Server: ทำไม Cacti ไม่สร้างกราฟ >>>>> Download Now

    >>>>> Download Full

    How To Network And Server: ทำไม Cacti ไม่สร้างกราฟ >>>>> Download LINK

    >>>>> Download Now

    How To Network And Server: ทำไม Cacti ไม่สร้างกราฟ >>>>> Download Full

    >>>>> Download LINK

    ตอบลบ