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

Nagios คือระบบเฝ้าระวังเซิร์ฟเวอร์และบริการที่อยู่คู่กับงานดูแลระบบมายาวนาน แนวคิดคือรันสคริปต์ตรวจสอบตามรอบแล้วแจ้งเตือนเมื่อผลลัพธ์ผิดปกติ

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

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

Nagios คืออะไร

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

ผลที่ตามมาคือมีสคริปต์ตรวจสอบจากชุมชนจำนวนมหาศาลสะสมมาหลายสิบปี ครอบคลุมทั้งบริการมาตรฐาน อุปกรณ์เครือข่าย และระบบเฉพาะทาง

ข้อจำกัดเมื่อเทียบกับระบบสมัยใหม่คือการตั้งค่าอยู่ในไฟล์ข้อความและหน้าจอค่อนข้างเก่า อีกทั้งการเก็บข้อมูลย้อนหลังเพื่อดูแนวโน้มต้องอาศัยส่วนเสริม ทีมที่เริ่มใหม่จึงมักเลือก Zabbix หรือ Prometheus แทน

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

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

ตรวจสอบด้วยสคริปต์อะไรก็ได้

เขียนตัวตรวจสอบเองได้ทุกอย่างที่สั่งด้วยคำสั่งได้

สคริปต์จากชุมชนจำนวนมาก

มีตัวตรวจสอบสำเร็จรูปสะสมมายาวนานครอบคลุมแทบทุกบริการ

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

ส่งอีเมล ข้อความ หรือเรียกสคริปต์เพื่อส่งเข้าแชทขององค์กร

กำหนดความสัมพันธ์ของระบบได้

ไม่แจ้งเตือนซ้ำซ้อนเมื่ออุปกรณ์ต้นทางที่ทุกอย่างพึ่งพาล่ม

ใช้ทรัพยากรน้อย

รันบนเครื่องสเปกเล็กได้แม้ตรวจสอบหลายสิบเครื่อง

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

  • องค์กรที่ใช้ Nagios อยู่แล้วและมีสคริปต์ตรวจสอบสะสมไว้มาก
  • การเฝ้าระวังบริการพื้นฐานว่ายังทำงานอยู่หรือไม่
  • ระบบที่ต้องตรวจสอบด้วยเงื่อนไขเฉพาะที่เขียนสคริปต์เอง
  • ทีมที่ต้องการระบบเฝ้าระวังที่ใช้ทรัพยากรน้อย

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

แผนภาพเทียบสเปก Cloud Server สำหรับ Nagios 3 ระดับ เริ่มจาก 2 vCPU แรม 2 GB ดิสก์ NVMe 40 GB ไปจนถึง 4 vCPU ขึ้นไป แรม 8 GB ขึ้นไป ดิสก์ NVMe 150 GB ขึ้นไป โดยเทียบขนาดแยกตามแต่ละคอลัมน์
เริ่มจากระดับที่ตรงกับการใช้งานตอนนี้ แล้วเพิ่ม CPU และ RAM ทีหลังได้บนเครื่องเดิม
ระดับการใช้งานvCPURAMDisk
เริ่มต้นเฝ้าระวังไม่เกินหลายสิบเครื่อง2 vCPU2 GBNVMe 40 GB
แนะนำองค์กรขนาดกลางที่ตรวจสอบหลายร้อยรายการ2 vCPU4 GBNVMe 80 GB
ใช้งานหนักตรวจสอบจำนวนมากและเก็บกราฟย้อนหลัง4 vCPU ขึ้นไป8 GB ขึ้นไปNVMe 150 GB ขึ้นไป

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

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

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

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

  • Ubuntu Server 24.04 LTS หรือ Rocky Linux 9
  • Apache หรือ Nginx พร้อม PHP สำหรับหน้าจอ
  • ช่องทางส่งอีเมลที่ใช้งานได้จริง

ทดสอบบน Ubuntu Server 24.04 LTS

  1. 1

    ติดตั้ง Nagios และชุดตัวตรวจสอบ

    sudo apt update
    sudo apt -y install nagios4 monitoring-plugins nagios-nrpe-plugin apache2
  2. 2

    ตั้งรหัสผ่านสำหรับเข้าหน้าจอ

    sudo htpasswd -c /etc/nagios4/htdigest.users nagiosadmin
  3. 3

    เพิ่มเครื่องที่ต้องการเฝ้าระวัง

    สร้างไฟล์ตั้งค่าต่อเครื่องในโฟลเดอร์ conf.d แล้วกำหนดบริการที่ต้องตรวจสอบ

    define host {
      use             generic-host
      host_name       web01
      address         10.10.0.11
    }
    
    define service {
      use                   generic-service
      host_name             web01
      service_description   HTTPS
      check_command         check_http!-S
    }
  4. 4

    ตรวจไฟล์ตั้งค่าก่อนรีสตาร์ต

    ขั้นตอนนี้สำคัญมาก เพราะไฟล์ที่ผิดจะทำให้บริการไม่เริ่มและระบบเฝ้าระวังเงียบไปทั้งระบบ

    sudo nagios4 -v /etc/nagios4/nagios.cfg
    sudo systemctl restart nagios4
  5. 5

    ติดตั้งตัวแทนบนเครื่องปลายทาง

    ติดตั้งตัวแทนบนเครื่องที่ต้องการดูค่าภายใน เช่น พื้นที่ดิสก์และภาระงาน แล้วอนุญาตเฉพาะไอพีของเซิร์ฟเวอร์เฝ้าระวัง

    sudo apt -y install nagios-nrpe-server
    # ใน /etc/nagios/nrpe.cfg
    allowed_hosts=127.0.0.1,10.10.0.90
  6. 6

    ตั้งการแจ้งเตือน

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

ตรวจไฟล์ตั้งค่าด้วยคำสั่งตรวจสอบทุกครั้งก่อนรีสตาร์ต เพราะไฟล์ที่ผิดเพียงบรรทัดเดียวทำให้ระบบเฝ้าระวังหยุดทำงานทั้งหมดโดยไม่มีใครรู้

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

พอร์ตโปรโตคอลใช้ทำอะไร
443TCPหน้าจอผ่าน HTTPS (ควรจำกัดไอพี)
5666TCPการเชื่อมต่อไปยังตัวแทนบนเครื่องปลายทาง

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

  • จำกัดไอพีที่เข้าหน้าจอได้และใช้ HTTPS เสมอ
  • อนุญาตให้ตัวแทนรับคำสั่งเฉพาะจากไอพีของเซิร์ฟเวอร์เฝ้าระวัง
  • ไม่เปิดให้ตัวแทนรันคำสั่งที่รับพารามิเตอร์จากภายนอกโดยไม่จำเป็น
  • สำรองไฟล์ตั้งค่าทั้งหมดเพราะเป็นหัวใจของระบบ

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

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

ตรวจสอบเซิร์ฟเวอร์ทุกเครื่องผ่าน Private Network ในไทยโดยไม่ต้องเปิดพอร์ตสู่ภายนอก

รันบน Cloud Server สเปกเล็กได้เพราะใช้ทรัพยากรน้อย

ตั้งเครื่องเฝ้าระวังสำรองไว้คนละโซนเพื่อให้ยังแจ้งเตือนได้เมื่อโซนหลักมีปัญหา

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

Nagios กับ Zabbix เลือกอะไรดี

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

ยังใช้งานได้อยู่ไหม

ใช้ได้และยังมีองค์กรใช้จำนวนมาก โดยเฉพาะที่ต้องการระบบเบาและตรวจสอบด้วยสคริปต์ของตัวเอง เพียงแต่การตั้งค่าต้องแก้ไฟล์เป็นหลักและหน้าจอไม่ทันสมัยเท่าระบบใหม่

ดูกราฟย้อนหลังได้ไหม

แกนหลักเน้นการตรวจสถานะและแจ้งเตือน การเก็บข้อมูลย้อนหลังเพื่อทำกราฟต้องใช้ส่วนเสริมเพิ่ม ถ้าต้องการกราฟและการวิเคราะห์แนวโน้มเป็นหลัก Zabbix หรือ Prometheus คู่กับ Grafana จะตรงกว่า

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

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