Kener: инструмент страницы состояния Node.js с открытым исходным кодом, предназначенный для упрощения мониторинга сервисов и обработки событий. Он обеспечивает элегантный и удобный интерфейс, который упрощает отслеживание сбоев в обслуживании и улучшает взаимодействие во время инцидентов.
Эта практика представляет собой личную тестовую среду, а версия операционной системы — centos7.6.
hostname | IP-адрес | Версия операционной системы | Докер-версия |
---|---|---|---|
dokcer | 192.168.3.166 | centos 7.6 | 20.10.17 |
1. Среда развертывания для этой практики — это персональная тестовая среда, будьте осторожны в производственной среде; 2. Используйте Docker для развертывания панели мониторинга Kener.
Проверьте, нормально ли работает служба Docker, и убедитесь, что Docker работает нормально.
[root@jeven ~]# systemctl status docker
● docker.service - Docker Application Container Engine
Loaded: loaded (/usr/lib/systemd/system/docker.service; enabled; vendor preset: disabled)
Active: active (running) since Thu 2024-04-11 23:12:48 CST; 5 days ago
Docs: https://docs.docker.com
Main PID: 11530 (dockerd)
Tasks: 19
Memory: 2.7G
CGroup: /system.slice/docker.service
Проверьте версию Докера
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701
Проверьте версию Docker Compose, чтобы убедиться, что она 2.0 или выше.
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0
Извлеките образ Kener со склада Docker Hub.
[root@jeven ~]# docker pull rajnandan1/kener:latest
latest: Pulling from rajnandan1/kener
46f0b12b7773: Pull complete
2298c655b51e: Pull complete
3a5a7e8dcf09: Pull complete
e1b0b8e10716: Pull complete
4abbc5dc5680: Pull complete
cce3115ab176: Pull complete
6740fc1e6287: Pull complete
669c68c0bc24: Pull complete
f1378cef40d9: Pull complete
4f4fb700ef54: Pull complete
ad630fb474b5: Pull complete
edd9a0f85e8d: Pull complete
2e9eb80453c6: Pull complete
44b781cebb29: Pull complete
6671398befe4: Pull complete
a7b3da71db11: Pull complete
e5c38f5e84c6: Pull complete
8d9f6b60c179: Pull complete
Digest: sha256:66499668ff0a25129eff8f5784c22a32a21557df472d99acf01039bcf7a6a69f
Status: Downloaded newer image for rajnandan1/kener:latest
docker.io/rajnandan1/kener:latest
Создать каталог развертывания
mkdir -p /data/kener && cd /data/kener
В этом примере мы используем docker Compose для развертывания приложений. Сначала нам нужно отредактировать файл docker-compose.yml в каталоге развертывания. Ссылка выглядит следующим образом:
version: '3.7'
services:
kener:
image: rajnandan1/kener:latest # assuming this is final namespace/image
container_name: kener
environment:
- TZ=Asia/Shanghai
#- GH_TOKEN=
#- API_TOKEN=
#- API_IP
# If running on a LINUX HOST and not podman rootless these MUST BE SET
# run "id $user" from command line and replace numbers below with output from command
#- PUID=1000 # gid
#- PGID=1000 # uid
### Most likely DO NOT need to change anything below this ###
#- PORT=3000 Port app listens on IN CONTAINER
### If any of the below are changed make sure the bound volume is correct as well ###
#- CONFIG_DIR=/config
#- PUBLIC_KENER_FOLDER=/config/static
#- MONITOR_YAML_PATH=/config/monitors.yaml
#- SITE_YAML_PATH=/config/site.yaml
ports:
- '3850:3000/tcp'
volumes:
- '/data/kener/config:/config:rw'
[root@jeven kener]# docker compose up -d
[+] Running 2/2
⠿ Network kener\_default Created 0.1s
⠿ Container kener Started 1.0s
Проверьте состояние контейнера kenerr, чтобы убедиться, что контейнер kenerr запускается нормально.
[root@jeven kener]# docker compose ps
NAME COMMAND SERVICE STATUS PORTS
kener "/init" kener running 0.0.0.0:3850->3000/tcp, :::3850->3000/tcp
Адрес доступа: http://192.168.3.166:5925, замените IP на IP-адрес вашего собственного сервера и войдите на начальную страницу kener. Если к нему невозможно получить доступ, проверьте, настроен ли брандмауэр сервера, разрешен ли порт группы безопасности облачного сервера и т. д.
В каталоге развертывания/data/kener/config вы можете изменить файл site.yaml.
[root@jeven config]# ls
monitors.yaml site.yaml static
Например, добавьте следующую часть в файл site.yaml, чтобы добавить веб-сайт Baidu.
- name: «Байду»
url: "https://www.baidu.com"
В каталоге развертывания/data/kener/config вы можете изменить файлmonitors.yaml, чтобы настроить информацию мониторинга.
[root@jeven config]# ls
monitors.yaml site.yaml static
Например, если мы хотим отслеживать посещения веб-сайта Bing, мы можем добавить следующий контент в файлmonitors.yaml.
- name: Бинг
description: Bing
tag: "search"
defaultStatus: "UP"
image: "/earth.png"
api:
method: GET
url: https://cn.bing.com/
Перезапустить контейнер
docker compose restart
Обновите страницу в браузере, чтобы проверить эффект доступа.
Kener — это легкий инструмент для мониторинга веб-сайтов с простым развертыванием, красивыми и лаконичными страницами, быстрой скоростью отклика и точным мониторингом. С ним легко справится даже новичок. Мы можем настроить сайты мониторинга и URL-ссылки, что очень удобно для ежедневного использования. Если вам нужен легкий инструмент для мониторинга веб-сайтов, вы можете попробовать Kener.