ວິທີການກວດສອບການເຮັດວຽກຂອງ Ubuntu ໂດຍໃຊ້ Netdata


Netdata ແມ່ນເຄື່ອງມືກວດສອບແລະແກ້ໄຂບັນຫາໃນເວລາທີ່ແທ້ຈິງໂດຍບໍ່ເສຍຄ່າແລະເປີດໃຊ້ ສຳ ລັບເຊີຟເວີຟັງ, ພາຊະນະ, ແອັບພລິເຄຊັນແລະໂຄງສ້າງພື້ນຖານໂຄງລ່າງດ້ານໄອທີ. ມັນໃຫ້ລະບົບວັດແທກລະບົບເສັ້ນປະສາດສູງແລະເວລາຈິງເຊັ່ນການເຮັດວຽກຂອງ CPU, ການ ນຳ ໃຊ້ RAM & ແຜ່ນ, ແລະສະຖິຕິແບນວິດ, ເພື່ອກ່າວເຖິງສອງສາມຢ່າງ.

ນອກຈາກນັ້ນ, Netdata ຍັງໃຫ້ບໍລິການສາຍຕາແບບໂຕ້ຕອບເຊິ່ງສາມາດເຂົ້າເບິ່ງຜ່ານເວັບບຼາວເຊີພ້ອມກັບສັນຍານເຕືອນທີ່ສະຫຼາດເຊິ່ງຊ່ວຍໃນການແກ້ໄຂບັນຫາຄວາມຜິດຂອງລະບົບ.

ເທັກໂນໂລຢີແລະຄວາມນິຍົມໃນການຕັດຂອງ Netdata ໄດ້ເຮັດໃຫ້ມັນເປັນສະຖານທີ່ໃນດາວ Forbes Cloud 100 ທີ່ເພີ່ມຂຶ້ນໃນປີ 2020 ເຊິ່ງມັນບໍ່ແມ່ນຄວາມ ໝາຍ ຫຍັງເລີຍ ໃນຄວາມເປັນຈິງ, ໃນເວລາທີ່ຂຽນບົດແນະ ນຳ ນີ້, ມັນໄດ້ຮັບດາວເກືອບຮອດເກືອບ 50,000 Github.

ມີສອງວິທີທີ່ທ່ານສາມາດໃຊ້ເພື່ອຕິດຕັ້ງ Netdata. ທ່ານສາມາດແລ່ນສະຄິບອັດຕະໂນມັດໃສ່ຫອຍ BASH. ນີ້ປັບປຸງລະບົບຂອງທ່ານແລະລິເລີ່ມການຕິດຕັ້ງ Netdata, ອີກທາງເລືອກ ໜຶ່ງ, ທ່ານສາມາດ clone ຫໍໄຕຂອງ Git ຂອງ Netdata ແລະຫຼັງຈາກນັ້ນກໍ່ປະຕິບັດການຂຽນແບບອັດຕະໂນມັດ. ວິທີການ ທຳ ອິດແມ່ນງ່າຍດາຍແລະກົງໄປກົງມາແລະມັນແມ່ນສິ່ງທີ່ພວກເຮົາຕ້ອງສຸມໃສ່ໃນຄູ່ມືນີ້.

ໃນບົດຂຽນນີ້, ພວກເຮົາຈະເຫັນວິທີທີ່ທ່ານສາມາດຕິດຕັ້ງ Netdata ໃນ Ubuntu ເພື່ອຕິດຕາມກວດກາເວລາ, ການປະຕິບັດແລະກວດກາສຸຂະພາບຂອງເຄື່ອງແມ່ຂ່າຍແລະການ ນຳ ໃຊ້ຕ່າງໆ.

Netdata ສະ ໜັບ ສະ ໜູນ ການແຈກຈ່າຍ Ubuntu LTS ຕໍ່ໄປນີ້:

  • Ubuntu 20.04
  • Ubuntu 18.04
  • Ubuntu 16.04

ວິທີການຕິດຕັ້ງ Netdata ໃນ Ubuntu Linux

ເພື່ອເລີ່ມຕົ້ນການຕິດຕັ້ງ, ໃຫ້ ດຳ ເນີນການ ຄຳ ສັ່ງທີ່ຢູ່ທາງລຸ່ມໃສ່ bash terminal ຂອງທ່ານເພື່ອດາວໂຫລດແລະ ດຳ ເນີນການ script.

$ bash <(curl -Ss https://my-netdata.io/kickstart.sh)

ໃນລະຫວ່າງການປະຕິບັດຂອງບົດຂຽນ, ສິ່ງຕໍ່ໄປນີ້ເກີດຂື້ນ:

  • ສະຄິບຄົ້ນພົບການແຈກຈ່າຍ Linux ຂອງທ່ານໂດຍອັດຕະໂນມັດ, ປັບປຸງລາຍຊື່ແພັກເກດແລະຕິດຕັ້ງທຸກໆຊອບແວທີ່ ຈຳ ເປັນ.
  • ຕົ້ນໄມ້ແຫຼ່ງສຸດທິສຸດທ້າຍຖືກດາວໂຫລດໄປທີ່ເສັ້ນທາງ /usr/src/netdata.git.
  • ສະຄິບຕິດຕັ້ງ netdata ໂດຍການແລ່ນ script ./netdata-installer.sh ຈາກຕົ້ນໄມ້ແຫຼ່ງ.
  • ມີການປັບປຸງໃຫ້ cron.daily ເພື່ອຮັບປະກັນວ່າ netdata ໄດ້ຖືກປັບປຸງເປັນປະ ຈຳ ວັນ.

ໃນຂະນະທີ່ສະຄິບຖືກ ດຳ ເນີນງານ, ທ່ານຈະໄດ້ຮັບ ຄຳ ແນະ ນຳ ກ່ຽວກັບວິທີການເຂົ້າເຖິງ Netdata ໃນ browser ແລະວິທີການຈັດການມັນໃຫ້ເປັນການບໍລິການລະບົບ.

ການຕິດຕັ້ງໃຊ້ເວລາໃນຂະນະທີ່, ສະນັ້ນໃຫ້ມັນປະມານ 10 ນາທີແລະກັບຄືນມາ. ສຸດທ້າຍ, ທ່ານຈະໄດ້ຮັບຜົນຜະລິດຢູ່ທາງລຸ່ມຍ້ອນວ່າສະຄິບປິດການຕິດຕັ້ງ.

ເມື່ອຕິດຕັ້ງແລ້ວ, ເລີ່ມຕົ້ນ, ເປີດໃຊ້ງານແລະກວດສອບສະຖານະຂອງ Netdata ດັ່ງທີ່ສະແດງໄວ້.

$ sudo systemctl start netdata
$ sudo systemctl enable netdata
$ sudo systemctl status netdata

ໂດຍຄ່າເລີ່ມຕົ້ນ, Netdata ຟັງຢູ່ພອດ 19999 ແລະນີ້ສາມາດຢືນຢັນໄດ້ໂດຍໃຊ້ ຄຳ ສັ່ງ netstat ດັ່ງທີ່ສະແດງ.

$ sudo netstat -pnltu | grep netdata

ຖ້າທ່ານມີ UFW ແລ່ນ, ພະຍາຍາມເປີດພອດ 19999 ຍ້ອນວ່າມັນຈະຖືກຮຽກຮ້ອງເມື່ອເຂົ້າເຖິງ Netdata ໃນ browser.

$ sudo ufw allow 19999/tcp
$ sudo ufw reload

ສຸດທ້າຍ, ເພື່ອເຂົ້າເຖິງ Netdata, ປ່ຽນໄປທີ່ browser ຂອງທ່ານແລະທ່ອງທີ່ຢູ່ URL ຕໍ່ໄປນີ້

http://server-ip:19999/

ນີ້ແມ່ນສິ່ງທີ່ທ່ານທັກທາຍເມື່ອທ່ານຄົ້ນຫາ URL. ໃນຄວາມເປັນຈິງ, ທ່ານຈະຮູ້ວ່າທ່ານບໍ່ ຈຳ ເປັນຕ້ອງເຂົ້າສູ່ລະບົບ. ມາດຕະການຂອງລະບົບທັງ ໝົດ ຈະຖືກສະແດງຕາມທີ່ສະແດງ.

ທ່ານສາມາດພິກເສັ້ນສະແດງຕ່າງໆໄດ້ໂດຍການກົດປຸ່ມວັດແທກທີ່ທ່ານມັກຢູ່ແຖບດ້ານຂວາຂອງ dashboard. ຍົກຕົວຢ່າງ, ເພື່ອກວດເບິ່ງສະຖິຕິການໂຕ້ຕອບຂອງເຄືອຂ່າຍ, ໃຫ້ຄລິກໃສ່ຕົວເລືອກ 'Network Interfaces'.

ຮັບປະກັນ Netdata ກັບການກວດສອບຂັ້ນພື້ນຖານໃນ Ubuntu

ມາຮອດຈຸດນີ້, ທຸກຄົນສາມາດເຂົ້າເຖິງ dashboard Netdata ແລະມີການເບິ່ງທີ່ metrics ລະບົບຕ່າງໆ. ຈຳ ນວນເງິນນີ້ແມ່ນການລະເມີດດ້ານຄວາມປອດໄພແລະພວກເຮົາຕ້ອງການທີ່ຈະຫລີກລ້ຽງສິ່ງນີ້.

ດ້ວຍຄວາມຄິດນີ້, ພວກເຮົາຈະ ກຳ ຫນົດຄ່າການກວດສອບ HTTP ຂັ້ນພື້ນຖານ. ພວກເຮົາ ຈຳ ເປັນຕ້ອງຕິດຕັ້ງຊຸດ apache2-utils ເຊິ່ງສະ ໜອງ ໂປແກຼມ htpasswd ເຊິ່ງຈະຖືກ ນຳ ໃຊ້ເພື່ອ ກຳ ນົດຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານຂອງຜູ້ໃຊ້. ນອກຈາກນັ້ນ, ພວກເຮົາຈະຕິດຕັ້ງເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx ຈະເຮັດຫນ້າທີ່ເປັນຕົວແທນດ້ານຫລັງ.

ການຕິດຕັ້ງເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx ແລະຊຸດ apache2-utils ປະຕິບັດຄໍາສັ່ງ.

$ sudo apt install nginx apache2-utils

ດ້ວຍການຕິດຕັ້ງ Nginx ແລະ apache2-utils, ພວກເຮົາຈະສ້າງແຟ້ມການຕັ້ງຄ່າພາຍໃນໄດເລກະທໍລີ /etc/nginx/conf.d. ເຖິງຢ່າງໃດກໍ່ຕາມ, ຮູ້ສຶກວ່າສາມາດໃຊ້ໄດເລກະທໍລີທີ່ມີເວັບໄຊທ໌້ຖ້າທ່ານໃຊ້ Nginx ເພື່ອຈຸດປະສົງອື່ນນອກຈາກ Netdata.

$ sudo vim /etc/nginx/conf.d/default.conf

ພາຍໃນເອກະສານການຕັ້ງຄ່າ, ພວກເຮົາຈະແນະ ນຳ Nginx ໃຫ້ກັບ ຄຳ ຮ້ອງຂໍແບບຕົວແທນ ສຳ ລັບ dashboard Netdata. ຫລັງຈາກນັ້ນພວກເຮົາຈະເພີ່ມການກະຕຸ້ນການກວດສອບຂັ້ນພື້ນຖານບາງຢ່າງທີ່ພຽງແຕ່ໃຫ້ຜູ້ໃຊ້ທີ່ໄດ້ຮັບອະນຸຍາດເຂົ້າໃຊ້ໃນ dashboard Netdata ໂດຍໃຊ້ຊື່ຜູ້ໃຊ້/ລະຫັດຜ່ານ.

ນີ້ແມ່ນການຕັ້ງຄ່າທັງ ໝົດ. ມີສະຕິທີ່ຈະທົດແທນ ຄຳ ສັ່ງຂອງ server_ip ແລະ example.com ດ້ວຍທີ່ຢູ່ IP ຂອງເຄື່ອງແມ່ຂ່າຍຂອງທ່ານເອງແລະຊື່ server.

upstream netdata-backend {
    server 127.0.0.1:19999;
    keepalive 64;
}

server {
    listen server_ip:80;
    server_name example.com;

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

    location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://netdata-backend;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }
}

ໃຫ້ເຂົ້າໃຈການຕັ້ງຄ່າ, ແຕ່ລະພາກ.

upstream netdata-backend {
    server 127.0.0.1:19999;
    keepalive 64;
}

ພວກເຮົາໄດ້ລະບຸແບບໂມດູນທີ່ຢູ່ເບື້ອງເທິງທີ່ເອີ້ນວ່າ netdata-backend ເຊິ່ງອ້າງເຖິງເຄື່ອງແມ່ຂ່າຍເວັບທີ່ສ້າງມາໃນ Netdata ໂດຍໃຊ້ທີ່ຢູ່ loopback 127.0.0.1 ແລະ port 19999 ເຊິ່ງເປັນພອດເລີ່ມຕົ້ນທີ່ Netdata ຟັງ. ຄຳ ສັ່ງຮັກສາທີ່ ກຳ ນົດໄວ້ແມ່ນ ກຳ ນົດ ຈຳ ນວນສູງສຸດຂອງການເຊື່ອມຕໍ່ທີ່ບໍ່ສາມາດເປີດເຜີຍໄດ້.

server {
    listen server_ip:80;
    server_name example.com;

    auth_basic "Authentication Required";
    auth_basic_user_file netdata-access;

ນີ້ແມ່ນພາກສ່ວນ block server ຂອງ Nginx ຫລັກ. ສາຍ ທຳ ອິດລະບຸທີ່ຢູ່ IP ພາຍນອກທີ່ Nginx ຄວນຟັງເມື່ອລູກຄ້າສົ່ງ ຄຳ ຂໍຂອງພວກເຂົາ. ຄຳ ສັ່ງແນະ ນຳ ຂອງ server_name ກຳ ນົດຊື່ໂດເມນຂອງເຊີຟເວີແລະແນະ ນຳ Nginx ດຳ ເນີນການບລັອກເຊີເວີ້ເມື່ອລູກຄ້າຮຽກຮ້ອງຊື່ໂດເມນແທນທີ່ຢູ່ IP ຂອງພາຍນອກ.

ສອງເສັ້ນສຸດທ້າຍສະແດງການກວດສອບ HTTP ແບບງ່າຍດາຍທີ່ຮຽກຮ້ອງໃຫ້ຜູ້ໃຊ້ເຂົ້າສູ່ລະບົບໂດຍໃຊ້ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານ. ໂມດູນ auth_basic ກໍ່ໃຫ້ເກີດຊື່ຜູ້ໃຊ້/ລະຫັດຜ່ານຂື້ນມາຢູ່ໃນໂປແກຼມທ່ອງເວັບທີ່ມີ "ຕ້ອງການການກວດສອບຄວາມຖືກຕ້ອງ" ໃນຫົວຂໍ້ເຊິ່ງຕໍ່ມາສາມາດປັບແຕ່ງໃຫ້ ເໝາະ ສົມກັບຄວາມຕ້ອງການຂອງທ່ານ.

ໂມດູນ auth_basic_user_file ຊີ້ໃຫ້ເຫັນຊື່ເອກະສານທີ່ຈະປະກອບມີຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານຂອງຜູ້ໃຊ້ທີ່ໄດ້ຮັບອະນຸຍາດເຂົ້າເຖິງ dashboard ຂອງ Netdata - ໃນກໍລະນີນີ້ການເຂົ້າເຖິງ netdata. ພວກເຮົາຈະສ້າງເອກະສານນີ້ໃນພາຍຫລັງ.

ສ່ວນສຸດທ້າຍແມ່ນບລັອກສະຖານທີ່ເຊິ່ງບັນຈຸຢູ່ພາຍໃນ block server. ນີ້ຈັດການ proxying ແລະສົ່ງຕໍ່ການຮ້ອງຂໍການເຂົ້າເຖິງກັບເຄື່ອງແມ່ຂ່າຍເວັບໄຊຕ໌ Nginx.

location / {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://netdata-backend;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }

ສຳ ລັບການກວດສອບຄວາມຖືກຕ້ອງ, ພວກເຮົາຈະສ້າງຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານ ສຳ ລັບຜູ້ໃຊ້ທີ່ມີຊື່ວ່າ tecmint ໂດຍໃຊ້ htpasswd utility ແລະເກັບຮັກສາຂໍ້ມູນປະ ຈຳ ພາຍໃນເອກະສານເຂົ້າເຖິງ netdata.

$ sudo htpasswd -c /etc/nginx/netdata-access tecmint

ໃຫ້ລະຫັດລັບແລະຢືນຢັນມັນ.

ຕໍ່ໄປ, ເລີ່ມຕົ້ນ ໃໝ່ server ຂອງ Nginx ສຳ ລັບການປ່ຽນແປງທີ່ຈະມີຜົນ.

$ sudo systemctl restart nginx

ເພື່ອທົດສອບວ່າການຕັ້ງຄ່າຖືກຕ້ອງ, ດຳ ເນີນການຕໍ່ໄປແລະກວດເບິ່ງທີ່ຢູ່ IP ຂອງເຊີບເວີຂອງທ່ານ

http://server-ip

ການກວດສອບການກວດສອບຈະປາກົດຢູ່ດັ່ງຮູບຂ້າງລຸ່ມນີ້. ໃສ່ຊື່ຜູ້ໃຊ້ແລະລະຫັດຜ່ານຂອງທ່ານແລະກົດ ENTER.

ຫລັງຈາກນັ້ນ, ທ່ານຈະໄດ້ຮັບການເຂົ້າເຖິງ dashboard Netdata.

ນີ້ເຮັດໃຫ້ພວກເຮົາສິ້ນສຸດຫົວຂໍ້ຂອງພວກເຮົາ ສຳ ລັບມື້ນີ້. ທ່ານຫາກໍ່ຮູ້ວິທີຕິດຕັ້ງເຄື່ອງມືກວດສອບ Netdata ແລະການຕັ້ງຄ່າການກວດສອບ HTTP ຂັ້ນພື້ນຖານໃນ Ubuntu. ຮູ້ສຶກວ່າບໍ່ເສຍຄ່າທີ່ຈະກວດເບິ່ງເສັ້ນສະແດງອື່ນໆໃນລະບົບຕ່າງໆ.