Подключение и настройка Grafana
Чтобы начать работу с сервисом мониторингa Grafana необходимо:
Подключить сервис к кластеру Kubernetes.
Настроить Grafana с помощью файла конфигурации.
Подключение Grafana
Подключить сервис Grafana можно только при создании кластера Kubernetes. Добавить сервис к существующему кластеру нельзя.
Перейдите в личный кабинет.
Создайте кластер. При создании кластера установите флаг в поле Grafana.
Перейдите на вкладку Кластеры и нажмите на имя нужного кластера Kubernetes.
Перейдите на вкладку Ресурсы.
Скопируйте IP-адрес из поля Адрес Grafana. Сервис Grafana будет доступен для кластера по скопированному внешнему IP-адресу.
Откройте интерфейс Grafana. Для этого перейдите по скопированному IP-адресу в браузере.
Для первого входа используйте:
Логин: admin
Пароль: admin
Настройка Grafana
Рассмотрим настройку сервиса Grafana через файл grafana.ini на примере подключения почтового сервиса для получения уведомлений.
Компонент Grafana в кластере Kubernetes — это объект Deployment с одной репликой (Grafana Deployment). Чтобы внести любые изменения в компонент Grafanа, необходимо создать объект ConfigMap в кластере и подключить его к Grafana Deployment таким образом, чтобы содержимое ConfigMap заменило собой файл /etc/grafana/grafana.ini внутри пода.
В этом случае при перезапуске пода по любой причине конфигурация в файл grafana.ini сохранится и будет прочитана при создании нового пода.
Подробнее о настройке в документации Grafana.
Создание объекта СonfigMap
Подключитесь к кластеру Kubernetes с помощью Kubeconfig.
Скачайте .yaml файл объекта ConfigMap и внесите необходимые изменения после строки grafana.ini: |. Например, для подключения почтового сервера внесите данные (IP-адрес хоста, email) в раздел [smtp]:
[smtp]enabled = truehost = 192.168.10.20:25user = username# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""password = password;cert_file =;key_file =skip_verify = truefrom_address = admin@grafana.localhostfrom_name = Grafana# EHLO identity in SMTP dialog (defaults to instance_name);ehlo_identity = dashboard.example.com# SMTP startTLS policy (defaults to 'OpportunisticStartTLS')startTLS_policy = NoStartTLSПримените файл с помощью команды kubectl:
kubectl -f create grafana-config-map-smtp.yaml
Подключение ConfigMap к компоненту Grafana Deployment
Чтобы подключить созданный ConfigMap к Grafana Deployment:
Используйте команду kubectl:
kubectl edit deploy grafanaДобавьте в spec.template.spec.volumes параметры:
- name: configconfigMap:name: grafana-iniПример spec.template.spec.volumes:
volumes:- name: grafana-pvpersistentVolumeClaim:claimName: grafana-pvc- name: configconfigMap:name: grafana-iniДобавьте в spec.template.spec.containers.volumeMounts параметры:
- mountPath: /etc/grafana/grafana.ininame: configsubPath: grafana.iniПример spec.template.spec.containers.volumeMounts:
volumeMounts:- mountPath: /var/lib/grafananame: grafana-pv- mountPath: /etc/grafana/grafana.ininame: configsubPath: grafana.iniСохраните изменения.
При успешном подключении ConfigMap появится сообщение «deployment.apps/grafana edited». Компонент Grafana будет применять конфигурацию почтового сервера из объекта ConfigMap.
При внесении новых изменений в ConfigMap необходимо пересоздать под для того, чтобы новая конфигурация вступила в силу. Для этого удалите под Grafana. Он будет пересоздан автоматически.
Подробнее про изменения в ConfigMap в документации Kubernetes.