1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/laofeng-hasentinel

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
README.md 4.1 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
gitlife-traslator Отправлено 30.11.2024 01:18 090a4ab

1. Функционал и архитектура

HASentinel — это проект, основанный на Sentinel от Alibaba, который обеспечивает высокую доступность и масштабируемость. Основные изменения включают:

  1. Реорганизацию конфигурации для хранения в Zookeeper.
  2. Перенос данных метрик, отправляемых приложениями, в кластер Influxdb для постоянного хранения.
  3. Изменение способа сбора метрик Sentinel с пассивного на активный, когда приложения отправляют данные самостоятельно.
  4. Оптимизацию работы с Sentinel-консолью, позволяя настраивать конфигурацию для всего приложения, а не только для отдельных узлов. Затем применение настроек ко всему кластеру приложений.
  5. Добавление Grafana для визуализации отчётов о метриках за длительный период времени и внедрение ShardingInfluxdb в качестве промежуточного слоя для автоматического распределения данных по кластеру Influxdb.

Архитектура HASentinel представлена на рисунке.

2. Starter для различных сред

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

3. Базовая настройка среды

1. Настройка Influxdb

Установите Influxdb с помощью Docker:

docker pull influxdb
-- Установка первого узла
docker run -d -p 18083:8083 -p18086:8086 --name influxDbService1 influxdb
-- Установка второго узла
docker run -d -p 28083:8083 -p28086:8086 --name influxDbService2 influxdb      

Подключитесь к Influxdb на обоих узлах и создайте базу данных «sentinel_db»:

fenglibin$ influx -host 127.0.0.1 -port 18086
Visit https://enterprise.influxdata.com to register for updates, InfluxDB server management, and monitoring.
Connected to http://127.0.0.1:28086 version 1.7.9
InfluxDB shell version: 1.1.1
> show databases;
name: databases
name
----
_internal
> create database sentinel_db
> use sentinel_db
Using database sentinel_db
> show measurements
> 

2. Настройка Zookeeper

Используйте Docker для установки Zookeeper:

docker pull zookeeper
docker run -d --name zookeeper --p 2181:2181  -d zookeeper

Создайте следующие узлы в ZK:

SENTINEL-GROUP
    -APP-MACHINES
    -AUTHORITY-RULES
    -DEGRADE-RULES
    -FLOW-RULES
    -HOT-RULES
    -SYSTEM-RULES

Для этого выполните следующие шаги:

Запустите клиент ZK для входа в консоль:

 $zkCli.sh   

В консоли используйте команду создания узла для создания узлов:

[zk: localhost:2181(CONNECTED) 1] create /SENTINEL-GROUP
Created /SENTINEL-GROUP
[zk: localhost:2181(CONNECTED) 2] create /SENTINEL-GROUP/APP-MACHINES
Created /SENTINEL-GROUP/APP-MACHINES
...

3. Настройка Redis

С помощью Docker установите Redis:

 docker pull redis docker run -d --name 
 redis -p 6379:6379 redis          

Документация обширна и ещё не перенесена, подробную документацию по архитектуре и использованию можно найти по ссылке: https://note.youdao.com/s/ZlizPHkV

4. Последняя версия

Последняя версия — 1.8.2 (скриншоты ниже приведены только в качестве примера):

Опубликовать ( 0 )

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

1
https://api.gitlife.ru/oschina-mirror/laofeng-hasentinel.git
git@api.gitlife.ru:oschina-mirror/laofeng-hasentinel.git
oschina-mirror
laofeng-hasentinel
laofeng-hasentinel
master