Grafana#

Grafana — программная система визуализации данных, позволяющая представить в графическом виде временные ряды и текстовые данные.

Grafanа имеет множество встроенных настраиваемых панелей, которые можно использовать сразу после установки. Дополнительные панели распространяются в формате плагинов.

Также Grafanа поддерживает различные источники данных, такие как:

  • Prometheus;

  • Graphite;

  • MySQL;

  • InfluxDB;

  • Elasticsearch и другие.

Последовательность выполнения#

  1. Создайте новый пространство имен grafana-operator, используя веб-интерфейс или введя в терминал следующую команду:

    oc create namespace grafana-operator
    
  2. Установите Grafana Operator любым из следующих способов.

    Примечание

    Grafana Operator - оператор, позволяющий управлять экземплярами Grafana и его ресурсами. С помощью данного оператора можно устанавливать локальные экземпляры Grafana и источники данных. Автоматически синхронизирует настраиваемые и фактические ресурсы в экземпляре Grafana.

    Способ 1:

    • Найдите в списке доступных программ Grafana Operator.

    • Нажмите Continue после ознакомления с текстом предупреждения.

    • Нажмите Install и Subscribe, чтобы принять значения конфигурации по умолчанию и установить Grafana Operator в пространство имен grafana-operator.

    • Дождитесь окончания установки.

    Способ 2:

    • Установите Grafana Operator с помощью команды:

    cat << EOF | oc create -f -
    

    Пример содержимого файла:

    apiVersion: operators.coreos.com/v1
    kind: OperatorGroup
    metadata:
      generateName: grafana-operator-
      namespace: grafana-operator
    spec:
      targetNamespaces:
      - grafana-operator
     ---
    apiVersion: operators.coreos.com/v1alpha1
    kind: Subscription
    metadata:
      generateName: grafana-operator-
      namespace: grafana-operator
    spec:
      channel: v4
      name: grafana-operator
      installPlanApproval: Automatic
      source: community-operators
      sourceNamespace: openshift-marketplace
    EOF
    
    • Дождитесь окончания установки. Статус установки можно проверить командой:

    oc -n grafana-operator rollout status \
      deployment grafana-operator-controller-manager
    

    Способ 3:

    Примечание

    В данном сценарии используется менеджер пакетов Helm. Данный инструмент не входит в состав продукта и требует дополнительной установки.

    • Установите Grafana Operator с помощью команды:

    helm upgrade -i grafana-operator oci://{url}
     --version {version}
    
  3. Установите Grafana любым из следующих способов.

    Способ 1:

    • С помощью веб-интерфейса зайдите в Grafana Operator.

    • Нажмите кнопку Create Instance, чтобы создать новый экземпляр Grafana.

    • Заполните YAML-файл экземпляра Grafana. Пример создаваемого файла:

    apiVersion: integreatly.org/v1alpha1
    kind: Grafana
    metadata:
      name: grafana
      namespace: grafana-operator
    spec:
      ingress:
       enabled: true
      dataStorage:
       accessModes:
       - ReadWriteOnce
       size: 10Gi
       class: ocs-storagecluster-cephfs
      config:
       log:
        mode: "console"
        level: "warn"
       security:
         admin_user: "root"
         admin_password: "secret"
      auth:
       disable_login_form: False
       disable_signout_menu: True
      auth.anonymous:
       enabled: True
    dashboardLabelSelector:
      - matchExpressions:
         - {key: app, operator: In, values: [grafana]}
    
    • Дополнительно. Добавьте в YAML-файл Grafana Operator следующую конфигурацию, позволяющую Grafana сканировать панель мониторинга во всем кластере:

      Config:
              env:
              - name: "DASHBOARD_NAMESPACES_ALL"
                 value: "true"
      

    Способ 2:

    Примечание

    В данном сценарии используется менеджер пакетов Helm. Данный инструмент не входит в состав продукта и требует дополнительной установки.

    • Установите Grafana Operator с помощью команды:

    helm install -n grafana-operator grafana \
      ./grafana/grafana-{version}.tgz \
      -f ./grafana/values.yaml \
      --set ingress.hostname=grafana.${CLUSTER_HOST}
    

    Где:

    • ./grafana/values.yaml - файл с конфигурацией по умолчанию;

    • grafana.${CLUSTER_HOST} - хост, по которому будет доступна Grafana.

  4. Проверьте, что pod Grafana успешно запущен:

    oc get pods -n grafana-operator
    

    Пример вывода команды:

    NAME                                   READY   STATUS    RESTARTS   AGE
    grafana-deployment-8667d4d4fc-xxxxx    1/1     Running   0          40s
    

Результат#

Grafanа настроен и готов к использованию.