Подключение и настройка Grafana

Чтобы начать работу с сервисом мониторингa Grafana необходимо:

  1. Подключить сервис к кластеру Kubernetes.

  2. Настроить Grafana с помощью файла конфигурации.

Подключение Grafana

Примечание

Подключить сервис Grafana можно только при создании кластера Kubernetes. Добавить сервис к существующему кластеру нельзя.

  1. Перейдите в личный кабинет.

  2. Создайте кластер. При создании кластера установите флаг в поле Grafana.

  3. Создайте группу узлов в кластере.

  4. Перейдите на вкладку Кластеры и нажмите на имя нужного кластера Kubernetes.

  5. Перейдите на вкладку Ресурсы.

  6. Скопируйте IP-адрес из поля Адрес Grafana. Сервис Grafana будет доступен для кластера по скопированному внешнему IP-адресу.

  7. Откройте интерфейс 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

  1. Подключитесь к кластеру Kubernetes с помощью Kubeconfig.

  2. Скачайте .yaml файл объекта ConfigMap и внесите необходимые изменения после строки grafana.ini: |. Например, для подключения почтового сервера внесите данные (IP-адрес хоста, email) в раздел [smtp]:

    [smtp]
    enabled = true
    host = 192.168.10.20:25
    user = username
    # If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
    password = password
    ;cert_file =
    ;key_file =
    skip_verify = true
    from_address = admin@grafana.localhost
    from_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
    
  3. Примените файл с помощью команды kubectl:

    kubectl -f create grafana-config-map-smtp.yaml
    

Подключение ConfigMap к компоненту Grafana Deployment

Чтобы подключить созданный ConfigMap к Grafana Deployment:

  1. Используйте команду kubectl:

    kubectl edit deploy grafana
    
  2. Добавьте в spec.template.spec.volumes параметры:

    - name: config
      configMap:
       name: grafana-ini
    

    Пример spec.template.spec.volumes:

    volumes:
     - name: grafana-pv
       persistentVolumeClaim:
         claimName: grafana-pvc
     - name: config
       configMap:
        name: grafana-ini
    
  3. Добавьте в spec.template.spec.containers.volumeMounts параметры:

    - mountPath: /etc/grafana/grafana.ini
      name: config
      subPath: grafana.ini
    

    Пример spec.template.spec.containers.volumeMounts:

    volumeMounts:
        - mountPath: /var/lib/grafana
          name: grafana-pv
        - mountPath: /etc/grafana/grafana.ini
          name: config
          subPath: grafana.ini
    
  4. Сохраните изменения.

При успешном подключении ConfigMap появится сообщение «deployment.apps/grafana edited». Компонент Grafana будет применять конфигурацию почтового сервера из объекта ConfigMap.

Примечание

При внесении новых изменений в ConfigMap необходимо пересоздать под для того, чтобы новая конфигурация вступила в силу. Для этого удалите под Grafana. Он будет пересоздан автоматически.

Подробнее про изменения в ConfigMap в документации Kubernetes.

Запустили Evolution free tier
для Dev & Test
Получить