Что такое Ceph?
CEPH-это открытый исходный код, программное хранилище, поддерживаемое RedHat. Он способен блокировать, объект и хранилище файлов. Кластеры CEPH разработаны для работы на любом оборудовании с помощью алгоритма, называемого Crast (контролируемая репликация под масштабируемым хешоном). Этот алгоритм гарантирует, что все данные будут правильно распределены по кластеру и быстро без каких -либо ограничений. Репликация, тонкая подготовка, снимки являются ключевыми характеристиками хранилища CEPH.
Хранение объектов CEPH доступно через интернаты прикладных программ на основе Amazon Simple Service (S3) и OpenStack Swift Represtional State (RET) (API), а также нативный API для интеграции с программными приложениями.
Ceph Block Storage использует устройство блока CEPH, которое представляет собой виртуальный диск, который может быть прикреплен к серверам на основе Linux с голой металлом или виртуальными машинами. Конечный хранилище Distongic Distribute Distribute Distribute (RADOS) CEPH обеспечивает возможности для хранения блоков, такие как снимки и репликация. Устройство блока Ceph Rados интегрировано для работы в качестве заднего конца с хранением блоков OpenStack.
Что такое Prometheus?
Prometheus — это бесплатное программное приложение, используемое для мониторинга и оповещения о событиях. Он записывает метрики в режиме реального времени в базе данных временных рядов (позволяя получить высокую размерность), созданную с использованием модели HTTP-тяги, с гибкими запросами и оповещением в реальном времени. Проект написан в Go и лицензирован по лицензии Apache 2, с исходным кодом, доступным на GitHub, и является градуированным проектом Облачного вычислительного фонда, наряду с Kubernetes и Anvoy.
Прометей собирает метрики из контролируемых целей путем очистки метрик HTTP конечных точек по этим целям. Поскольку Прометей также раскрывает данные так же, как и о себе, он также может очистить и отслеживать свое собственное здоровье.
Что такое Графана?
Grafana является решением с открытым исходным кодом для запуска аналитики данных, подтягивая метрики, которые имеют смысл в огромном количестве данных, и контролировать наши приложения с помощью крутых настраиваемых инструментов.
Grafana подключается со всеми возможными источником данных, обычно называемым базами данных, такими как графит, Prometheus, приток DB, Elasticsearch, MySQL, PostgreSQL и т. Д.
Grafana, являющаяся решением с открытым исходным кодом, также позволяет нам писать плагины с нуля для интеграции с несколькими различными источниками данных.
Этот инструмент помогает нам изучать, анализировать и контролировать данные в течение определенного периода времени, технически называемый аналитикой временных рядов.
Развертывание CEPH
Развертывание очень доступного Ceph Cluster довольно простое и простое. Я предполагаю, что вы знакомы с настройкой кластера Ceph. Если нет, то укажите официальный документ или следующие команды.
Настройте Ceph Repo:
sudo vim /etc/yum.repos.d/ceph.repo
[ceph] name=Ceph packages for $basearch baseurl=https://download.ceph.com/rpm-nautilus/el7/$basearch enabled=1 priority=1 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc [ceph-noarch] name=Ceph noarch packages baseurl=https://download.ceph.com/rpm-nautilus/el7/noarch enabled=1 priority=1 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc [ceph-source] name=Ceph source packages baseurl=https://download.ceph.com/rpm-nautilus/el7/SRPMS enabled=0 priority=1 gpgcheck=1 gpgkey=https://download.ceph.com/keys/release.asc
Установка Ceph-Deploy
sudo yum install ceph-deploy -y
Создать каталог
mkdir ceph-cluster
cd ceph-cluster
Создайте кластер:
ceph-deploy new node1 node2 node3
Установите пакеты CEPH:
ceph-deploy install node1 node2 node3
Развернуть начальные мониторы и собирать ключи
ceph-deploy mon create-initial
Создать администратор
ceph-deploy admin node1 node2 node3
Создать Mgr
ceph-deploy mgr create node1
Создать OSDS
ceph-deploy osd create --data /dev/xvdb node1 ceph-deploy osd create --data /dev/xvdb node2 ceph-deploy osd create --data /dev/xvdb node3
Проверьте статус вашего кластера
sudo ceph -s
Вы должны увидеть что -то вроде:
Установка Прометея
Запустите следующую команду, чтобы загрузить и установить Prometheus.
sudo wget https://github.com/prometheus/prometheus/releases/download/v2.8.1/prometheus-2.8.1.linux-amd64.tar.gz
Добавьте пользователя Prometheus.
sudo useradd --no-create-home --shell /bin/false prometheus
Создайте необходимые каталоги.
sudo mkdir /etc/prometheus sudo mkdir /var/lib/prometheus
Измените владельца вышеуказанных каталогов.
sudo chown prometheus:prometheus /etc/prometheus sudo chown prometheus:prometheus /var/lib/prometheus
Теперь перейдите в Prometheus загруженное местоположение и извлеките его.
sudo tar -xvzf prometheus-2.8.1.linux-amd64.tar.gz
Переименовать это в соответствии с вашими предпочтениями.
sudo mv prometheus-2.8.1.linux-amd64 prometheuspackage
Скопируйте «Прометея» и «Промол» двоичный из папки «Прометхейспакги» в «/usr/local/bin».
sudo cp prometheuspackage/prometheus /usr/local/bin/ sudo cp prometheuspackage/promtool /usr/local/bin/
Измените право собственности на пользователя Prometheus.
sudo chown prometheus:prometheus /usr/local/bin/prometheus sudo chown prometheus:prometheus /usr/local/bin/promtool
Скопируйте каталоги «Консоли» и «Консоль_либри» из «Prometheuspackage» в папку «/etc/prometheus»
sudo cp -r prometheuspackage/consoles /etc/prometheus sudo cp -r prometheuspackage/console_libraries /etc/prometheus
Измените право собственности на пользователя Prometheus
sudo chown -R prometheus:prometheus /etc/prometheus/consoles sudo chown -R prometheus:prometheus /etc/prometheus/console_libraries
Теперь мы создадим файл prometheus.yml.
sudo vim /etc/prometheus/prometheus.yml
Добавьте следующую конфигурацию в файл.
global: scrape_interval: 10s scrape_configs: - job_name: 'prometheus_master' scrape_interval: 5s static_configs: - targets: ['localhost:9283']
— {Скопируйте порт №. Что вы получаете после увольнения Command Seph MGR Services} —
Измените право собственности на файл.
sudo chown prometheus:prometheus /etc/prometheus/prometheus.yml
Настройте файл службы Prometheus.
sudo vim /etc/systemd/system/prometheus.service
Скопируйте следующий контент в файл.
[Unit] Description=Prometheus Wants=network-online.target After=network-online.target [Service] User=prometheus Group=prometheus Type=simple ExecStart=/usr/local/bin/prometheus \ --config.file /etc/prometheus/prometheus.yml \ --storage.tsdb.path /var/lib/prometheus/ \ --web.console.templates=/etc/prometheus/consoles \ --web.console.libraries=/etc/prometheus/console_libraries [Install] WantedBy=multi-user.target
Перезагрузить службу Systemd.
sudo systemctl daemon-reload
Начните службу Prometheus.
sudo systemctl start prometheus
Проверьте статус службы.
systemctl status prometheus
Используйте следующий URL, чтобы получить доступ к UI.
http://Server-IP:9090/graph
Затем вы можете увидеть следующий интерфейс.
Установка Графана
Создайте файл репо.
vim /etc/yum.repos.d/grafana.repo
Добавьте следующее содержимое в файл:
[grafana] name=grafana baseurl=https://packages.grafana.com/oss/rpm repo_gpgcheck=1 enabled=1 gpgcheck=1 gpgkey=https://packages.grafana.com/gpg.key sslverify=1 sslcacert=/etc/pki/tls/certs/ca-bundle.crt sudo vim /etc/yum.repos.d/grafana.repo
Введите следующую команду:
sudo yum install grafana -y
Продолжайте с следующими командами, чтобы установить бесплатные шрифты типа и URW.
sudo yum install fontconfig sudo yum install freetype* sudo yum install urw-fonts
Проверьте статус Сервиса.
sudo systemctl status grafana-server
Если служба не активна, запустите ее, используя следующую команду:
sudo systemctl start grafana-server
Включить сервис Grafana на загрузке системы
sudo systemctl enable grafana-server.service
Используйте следующий URL для доступа к веб -интерфейсу Grafana.
http://Your Server IP or Host Name:3000/
Затем вы можете увидеть следующий интерфейс.
Включение сервиса мониторинга на Ceph Cluster
MGR Включите панель панели
ceph mgr module enable dashboard --force
MGR включил Прометею
ceph mgr module enable prometheus --force
Редактировать Ceph.conf
vim ceph-deploy/ceph.conf
Добавить:
[mon] mgr initial modules = dashboard
Проверьте сервисы MGR: — {обновить файл/etc/prometheus/prometheus.yml с полученным портом №. как целевой порт №. } —
Как вы успешно установили Prometheus и Grafana для мониторинга CEPH
Давайте начнем настройку Графана сейчас 1 Войдите в Grafana с по умолчанию имени пользователя и пароля в качестве администратора 2 Нажмите, чтобы создать DataSource 3 Выберите Прометеус 4 Введите URL Prometheus
5. Нажмите «Импорт» и введите Ceph-Clycluster Grafana Dashboard «7056» 6 Выберите «Имя» и «Источник данных Ceph Prometheus»
Наконец, мы успешно интегрировали наш кластер Ceph с Прометеем и Графаной!
Используя это, вы можете отслеживать свой Ceph Cluster!
Оригинал: «https://dev.to/ingoleajinkya/ceph-cluster-monitoring-using-prometheus-and-grafana-472i»