[Практика проекта Docker] Использование Docker для развертывания панели мониторинга Kener
[Практика проекта Docker] Использование Docker для развертывания панели мониторинга Kener

1. Знакомство с кенером

1.1 Знакомство с кенером

  • введение

Kener: инструмент страницы состояния Node.js с открытым исходным кодом, предназначенный для упрощения мониторинга сервисов и обработки событий. Он обеспечивает элегантный и удобный интерфейс, который упрощает отслеживание сбоев в обслуживании и улучшает взаимодействие во время инцидентов.

1.2 особенности кенера

  • Мониторинг в реальном времени
  • Используйте REST API для опроса или отправки данных для мониторинга.
  • Работа с будильниками для посетителей
  • Классифицируйте мониторы по разным разделам
  • Цифровой график монитора. Мин в минуту
  • Гибкая настройка монитора с помощью YAM. Определите свой собственный анализ для мониторинга роста/падения/деградации
  • Построение сложных цепочек расследования загрязнения воздуха, конфиденциальность и т. д.
  • Поддерживает состояние монитора по умолчанию. Если вы не обращаетесь к API по состоянию каждую минуту, он падает.

1.3 сценарии использования кенера

  • Мониторинг веб-сайта: Kener можно использовать для мониторинга ключевых событий веб-сайта, таких как время загрузки страницы, время ответа сервера и т. д., а также предоставлять данные и оповещения в реальном времени посредством мониторинга страниц и событий.
  • Мониторинг приложений: Kener можно использовать для мониторинга ключевых событий в приложениях, таких как входы пользователей в систему, обновления данных и т. д., а также обеспечивать мониторинг событий и отображение данных в реальном времени.
  • Мониторинг сервера: Kener можно использовать для мониторинга показателей производительности сервера, таких как использование ЦП, использование памяти и т. д., а также для предоставления данных мониторинга и оповещений в режиме реального времени.
  • Проекты, представляющие личный интерес. Если вы любите бездельничать, Kener можно использовать для мониторинга ваших проектов, представляющих личный интерес, таких как рабочее состояние игровых серверов, устройств Интернета вещей и т. д.

2. Знакомство с местной средой

2.1 Планирование местной окружающей среды

Эта практика представляет собой личную тестовую среду, а версия операционной системы — centos7.6.

hostname

IP-адрес

Версия операционной системы

Докер-версия

dokcer

192.168.3.166

centos 7.6

20.10.17

2.2 Введение в эту практику

1. Среда развертывания для этой практики — это персональная тестовая среда, будьте осторожны в производственной среде; 2. Используйте Docker для развертывания панели мониторинга Kener.

3. Проверка местной окружающей среды

3.1 Проверка статуса службы Docker

Проверьте, нормально ли работает служба Docker, и убедитесь, что Docker работает нормально.

Язык кода:bash
копировать
[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

3.2 Проверьте версию Docker

Проверьте версию Докера

Язык кода:bash
копировать
[root@jeven ~]# docker -v
Docker version 20.10.17, build 100c701

3.3 Проверьте версию Docker Compose

Проверьте версию Docker Compose, чтобы убедиться, что она 2.0 или выше.

Язык кода:bash
копировать
[root@jeven ~]# docker compose version
Docker Compose version v2.6.0

4. Загрузите образ кенера.

Извлеките образ Kener со склада Docker Hub.

Язык кода:bash
копировать
[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

5. Развертывание приложения Kener

5.1 Создайте каталог развертывания

Создать каталог развертывания

Язык кода:bash
копировать
mkdir -p /data/kener && cd /data/kener

5.2 Отредактируйте файл docker-compose.yml.

В этом примере мы используем docker Compose для развертывания приложений. Сначала нам нужно отредактировать файл docker-compose.yml в каталоге развертывания. Ссылка выглядит следующим образом:

Язык кода:yaml
копировать
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'

5.3 Создание контейнера кенер

  • Создайте контейнер кенер, используя файл docker-compose.yaml.
Язык кода:bash
копировать
[root@jeven kener]# docker compose up -d
[+] Running 2/2
 ⠿ Network kener\_default  Created                                                                                                   0.1s
 ⠿ Container kener        Started                                                                                                   1.0s

5.4 Проверка состояния контейнера кенер

Проверьте состояние контейнера kenerr, чтобы убедиться, что контейнер kenerr запускается нормально.

Язык кода:bash
копировать
[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

6. Посетите домашнюю страницу Kener.

Адрес доступа: http://192.168.3.166:5925, замените IP на IP-адрес вашего собственного сервера и войдите на начальную страницу kener. Если к нему невозможно получить доступ, проверьте, настроен ли брандмауэр сервера, разрешен ли порт группы безопасности облачного сервера и т. д.

Вставьте сюда описание изображения
Вставьте сюда описание изображения

7. Базовая конфигурация кенера

7.1 Изменить домашнюю страницу

В каталоге развертывания/data/kener/config вы можете изменить файл site.yaml.

Язык кода:bash
копировать
[root@jeven config]# ls
monitors.yaml  site.yaml  static

Например, добавьте следующую часть в файл site.yaml, чтобы добавить веб-сайт Baidu.

Язык кода:yaml
копировать
 - name: «Байду»
   url: "https://www.baidu.com"
Вставьте сюда описание изображения
Вставьте сюда описание изображения

7.2 Изменение элементов мониторинга

В каталоге развертывания/data/kener/config вы можете изменить файлmonitors.yaml, чтобы настроить информацию мониторинга.

Язык кода:bash
копировать
[root@jeven config]# ls
monitors.yaml  site.yaml  static

Например, если мы хотим отслеживать посещения веб-сайта Bing, мы можем добавить следующий контент в файлmonitors.yaml.

Язык кода:yaml
копировать
- name: Бинг
  description: Bing
  tag: "search"
  defaultStatus: "UP"
  image: "/earth.png"
  api:
    method: GET
    url: https://cn.bing.com/
Вставьте сюда описание изображения
Вставьте сюда описание изображения

7.3 Проверьте эффект страницы

Перезапустить контейнер

Язык кода:bash
копировать
docker compose restart

Обновите страницу в браузере, чтобы проверить эффект доступа.

Вставьте сюда описание изображения
Вставьте сюда описание изображения
Вставьте сюда описание изображения
Вставьте сюда описание изображения

8. Резюме

Kener — это легкий инструмент для мониторинга веб-сайтов с простым развертыванием, красивыми и лаконичными страницами, быстрой скоростью отклика и точным мониторингом. С ним легко справится даже новичок. Мы можем настроить сайты мониторинга и URL-ссылки, что очень удобно для ежедневного использования. Если вам нужен легкий инструмент для мониторинга веб-сайтов, вы можете попробовать Kener.

Я участвую в последнем конкурсе эссе для специального учебного лагеря Tencent Technology Creation 2024. Приходите и разделите со мной приз!

boy illustration
Углубленный анализ переполнения памяти CUDA: OutOfMemoryError: CUDA не хватает памяти. Попыталась выделить 3,21 Ги Б (GPU 0; всего 8,00 Ги Б).
boy illustration
[Решено] ошибка установки conda. Среда решения: не удалось выполнить первоначальное зависание. Повторная попытка с помощью файла (графическое руководство).
boy illustration
Прочитайте нейросетевую модель Трансформера в одной статье
boy illustration
.ART Теплые зимние предложения уже открыты
boy illustration
Сравнительная таблица описания кодов ошибок Amap
boy illustration
Уведомление о последних правилах Points Mall в декабре 2022 года.
boy illustration
Даже новички могут быстро приступить к работе с легким сервером приложений.
boy illustration
Взгляд на RSAC 2024|Защита конфиденциальности в эпоху больших моделей
boy illustration
Вы используете ИИ каждый день и до сих пор не знаете, как ИИ дает обратную связь? Одна статья для понимания реализации в коде Python общих функций потерь генеративных моделей + анализ принципов расчета.
boy illustration
Используйте (внутренний) почтовый ящик для образовательных учреждений, чтобы использовать Microsoft Family Bucket (1T дискового пространства на одном диске и версию Office 365 для образовательных учреждений)
boy illustration
Руководство по началу работы с оперативным проектом (7) Практическое сочетание оперативного письма — оперативного письма на основе интеллектуальной системы вопросов и ответов службы поддержки клиентов
boy illustration
[docker] Версия сервера «Чтение 3» — создайте свою собственную программу чтения веб-текста
boy illustration
Обзор Cloud-init и этапы создания в рамках PVE
boy illustration
Корпоративные пользователи используют пакет регистрационных ресурсов для регистрации ICP для веб-сайта и активации оплаты WeChat H5 (с кодом платежного узла версии API V3)
boy illustration
Подробное объяснение таких показателей производительности с высоким уровнем параллелизма, как QPS, TPS, RT и пропускная способность.
boy illustration
Удачи в конкурсе Python Essay Challenge, станьте первым, кто испытает новую функцию сообщества [Запускать блоки кода онлайн] и выиграйте множество изысканных подарков!
boy illustration
[Техническая посадка травы] Кровавая рвота и отделка позволяют вам необычным образом ощипывать гусиные перья! Не распространяйте информацию! ! !
boy illustration
[Официальное ограниченное по времени мероприятие] Сейчас ноябрь, напишите и получите приз
boy illustration
Прочтите это в одной статье: Учебник для няни по созданию сервера Huanshou Parlu на базе CVM-сервера.
boy illustration
Cloud Native | Что такое CRD (настраиваемые определения ресурсов) в K8s?
boy illustration
Как использовать Cloudflare CDN для настройки узла (CF самостоятельно выбирает IP) Гонконг, Китай/Азия узел/сводка и рекомендации внутреннего высокоскоростного IP-сегмента
boy illustration
Дополнительные правила вознаграждения амбассадоров акции в марте 2023 г.
boy illustration
Можно ли открыть частный сервер Phantom Beast Palu одним щелчком мыши? Супер простой урок для начинающих! (Прилагается метод обновления сервера)
boy illustration
[Играйте с Phantom Beast Palu] Обновите игровой сервер Phantom Beast Pallu одним щелчком мыши
boy illustration
Maotouhu делится: последний доступный внутри страны адрес склада исходного образа Docker 2024 года (обновлено 1 декабря)
boy illustration
Кодирование Base64 в MultipartFile
boy illustration
5 точек расширения SpringBoot, супер практично!
boy illustration
Глубокое понимание сопоставления индексов Elasticsearch.
boy illustration
15 рекомендуемых платформ разработки с нулевым кодом корпоративного уровня. Всегда найдется та, которая вам понравится.
boy illustration
Аннотация EasyExcel позволяет экспортировать с сохранением двух десятичных знаков.