MonaaS Kuma
Первый запуск
Мы подготовили образ для реализации собственного мониторинга, которым можно воспользоваться при создании инстанса в console.a2-cloud.ru:
Необходимые критерии создания инстанса:
- Минимум 10 гб системного диска;
- Минимум 1 ядро и 2 гб озу;
- Если инстанс создаётся с локальным адресом сети, использовать router и floating IP для доступа снаружи.
После создания инстанса вам сразу будет доступна web-панель мониторинга по адресу: http://<ваш_ip>:3001. При переходе по адресу отобразится стартовая страница с первыми вводными данными.
Директория с самим сервисом на машине: /opt/kuma/, имя сервиса uptime-kuma
Настройка SSL
Настройка SSL без зарезервированного DNS-имени хоста
Если у вас нет зарезервированного DNS-имени для хоста, вы можете использовать самоподписанный SSL-сертификат, указав только IP-адрес. При этом можно назначить локальное DNS-имя, добавить его в файл hosts на рабочих станциях и подключаться к хосту по этому имени:
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
Настройка SSL с зарезервированным DNS-именем хоста
Если у вас уже есть зарегистрированное доменное имя (например, yourdomain.com), вы можете получить для него SSL-сертификат от Let's Encrypt с помощью утилиты certbot:
1. Установите certbot, если утилита ещё не установлена. Это можно сделать через консоль с помощью пакетного менеджера вашей операционной системы. Например, для Ubuntu:
apt install certbot
2. После установки выполните команду для получения сертификата:
certbot certonly --standalone -d <domain>
Где: <domain> - ваше DNS-имя, например: yourdomain.com
Настройка 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- пример пути до файлов сертификата.
Если нет DNS имени локального и нужно входить только по IP, в nginx можно указать в server_name - ваш IP.
После чего можно сделать рестарт сервиса и проверить:
systemctl restart nginx
Важно! В этой в инструкции представлен определённый подход, однако вы можете использовать другие средства для proxy и ssl, не указанные в этой инструкции.
