Поиск по сайту:

Как установить Netdata с Nginx на Alma Linux 8


На этой странице

  1. Предпосылки
  2. Установите требуемую зависимость
  3. Установить Netdata
  4. Настройка брандмауэра
  5. Настройка Nginx в качестве обратного прокси-сервера для Netdata
  6. Доступ к панели мониторинга Netdata
  7. Заключение

Netdata — это бесплатный инструмент мониторинга сервера с открытым исходным кодом в режиме реального времени, который визуализирует и отслеживает данные в реальном времени, такие как использование ЦП, использование ОЗУ, загрузка, использование подкачки, использование полосы пропускания, использование диска и т. д. Это помогает системному администратору получить обзор того, что происходит и что только что произошло в вашей системе или приложении. Его можно установить на любые физические серверы, виртуальные машины, контейнеры и устройства IoT. Он предоставляет интерактивный веб-интерфейс для просмотра показателей вашего сервера с поддержкой различных хранилищ данных для постоянного хранения.

В этом руководстве мы покажем вам, как установить инструмент мониторинга Netdata на Alma Linux 8.

Предпосылки

  • Сервер под управлением Alma Linux 8.
  • Действительное доменное имя, указанное с IP-адресом вашего сервера.
  • На сервере настроен пароль root.

Установить необходимую зависимость

Во-первых, вам нужно будет установить репозиторий EPEL и другие зависимости, необходимые для установки Netdata. Вы можете установить их все, выполнив следующую команду:

dnf install epel-release -y
dnf install git libuuid-devel autoconf automake pkgconfig zlib-devel curl findutils libmnl gcc make -y

После установки всех пакетов можно переходить к следующему шагу.

Установить Netdata

По умолчанию Netdata не включен в репозиторий Alma Linux по умолчанию. Поэтому вам нужно будет установить его из источника.

Сначала загрузите последнюю версию Netdata из репозитория Git, используя следующую команду:

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

После завершения загрузки измените каталог на netdata и установите все необходимые зависимости, используя следующую команду:

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

Затем установите другие пакеты с помощью следующей команды:

dnf --enablerepo=powertools install libuv-devel

Затем запустите сценарий установки Netdata, чтобы начать установку.

./netdata-installer.sh

Вы получите следующий вывод:

 --- real-time performance monitoring, done right! --- 

  You are about to build and install netdata to your system.

  The build process will use /tmp for
  any temporary files. You can override this by setting $TMPDIR to a
  writable directory where you can execute files.

  It will be installed at these locations:

   - the daemon     at /usr/sbin/netdata
   - config files   in /etc/netdata
   - web files      in /usr/share/netdata
   - plugins        in /usr/libexec/netdata
   - cache files    in /var/cache/netdata
   - db files       in /var/lib/netdata
   - log files      in /var/log/netdata
   - pid file       at /var/run/netdata.pid
   - logrotate file at /etc/logrotate.d/netdata

  This installer allows you to change the installation path.
  Press Control-C and run the same command with --help for help.


  NOTE:
  Anonymous usage stats will be collected and sent to Netdata.
  To opt-out, pass --disable-telemetry option to the installer or export
  the environment variable DISABLE_TELEMETRY to a non-zero or non-empty value
  (e.g: export DISABLE_TELEMETRY=1).

Press ENTER to build and install netdata to your system >                                                                   

Нажмите клавишу Enter, чтобы установить Netdata в вашу систему. После установки Netdata вы получите следующий вывод:

Setting netdata.tarball.checksum to 'new_installation'

 --- We are done! --- 

  ^
  |.-.   .-.   .-.   .-.   .-.   .  netdata  .-.   .-.   .-.   .-.   .-.   .-
  |   '-'   '-'   '-'   '-'   '-'               '-'   '-'   '-'   '-'   '-'   
  +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+--->

 --- is installed and running now! --- 
  enjoy real-time performance and health monitoring...
systemctl start netdata
systemctl enable netdata

Теперь вы можете проверить состояние Netdata, используя следующую команду.

systemctl status netdata

Вы получите следующий вывод:

? netdata.service - Real time performance monitoring
   Loaded: loaded (/usr/lib/systemd/system/netdata.service; enabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-03-19 04:22:22 UTC; 4min 16s ago
 Main PID: 58935 (netdata)
    Tasks: 50 (limit: 11412)
   Memory: 103.1M
   CGroup: /system.slice/netdata.service
           ??58935 /usr/sbin/netdata -P /var/run/netdata/netdata.pid -D
           ??58938 /usr/sbin/netdata --special-spawn-server
           ??59063 /usr/libexec/netdata/plugins.d/apps.plugin 1
           ??59064 /usr/libexec/netdata/plugins.d/ebpf.plugin 1
           ??59065 /usr/libexec/netdata/plugins.d/go.d.plugin 1

Mar 19 04:22:22 linux systemd[1]: Starting Real time performance monitoring...
Mar 19 04:22:22 linux systemd[1]: Started Real time performance monitoring.
Mar 19 04:22:22 linux netdata[58935]: CONFIG: cannot load cloud config '/var/lib/netdata/cloud.d/cloud.conf'. Running with internal defaults.
Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO  : MAIN : CONFIG: cannot load cloud config '/var/lib/netdata/cloud.d/>
Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO  : MAIN : Found 0 legacy dbengines, setting multidb diskspace to 256MB
Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO  : MAIN : Created file '/var/lib/netdata/dbengine_multihost_size' to >
Mar 19 04:22:22 linux netdata[58935]: Found 0 legacy dbengines, setting multidb diskspace to 256MB
Mar 19 04:22:22 linux netdata[58935]: Created file '/var/lib/netdata/dbengine_multihost_size' to store the computed value
Mar 19 04:22:23 linux ebpf.plugin[59064]: Does not have a configuration file inside `/etc/netdata/ebpf.d.conf. It will try to load stock file.
Mar 19 04:22:23 linux ebpf.plugin[59064]: Cannot read process groups configuration file '/etc/netdata/apps_groups.conf'. Will try '/usr/lib/n>

На данный момент Netdata работает и прослушивает порт 19999. Вы можете проверить это с помощью следующей команды:

ss -antpl | grep netdata

Вы получите следующий вывод:

LISTEN 0      128        127.0.0.1:8125       0.0.0.0:*    users:(("netdata",pid=58935,fd=29))
LISTEN 0      128          0.0.0.0:19999      0.0.0.0:*    users:(("netdata",pid=58935,fd=6)) 
LISTEN 0      128            [::1]:8125          [::]:*    users:(("netdata",pid=58935,fd=28))
LISTEN 0      128             [::]:19999         [::]:*    users:(("netdata",pid=58935,fd=7))

Как только вы закончите, вы можете перейти к следующему шагу.

Настроить брандмауэр

Если вы используете брандмауэр firewalld в своей системе, вам нужно разрешить порты 19999 и 80 через firewalld. Вы можете разрешить их с помощью следующей команды:

firewall-cmd --permanent --add-port=19999/tcp
firewall-cmd --permanent --add-port=80/tcp

Затем перезагрузите демон firewalld, чтобы применить изменения:

firewall-cmd --reload

Как только вы закончите, вы можете перейти к следующему шагу.

Настройте Nginx в качестве обратного прокси для Netdata

Всегда полезно установить и настроить Nginx в качестве обратного прокси-сервера для доступа к Netdata. Сначала установите сервер Nginx с помощью следующей команды:

dnf install nginx httpd-tools -y

Затем сгенерируйте файл паролей с помощью следующей команды:

htpasswd -c /etc/nginx/.htpasswd netadmin

Установите пароль администратора, как показано ниже:

New password: 
Re-type new password: 
Adding password for user netadmin

Затем создайте файл конфигурации виртуального хоста Nginx с помощью следующей команды:

nano /etc/nginx/conf.d/netdata.conf

Добавьте следующие строки:

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

server {
listen 80;
server_name netdata.example.com;

    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://backend;
    proxy_http_version 1.1;   
    proxy_pass_request_headers on;
    proxy_set_header Connection "keep-alive";
    proxy_store off;
    auth_basic "Private Property";
    auth_basic_user_file /etc/nginx/.htpasswd;
}
}

Сохраните и закройте файл, затем проверьте Nginx на наличие ошибок конфигурации синтаксиса:

nginx -t

Если все в порядке, вы получите следующий вывод:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Затем перезапустите службу Nginx, чтобы применить изменения конфигурации:

systemctl restart nginx

Вы также можете проверить статус Nginx с помощью следующей команды:

systemctl status nginx

Вы должны увидеть следующий вывод:

? nginx.service - The nginx HTTP and reverse proxy server
   Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)
   Active: active (running) since Sat 2022-03-19 04:28:44 UTC; 4s ago
  Process: 61706 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)
  Process: 61705 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)
  Process: 61703 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)
 Main PID: 61708 (nginx)
    Tasks: 2 (limit: 11412)
   Memory: 3.7M
   CGroup: /system.slice/nginx.service
           ??61708 nginx: master process /usr/sbin/nginx
           ??61709 nginx: worker process

Mar 19 04:28:44 linux systemd[1]: Starting The nginx HTTP and reverse proxy server...
Mar 19 04:28:44 linux nginx[61705]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
Mar 19 04:28:44 linux nginx[61705]: nginx: configuration file /etc/nginx/nginx.conf test is successful
Mar 19 04:28:44 linux systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument
Mar 19 04:28:44 linux systemd[1]: Started The nginx HTTP and reverse proxy server.

Как только вы закончите, вы можете перейти к следующему шагу.

Доступ к панели управления Netdata

Теперь откройте веб-браузер и получите доступ к панели управления Netdata, используя URL-адрес http://your-server-ip. Вы должны увидеть страницу входа в Netdata:

Укажите имя пользователя и пароль администратора и нажмите кнопку «Войти». Вы должны увидеть панель инструментов Netdata на следующей странице:

Заключение

Поздравляем! вы успешно установили инструмент мониторинга Netdata на Alma Linux 8. Теперь вы можете начать мониторинг показателей вашего сервера в режиме реального времени с панели управления Netdata. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.