โลโก้ Zabbix
อันดับ 22 ใน Top 100 Monitoring และ ObservabilityAGPLv3 (โอเพนซอร์ส)

Zabbix คืออะไร และวิธีติดตั้งบน Cloud Server

Zabbix คือระบบเฝ้าระวังโอเพนซอร์สที่ติดตามได้ทั้งเซิร์ฟเวอร์ อุปกรณ์เครือข่าย ฐานข้อมูล และบริการต่าง ๆ พร้อมแจ้งเตือนก่อนที่ผู้ใช้จะรู้ตัวว่าระบบมีปัญหา

หมวดหมู่
Monitoring และ Observability
ติดตั้งบนเซิร์ฟเวอร์เองได้
ได้
สเปกเริ่มต้นที่แนะนำ
2 vCPU · RAM 4 GB
ไลเซนส์
AGPLv3 (โอเพนซอร์ส)
เว็บทางการ
เปิดเว็บไซต์
สร้าง Cloud Server เดี๋ยวนี้
  • ISO/IEC 27001
  • ISO 22301
  • ISO 20000-1
  • CSA-STAR

Data Center ในไทย มาตรฐาน TIA-942 Tier 3+ ข้อมูลอยู่ในประเทศไทย

Zabbix คืออะไร

Zabbix เก็บค่าสถานะจากอุปกรณ์ที่ดูแลตามรอบ ทั้งการใช้ CPU หน่วยความจำ ดิสก์ ทราฟฟิกเครือข่าย และสถานะบริการ แล้วเปรียบเทียบกับเกณฑ์ที่ตั้งไว้เพื่อแจ้งเตือนเมื่อผิดปกติ

จุดแข็งคือความครอบคลุม รองรับตั้งแต่เซิร์ฟเวอร์ที่ติดตั้ง Agent ไปจนถึงสวิตช์และเราเตอร์ผ่าน SNMP รวมถึงการตรวจสอบเว็บและใบรับรอง SSL โดยไม่ต้องซื้อโมดูลเพิ่ม

สิ่งที่ต้องวางแผนคือฐานข้อมูล เพราะ Zabbix เขียนข้อมูลลงฐานตลอดเวลา เมื่อจำนวนอุปกรณ์เพิ่มขึ้น ฐานข้อมูลจะกลายเป็นคอขวด จึงควรใช้ดิสก์ NVMe และตั้งนโยบายเก็บข้อมูลย้อนหลังให้เหมาะสม

แผนผังการวางระบบ Zabbix บน Cloud Server หนึ่งเครื่องที่ Data Center ในประเทศไทย ผู้ใช้เข้าถึงผ่านไฟร์วอลล์ที่เปิดเฉพาะพอร์ต 443, 10051, 10050 ตัว Zabbix และข้อมูลอยู่บนเครื่องเดียวกัน เริ่มต้นที่ 2 vCPU แรม 4 GB และมีสำเนาสำรองเขียนออกไปเก็บอีกไซต์หนึ่ง
Zabbix ทำงานบน Cloud Server เครื่องเดียวได้ครบ เปิดเฉพาะพอร์ตที่จำเป็น ข้อมูลและสำเนาสำรองอยู่ใน Data Center ในประเทศไทย

ความสามารถเด่นของ Zabbix

เฝ้าระวังได้ทุกอย่าง

เซิร์ฟเวอร์ผ่าน Agent อุปกรณ์เครือข่ายผ่าน SNMP ฐานข้อมูล เว็บไซต์ และใบรับรอง SSL

แจ้งเตือนหลายช่องทาง

ส่งเข้าอีเมล LINE Telegram หรือระบบ Ticket ขององค์กรได้ตามเงื่อนไขที่กำหนด

ค้นหาอุปกรณ์อัตโนมัติ

สแกนช่วงไอพีเพื่อเพิ่มอุปกรณ์ใหม่เข้าระบบเฝ้าระวังโดยไม่ต้องเพิ่มทีละเครื่อง

เทมเพลตสำเร็จรูป

มีเทมเพลตสำหรับ Linux, Windows, MySQL, Nginx และอุปกรณ์ยี่ห้อหลักให้ใช้ทันที

กราฟและแดชบอร์ด

ดูแนวโน้มย้อนหลังเพื่อวางแผนขยายระบบก่อนที่ทรัพยากรจะเต็ม

ก่อนติดตั้ง Zabbix ควรตอบให้ได้ว่าจะเฝ้าระวังอะไร

ระบบเฝ้าระวังที่ตั้งค่าโดยไม่วางแผนมักจบลงด้วยการแจ้งเตือนวันละหลายร้อยรายการจนทีมเลิกอ่าน ซึ่งอันตรายกว่าการไม่มีระบบเฝ้าระวังเลย เพราะเมื่อเกิดเหตุจริงการแจ้งเตือนนั้นจะจมอยู่ในกองข้อความที่ไม่มีใครดู

วิธีที่ใช้ได้จริงคือไล่จากสิ่งที่ผู้ใช้รู้สึกลงไปหาสาเหตุ เริ่มจากถามว่าถ้าบริการนี้ใช้งานไม่ได้ ผู้ใช้จะรู้ได้อย่างไร แล้วค่อยกำหนดตัวชี้วัดที่บอกอาการนั้นล่วงหน้า เช่น เว็บช้าลงก่อนจะล่ม ดิสก์เต็มก่อนจะเขียนข้อมูลไม่ได้

เมื่อจัดลำดับได้แล้วจึงเลือกว่าจะเก็บค่าอะไรจากแต่ละชั้น ซึ่งเป็นสิ่งที่กำหนดว่าเทมเพลตไหนควรผูกกับอุปกรณ์ไหน และเกณฑ์แจ้งเตือนควรตั้งที่เท่าไร

  • ชั้นฮาร์ดแวร์และระบบปฏิบัติการ ทั้งการใช้ CPU หน่วยความจำ พื้นที่ดิสก์ และอุณหภูมิอุปกรณ์
  • ชั้นบริการ เช่น เว็บเซิร์ฟเวอร์และฐานข้อมูลยังตอบสนองอยู่หรือไม่ และตอบช้าเพียงใด
  • ชั้นแอปพลิเคชัน เช่น จำนวนคำขอที่ผิดพลาด ความยาวคิวงาน และเวลาประมวลผลของงานสำคัญ
  • ชั้นประสบการณ์ผู้ใช้ เช่น เวลาโหลดหน้าเว็บจากภายนอกและวันหมดอายุของใบรับรอง
  • ชั้นเครือข่าย เช่น ปริมาณทราฟฟิกและการสูญเสียแพ็กเก็ตของอุปกรณ์หลัก

ออกแบบการแจ้งเตือนให้ทีมยังอ่านอยู่หลังผ่านไปหกเดือน

การแจ้งเตือนที่ดีต้องบอกได้สามอย่างในข้อความเดียว คืออะไรผิดปกติ กระทบใคร และสิ่งแรกที่ควรทำคืออะไร ถ้าผู้รับต้องเปิดหลายหน้าจอเพื่อเข้าใจว่าเกิดอะไรขึ้น การแจ้งเตือนนั้นยังไม่พร้อมใช้งานจริง

แนวปฏิบัติที่ลดเสียงรบกวนได้มากที่สุดคือแยกระดับความรุนแรงให้ชัด แล้วส่งคนละช่องทางตามระดับ เรื่องที่ต้องลุกมาแก้กลางดึกส่งเข้าช่องทางที่ปลุกคนได้ ส่วนเรื่องที่รอเช้าได้ให้ไปรวมในสรุปรายวัน

อีกจุดที่ควรตั้งตั้งแต่ต้นคือเงื่อนไขเวลา ค่าที่กระโดดขึ้นชั่วขณะแล้วกลับเป็นปกติไม่ควรแจ้งเตือน ให้ตั้งว่าต้องผิดปกติต่อเนื่องกี่นาทีจึงถือว่าเป็นเหตุจริง วิธีนี้ตัดการแจ้งเตือนลวงออกไปได้เกือบทั้งหมด

  • ระดับวิกฤต กระทบผู้ใช้แล้ว ต้องแจ้งทันทีทุกช่วงเวลา
  • ระดับเตือน มีแนวโน้มจะกระทบ เช่น ดิสก์เหลือน้อยกว่า 20 เปอร์เซ็นต์ ให้แจ้งในเวลาทำการ
  • ระดับข้อมูล เก็บไว้ดูแนวโน้มและวางแผนขยายระบบ ไม่ต้องแจ้งเตือน
  • กำหนดผู้รับผิดชอบต่อบริการ เพื่อให้การแจ้งเตือนถึงคนที่แก้ได้จริง
  • ทบทวนรายการที่แจ้งเตือนบ่อยทุกไตรมาส เพื่อแก้ต้นเหตุหรือปรับเกณฑ์ให้เหมาะ

ใช้ Zabbix ทำอะไรได้บ้าง

  • องค์กรที่ต้องเฝ้าระวังเซิร์ฟเวอร์และอุปกรณ์เครือข่ายจำนวนมากจากศูนย์เดียว
  • ผู้ให้บริการที่ต้องรายงาน SLA และเวลาที่ระบบใช้งานได้
  • หน่วยงานที่ต้องมีระบบเฝ้าระวังตามข้อกำหนดด้านความมั่นคงปลอดภัย
  • ทีมไอทีที่อยากรู้ปัญหาก่อนที่ผู้ใช้จะโทรมาแจ้ง

สเปก Cloud Server ที่แนะนำ

แผนภาพเทียบสเปก Cloud Server สำหรับ Zabbix 3 ระดับ เริ่มจาก 2 vCPU แรม 4 GB ดิสก์ NVMe 60 GB ไปจนถึง 8 vCPU ขึ้นไป แรม 16 GB ขึ้นไป ดิสก์ NVMe 500 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นเฝ้าระวังไม่เกิน 50 อุปกรณ์2 vCPU4 GBNVMe 60 GB
แนะนำ50 ถึง 300 อุปกรณ์พร้อมเก็บข้อมูลย้อนหลัง4 vCPU8 GBNVMe 200 GB
องค์กรใหญ่มากกว่า 300 อุปกรณ์ ควรแยกเครื่องฐานข้อมูลออกไป8 vCPU ขึ้นไป16 GB ขึ้นไปNVMe 500 GB ขึ้นไป

ดูราคาตามสเปกได้ที่ ราคา Cloud Compute หรือให้ทีมงานช่วยประเมินสเปกจากปริมาณผู้ใช้จริงของคุณ

วิธีติดตั้ง Zabbix บน Cloud Server ของ THAI DATA CLOUD

ขั้นตอนด้านล่างใช้กับ Cloud Server ที่เพิ่งสร้างใหม่จากหน้าจัดการของ THAI DATA CLOUD ได้ทันที ถ้าไม่สะดวกทำเอง ทีมวิศวกรของเราติดตั้งและตั้งค่าให้ฟรีสำหรับลูกค้า Cloud Server

สิ่งที่ต้องเตรียม

  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • MySQL, MariaDB หรือ PostgreSQL สำหรับเก็บข้อมูล
  • Nginx หรือ Apache พร้อม PHP สำหรับหน้าเว็บ
  • ดิสก์ NVMe เพราะระบบเขียนข้อมูลตลอดเวลา

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    เพิ่มที่เก็บแพ็กเกจของ Zabbix

    ตรวจเลขเวอร์ชันล่าสุดจากเว็บทางการก่อน แล้วแทนในลิงก์ด้านล่าง

    wget https://repo.zabbix.com/zabbix/7.0/ubuntu/pool/main/z/zabbix-release/zabbix-release_7.0-2+ubuntu24.04_all.deb
    sudo dpkg -i zabbix-release_7.0-2+ubuntu24.04_all.deb
    sudo apt update
  2. 2

    ติดตั้งเซิร์ฟเวอร์ หน้าเว็บ และ Agent

    sudo apt -y install zabbix-server-mysql zabbix-frontend-php \
      zabbix-nginx-conf zabbix-sql-scripts zabbix-agent mariadb-server
  3. 3

    สร้างฐานข้อมูลและนำเข้าโครงสร้าง

    sudo mysql -e "CREATE DATABASE zabbix CHARACTER SET utf8mb4 COLLATE utf8mb4_bin;"
    sudo mysql -e "CREATE USER 'zabbix'@'localhost' IDENTIFIED BY 'ChangeThisStrongPassword';"
    sudo mysql -e "GRANT ALL ON zabbix.* TO 'zabbix'@'localhost'; SET GLOBAL log_bin_trust_function_creators = 1;"
    zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql -uzabbix -p zabbix
  4. 4

    ตั้งรหัสผ่านฐานข้อมูลในไฟล์ตั้งค่า

    แก้ /etc/zabbix/zabbix_server.conf ที่บรรทัด DBPassword แล้วเริ่มบริการ

    sudo systemctl restart zabbix-server zabbix-agent nginx php8.3-fpm
    sudo systemctl enable zabbix-server zabbix-agent nginx php8.3-fpm
  5. 5

    ตั้งค่าครั้งแรกผ่านหน้าเว็บ

    เปิดหน้าเว็บของเซิร์ฟเวอร์แล้วทำตามตัวช่วย เข้าสู่ระบบครั้งแรกด้วยผู้ใช้ Admin และรหัสผ่าน zabbix จากนั้นเปลี่ยนรหัสผ่านทันที

  6. 6

    ติดตั้ง Agent บนเครื่องที่ต้องการเฝ้าระวัง

    sudo apt -y install zabbix-agent2
    sudo sed -i "s/^Server=.*/Server=10.10.0.50/" /etc/zabbix/zabbix_agent2.conf
    sudo systemctl restart zabbix-agent2

ตั้งนโยบายเก็บข้อมูลย้อนหลังตั้งแต่แรก เช่น เก็บค่าดิบ 7 วันและค่าสรุป 1 ปี เพื่อไม่ให้ฐานข้อมูลโตจนควบคุมไม่ได้

พอร์ตที่ต้องเปิดบน Firewall

พอร์ตโปรโตคอลใช้ทำอะไร
443TCPหน้าเว็บของ Zabbix
10051TCPZabbix Server รับข้อมูลจาก Agent
10050TCPZabbix Agent บนเครื่องที่ถูกเฝ้าระวัง

สิ่งที่ควรทำต่อหลังติดตั้งเสร็จ

  • เปลี่ยนรหัสผ่านผู้ใช้ Admin ทันทีหลังติดตั้ง
  • ให้ Agent รับการเชื่อมต่อเฉพาะจากไอพีของ Zabbix Server
  • เปิดการเข้ารหัสระหว่าง Server กับ Agent เมื่อข้ามเครือข่ายที่ไม่น่าเชื่อถือ
  • จำกัดสิทธิ์ผู้ใช้ในระบบตามบทบาท ไม่ให้ทุกคนแก้เกณฑ์การแจ้งเตือนได้
  • สำรองฐานข้อมูลและไฟล์ตั้งค่าตามรอบ

ทำไมควรรัน Zabbix บน Cloud Server ของ THAI DATA CLOUD

Data Center ในประเทศไทย มาตรฐาน ISO/IEC 27001 และ ISO 22301 พร้อมทีมวิศวกรคนไทยดูแลตลอด 24 ชั่วโมง

ควรวางระบบเฝ้าระวังไว้คนละเครื่องกับระบบที่เฝ้าระวัง Cloud Server อีกเครื่องจึงเป็นทางเลือกที่ตรงและถูกที่สุด

เฝ้าระวังได้ทั้งเครื่องบนคลาวด์และเครื่องในสำนักงานผ่าน VPN Gateway ในระบบเดียว

ขยายดิสก์ได้เมื่อข้อมูลย้อนหลังสะสมมากขึ้น โดยไม่ต้องย้ายระบบ

คำถามที่พบบ่อยเกี่ยวกับ Zabbix

Zabbix ต่างจาก Grafana อย่างไร

Zabbix เป็นระบบเฝ้าระวังครบวงจร ทั้งเก็บข้อมูล ตั้งเกณฑ์ และแจ้งเตือน ส่วน Grafana เป็นเครื่องมือทำแดชบอร์ดที่ต้องมีแหล่งข้อมูลอื่นป้อนให้ หลายองค์กรใช้ Zabbix เก็บข้อมูลแล้วแสดงผลผ่าน Grafana

แจ้งเตือนเข้า LINE ได้ไหม

ได้ ตั้งเป็น Webhook ที่ยิงไปยัง LINE Notify หรือ Messaging API ตามที่องค์กรใช้ และกำหนดเงื่อนไขว่าจะแจ้งเฉพาะเหตุการณ์ระดับใด

เฝ้าระวังกี่เครื่องถึงต้องแยกเครื่องฐานข้อมูล

โดยทั่วไปเมื่อเกิน 300 อุปกรณ์หรือเริ่มเห็นว่าหน้าเว็บช้าและกราฟโหลดนาน นั่นคือสัญญาณว่าควรแยกฐานข้อมูลออกไปอีกเครื่องและใช้ดิสก์ NVMe

บริการของ THAI DATA CLOUD ที่เกี่ยวข้อง

ให้เราติดตั้ง Zabbix ให้ฟรี บน Cloud Server ในไทย

แจ้งความต้องการสั้น ๆ ทีมวิศวกรจะช่วยประเมินสเปก ติดตั้ง และตั้งค่าความปลอดภัยให้พร้อมใช้งาน ปรึกษาฟรี ไม่มีข้อผูกมัด