[Info] Hướng dẫn tạo Telegram Bot theo dõi CPU và tiến trình của VPS

Telegram bot có thể được sử dụng một cách hiệu quả để theo dõi và quản lý máy chủ VPS (Virtual Private Server). Dưới đây là một số công dụng cụ thể của Telegram bot trong việc theo dõi VPS:

  1. Thông Báo và Cảnh Báo Tự Động: Bot có thể được cấu hình để gửi thông báo tự động đến người dùng Telegram khi có các sự kiện quan trọng hoặc bất thường xảy ra trên VPS, như tình trạng sử dụng CPU cao, hết dung lượng lưu trữ, hoặc sự cố về mạng.
  2. Giám Sát Tình Trạng Máy Chủ: Telegram bot có thể cung cấp thông tin về tình trạng hiện tại của VPS, bao gồm sử dụng CPU, bộ nhớ, dung lượng đĩa, và trạng thái của các dịch vụ đang chạy.
  3. Thực Hiện Lệnh Quản Lý Từ Xa: Bot có thể được sử dụng để thực hiện các lệnh từ xa trên VPS, cho phép quản lý các tác vụ như khởi động lại dịch vụ, cập nhật phần mềm, hoặc thực hiện các bản vá bảo mật.
  4. Kiểm Soát Truy Cập và Bảo Mật: Bot có thể tích hợp các tính năng bảo mật như xác thực hai yếu tố hoặc kiểm soát truy cập dựa trên quyền người dùng, giúp đảm bảo chỉ những người có quyền mới có thể thực hiện các lệnh quản lý trên VPS.
  5. Tự Động Hóa và Tích Hợp: Telegram bot có thể được lập trình để tự động hóa các quy trình, chẳng hạn như sao lưu dữ liệu định kỳ, hoặc tích hợp với các công cụ và dịch vụ giám sát khác.

Sử dụng Telegram bot trong việc theo dõi và quản lý VPS không chỉ mang lại sự tiện lợi do khả năng truy cập từ xa thông qua Telegram, mà còn tăng cường khả năng phản hồi nhanh chóng đối với các sự kiện và cảnh báo liên quan đến máy chủ.

3. Hướng dẫn tạo Telegram Bot theo dõi CPU và tiến trình của VPS

Ở bài viết này mình sẽ hướng dẫn cách viết một script thông báo qua Telegram khi CPU của VPS vượt mức chỉ định (bạn có thể tùy chỉnh) và kèm theo thông tin 10 tiến trình đang chiếm dụng CPU cao nhất, cùng với thông tin về CPU, RAM, và disk ở thời điểm gửi thông báo.

Hướng dẫn tạo Telegram Bot theo dõi CPU và tiến trình của VPS

Hướng dẫn tạo Telegram Bot theo dõi CPU và tiến trình của VPS

3.1 Tạo Telegram bot

Trước tiên, bạn cần tạo một Telegram bot với BotFather (@BotFather). Bạn truy cập vào Telegram, sau đó tìm BotFather và làm như ảnh.

  1. Bạn nhấn start để bắt đầu.
  2. Bạn điền /newbot để tiến hành tạo bot.
  3. Bạn đặt tên cho bot (Ví dụ: HOSTVN VPS MONITOR)
  4. Bạn tạo username cho bot. Lưu ý: chữ cuối cùng của username phải là bot. (Ví dụ: hostvn_g_bot).
  5. Sau khi bạn tạo bot thành công, bạn sẽ nhận được Token ID của bot (Token ID này sẽ cần thiết cho việc kết nối bot với script).

Tiếp theo, bạn tìm Get My ID (@getmyid_bot), nhấn start để lấy Chat ID.

3.2 Tạo script trên VPS

Trước tiên bạn đăng nhập vào VPS với tài khoản root hoặc tài khoản user (sudo).

3.2.1 Tạo file script (Ví dụ: mình tạo file tên là cpu-monitor.sh ở /usr/local/bin/ )

1. Bạn chạy lệnh sau để tiến hành tạo file script.

sudo nano /usr/local/bin/cpu-monitor.sh

 

2. Tiếp đến bạn điền nội dung bên dưới vào file script

Lưu ý:

  1. Thay TOKEN_IDCHAT_ID bằng thông tin bạn đã nhận được ở các bước trước.
  2. Ở phần MAX_CPU_USAGE bạn hãy thay 0.1 thành mức CPU bạn muốn nhận được cảnh báo khi chạm tới, ví dụ bạn muốn khi CPU chạm mức 75% sẽ có thông báo thì bạn thay 0.1 thành 75 (mình để mức thấp 0.1 để test bot).
#!/bin/bash

TOKEN="TOKEN_ID"
CHAT_ID="CHAT_ID"
MAX_CPU_USAGE=0.1 # Đặt ngưỡng CPU theo ý bạn (ví dụ ở đây mình để 0.1% để test bot)

CPU_USAGE=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')
if (( $(echo "$CPU_USAGE > $MAX_CPU_USAGE" | bc -l) )); then
    # Lấy thông tin tiến trình
    TOP_PROCESSES=$(ps -eo %cpu,%mem,pid,cmd | sort -nr | head -10)
    
    # Lấy thông tin hệ thống
    MEMORY_USAGE=$(free -h | grep Mem | awk '{print $3 "/" $2}')
    DISK_USAGE=$(df -h | grep '/$' | awk '{print $3 "/" $2}')

    MESSAGE="Cảnh báo: Sử dụng CPU trên VPS vượt ngưỡng $MAX_CPU_USAGE%! - CPU hiện tại: $CPU_USAGE%. - Memory Usage: $MEMORY_USAGE - Disk Usage: $DISK_USAGE. - Top Processes:  $TOP_PROCESSES"
    curl -s -X POST "https://api.telegram.org/bot$TOKEN/sendMessage" -d chat_id=$CHAT_ID -d text="$MESSAGE"
fi

 

 

3. Lưu và đóng tập tin, hãy nhấn Ctrl+O, sau đó Enter, cuối cùng là Ctrl+X

 

3.2.2 Chạy quyền thực thi cho script

Chạy lệnh sau để đặt quyền thực thi cho script:

sudo chmod +x /usr/local/bin/system-monitor.sh

 

3.2.3 Thiết lập Cron Job

Để script tự động chạy theo định kỳ (ví dụ: mỗi 10 phút), bạn cần thiết lập một cron job.

1. Chạy lệnh crontab -e để chỉnh sửa cron job.

crontab -e

2. Thêm dòng sau vào cuối file (số 10 ở đây nghĩa là 10 phút, bạn có thể thay đổi thời gian theo nhu cầu, mình để là 1 phút để test bot)

*/10 * * * * /usr/local/bin/system-monitor.sh

 

 

3. Lưu và thoát trình soạn thảo (hãy nhấn Ctrl+O, sau đó Enter, cuối cùng là Ctrl+X).

Bạn có thể thấy bot hoạt động rất tốt, script sẽ tự động chạy theo chu kỳ mỗi 1 phút và khi CPU vượt mức 0.1% thì mình sẽ nhận được thông báo về Telegram Bot như đã thiết lập trước đó. Thông tin mình nhận được đầy đủ các thông số như CPU, RAM, Disk và 10 tiến trình đang chiếm dụng CPU cao nhất.

 

Viết một bình luận

bahis10bets.com betvole1.com casinomaxi-giris.com interbahis-giris1.com klasbahis1.com mobilbahisguncelgiris1.com piabetgiris1.com tipobettgiris.com tumbetgiris1.com betboro 1xbet giriş
bahis10bets.com betvole1.com casinomaxi-giris.com interbahis-giris1.com klasbahis1.com mobilbahisguncelgiris1.com piabetgiris1.com tipobettgiris.com tumbetgiris1.com betboro 1xbet giriş
antalya bayan escort
antalya bayan escort
antalya bayan escort