Skip to main content

MonaaS Kuma

Первый запуск

Мы подготовили образ для реализации собственного мониторинга, которым можно воспользоваться при создании инстанса в console.a2-cloud.ru:

image.png

Необходимые критерии создания инстанса:

  • Минимум 10 гб системного диска;
  • Минимум 1 ядро и 2 гб озу;
  • Если инстанс создаётся с локальным адресом сети, использовать router и floating IP для доступа снаружи.

После создания инстанса сразу же будет доступна web-панель мониторинга по адресу: http://<ваш_ip>:3001. Отобразится стартовая страница, с первыми вводными данными. 

Директория с самим сервисом на машине:  /opt/kuma/, имя сервиса uptime-kuma.

Настройка SSL

Если у вас нет зарезервированного DNS имени для хоста, SSL можно получить самоподписанный, используя только IP адрес, а DNS имя подставляем локальный, который можно будет занести в файл hosts на рабочих станциях и заходить по DNS имени:

openssl req -x509 -nodes -days 2555 -sha256 -newkey rsa:2048 -keyout keyfile.key -out cert.crt -subj "/CN=<domain>" -addext "subjectAltName=IP:<IP>"

Где <domain> - ваше DNS имя, <IP> - адрес виртуальной машины или floating IP.

Если у вас есть зарезервированное глобальное DNS имя, то используйте такую команду для получения файлов сертификата:

Сначала установка certbot

apt install certbot

Потом команда по получению сертификата

certbot certonly --standalone -d <domain>

Где <domain> - ваше DNS имя.

Настройка nginx

Настроить переадресацию на вход в панель по DNS имени с HTTPS можно, как пример, установив nginx:

apt install nginx

Настройки в /etc/nginx/nginx.conf:

server {
    listen 443 default_server ssl http2;
    listen [::]:443 ssl http2;
    #    listen 443 ssl http2;
    server_name <domain>;

    ssl_certificate /etc/letsencrypt/live/<domain>/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/<domain>/privkey.pem;
    #    include /etc/letsencrypt/options-ssl-nginx.conf;
    #    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;

    location / {
        proxy_pass http://127.0.0.1:3001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
        proxy_set_header 'Access-Control-Allow-Origin' '*';
        }
}

Где <domain> - ваше DNS имя, а ssl_certificate и ssl_certificate_key - пример пути до файлов сертификата.

После чего можно сделать рестарт сервиса и проверять:

systemctl restart nginx

Важно! Можно использовать и другие средства для proxy и ssl, в инструкции описан общий,один определённый подход.