웹사이트 검색

Netdata를 사용하여 CentOS 8/7 서버의 성능을 모니터링하는 방법


시스템 성능을 감시하고 문제가 발생할 경우 알림을 보내는 데 사용되는 수많은 모니터링 도구가 있습니다. 그러나 관련된 설치 및 구성 단계는 지루한 경우가 많습니다.

Netdata는 몇 단계만 거치면 설치할 수 있는 오픈 소스 실시간 모니터링 및 문제 해결 도구입니다. Git 저장소에는 대부분의 설치 및 구성 프로세스를 처리하고 다른 모니터링 도구와 관련된 번거로운 구성을 제거하는 자동화된 스크립트가 함께 제공됩니다.

넷데이터는 2013년 10월 처음 출시된 이후 큰 인기를 얻었습니다. CPU 및 RAM 사용량, 대역폭 통계, 디스크 활용도 등 실시간 측정항목을 수집하여 해석하기 쉬운 차트에 표시합니다. 그래프.

이는 엄청난 도약을 이루었고 Forbes 2020 Cloud 100 떠오르는 스타에 포함되었습니다. 이 목록은 상위 100개 프라이빗 클라우드 기업으로 구성됩니다.

이 기사에서는 CentOS 8/7에 Netdata를 설치하여 서버와 애플리케이션의 실시간, 성능 및 상태 모니터링을 모니터링하는 방법을 살펴보겠습니다.

지원되는 플랫폼

Netdata는 다음 분포를 지원합니다.

  • CentOS 8 및 CentOS 7
  • RHEL 8 및 RHEL 7
  • 페도라 리눅스

CentOS Linux에 Netdata를 설치하는 방법

1. Netdata 설치를 시작하기 전에 몇 가지 필수 구성 요소 패키지가 필수입니다. 하지만 먼저 시스템을 업데이트하고 그림과 같이 EPEL 저장소를 설치하세요.

sudo yum update
sudo yum install epel-release

2. 다음으로, 표시된 대로 필수 소프트웨어 패키지를 설치합니다.

sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils

3. 필수 패키지 설치를 완료한 후 표시된 대로 Netdata git 저장소를 복제합니다.

git clone https://github.com/netdata/netdata.git --depth=100

4. 그런 다음 Netdata 디렉토리로 이동하여 install-required-packages.sh 스크립트를 실행합니다. 스크립트는 Linux 배포판을 감지하고 Netdata 설치 중에 필요한 추가 패키지를 설치합니다.

cd netdata/
./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata 

5. 마지막으로 Netdata를 설치하려면 아래와 같이 Netdata 자동화 스크립트를 실행하세요.

sudo ./netdata-installer.sh

스크립트를 실행하면 중요한 넷데이터 파일이 저장되는 위치에 대한 브리핑을 받게 됩니다. 여기에는 구성 파일, 웹 파일, 플러그인, 데이터베이스 파일, 로그 파일 등이 포함됩니다.

6. 설치 과정을 시작하려면 'ENTER'를 누르세요. 설치 과정에서 브라우저에서 Netdata에 액세스하는 방법과 Netdata 시작 및 중지 등 Netdata를 관리하는 방법에 대한 몇 가지 팁이 제공됩니다.

스크립트는 설치 프로세스 중에 필요한 모든 구성과 조정을 수행하는 데 꽤 오랜 시간 동안 실행됩니다. 제 경우에는 약 3~5분 정도 걸렸고, 완료되면 설치가 성공했다는 확인 메시지가 출력됩니다.

7. 일단 설치되면 Netdata 데몬을 실행해야 합니다. 시작하려면 부팅 시 Netdata 데몬을 활성화하고 다음 명령을 호출하여 상태를 확인하세요.

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

8. 기본적으로 Netdata19999 포트에서 수신 대기하며 다음과 같이 netstat 명령을 사용하여 이를 확인할 수 있습니다.

sudo netstat -pnltu | grep netdata

9. 브라우저를 통해 넷데이터에 액세스하려면 방화벽에서 이 포트를 열어야 합니다. 따라서 아래 명령을 실행하십시오.

sudo firewall-cmd --add-port=19999/tcp --permanent
sudo firewall-cmd --reload

10. Netdata에 액세스하려면 브라우저를 실행하고 다음과 같이 URL을 찾아보세요.

http://centos8-ip:19999/

직관적이고 멋진 그래프로 전반적인 시스템 성능을 제공하는 대시보드가 표시됩니다.

오른쪽 사이드바에 나열된 측정항목을 클릭하여 다양한 그래프를 한 눈에 살펴보세요. 예를 들어, 실행 중인 시스템 서비스를 살펴보려면 표시된 대로 '시스템 서비스' 옵션을 클릭하세요.

CentOS에서 기본 인증으로 Netdata 보호

놀랍게도 관찰하셨겠지만 Netdata에서는 어떠한 형태의 인증도 제공하지 않습니다. 이는 Netdata의 IP 주소를 확보하면 사실상 누구나 대시보드에 액세스할 수 있음을 의미합니다.

다행히 htpasswd 프로그램과 Nginx 웹 서버를 역방향 프록시로 사용하여 기본 인증을 구성할 수 있습니다. 따라서 우리는 Nginx 웹 서버를 설치하려고 합니다.

sudo dnf install nginx

Nginx가 설치되면 /etc/nginx/conf.d 디렉터리 내에 구성 파일을 생성하겠습니다. 그러나 Netdata 이외의 다른 목적으로 Nginx를 사용하는 경우 sites-available 디렉터리를 자유롭게 사용하세요.

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

다음 전체 구성을 추가하고 server_ipexample.com 지시어를 자신의 서버 IP 주소와 서버 이름으로 변경했는지 확인하세요.

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;
    }
}

사용자 인증을 위해 htpasswd 도구를 사용하여 tecmint라는 사용자의 사용자 이름과 비밀번호를 생성하고 자격 증명을 netdata-access 아래에 유지합니다. 파일.

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

비밀번호를 입력하고 확인하세요.

그런 다음 변경 사항을 적용하려면 Nginx 웹 서버를 다시 시작하세요.

sudo systemctl restart nginx

구성이 제대로 되었는지 테스트하려면 계속 진행하여 서버의 IP 주소를 찾아보세요.

http://server-ip

그런 다음 Netdata 대시보드에 액세스할 수 있습니다.

그게 다입니다, 여러분. CentOS 8Netdata 모니터링 도구를 설치하고 모니터링 도구를 보호하기 위해 기본 인증을 구성하는 과정을 안내했습니다. 우리에게 소리를 지르고 어떻게 진행되었는지 알려주세요.