Собственное ведение журнала: Kibana не может получить сопоставление

Для регистрации в Knative, следуя инструкциям здесь - https://github.com/knative/docs/blob/master/serving/installing-logging-metrics-traces.md#elasticsearch-kibana-prometheus--grafana-setup, я попробовал для визуализации журналов с использованием пользовательского интерфейса Kibana (инструмент визуализации для Elasticsearch), но при настройке шаблона индекса возникла следующая ошибка: "Невозможно получить сопоставление. У вас есть индексы, соответствующие шаблону? введите описание изображения здесь

Есть ли обходной путь или исправить это?

Обновление: вот что я вижу, когда делаю запрос cURL GET, как это предлагается в комментарии. введите описание изображения здесь

1 ответ

В последних версиях KNative есть ошибка, которая была описана в этом выпуске https://github.com/knative/serving/issues/2218. Уже есть утвержденный, но еще не объединенный PR, о котором вы можете посмотреть здесь https://github.com/knative/serving/pull/2560.

Короче говоря, проблема в том, что fluentd стручки используют system-node-critical класс приоритета, который больше не поддерживается за пределами kube-system Пространство имен.

В следствии fluentd модули не создаются и, следовательно, не отправляют журналы в Elasticsearch и, следовательно, нет logstash Показ индексов в Кибане.

В качестве обходного пути для KNative v0.2.2 вы можете скачать и удалить строку 1909 из файла релиза здесь: https://github.com/knative/serving/releases/download/v0.2.2/release.yaml.

Затем вы можете установить исправленную версию: kubectl apply -f release.yaml

Если вы не хотите загружать и редактировать, вы можете получить уже исправленную версию выпуска 0.2.2, которую вы можете установить с помощью:

kubectl apply -f https://github.com/gevou/knative-blueprint/blob/master/knative-serving-release-0.2.2-patched.yaml

Конечно, вы можете сделать что-то подобное для предыдущих версий.

Вот несколько дополнительных шагов, которые я должен выполнить, чтобы это полностью заработало. Публикация здесь, чтобы это могло помочь кому-то, столкнувшемуся с той же проблемой, и искать ответ

Вот шаги, Запустите приведенную ниже команду, чтобы применить исправление для устранения проблем с модулями fluentd-ds, которые не отображают проблему.

kubectl apply -f https://raw.githubusercontent.com/gevou/knative-blueprint/master/knative-serving-release-0.2.2-patched.yaml

Убедитесь, что каждый из ваших узлов имеет метку beta.kubernetes.io/fluentd-ds-ready=true:

kubectl get nodes --selector beta.kubernetes.io/fluentd-ds-ready=true

Если вы получили ответ "Нет ресурсов": выполните следующую команду, чтобы убедиться, что Fluentd DaemonSet работает на всех ваших узлах:

kubectl label nodes — all beta.kubernetes.io/fluentd-ds-ready=”true”

Выполните следующую команду, чтобы убедиться, что набор демонов fluentd-ds готов хотя бы на одном узле:

kubectl get daemonset fluentd-ds --namespace knative-monitoring

Подождите немного и выполните эту команду

kubectl proxy

Перейдите к пользовательскому интерфейсу Kibana. Работа прокси может занять пару минут.

  • На странице "Настройка шаблона индекса" введите logstash-* в шаблон индекса, выберите @ timestamp в поле Имя фильтра времени и нажмите кнопку "Создать".

  • Чтобы создать второй индекс, нажмите кнопку "Создать шаблон индекса" в левом верхнем углу страницы. Введите zipkin * в шаблон индекса, выберите timestamp_millis в поле Имя фильтра времени и нажмите кнопку "Создать".

Если проблема все еще существует, следуя предложениям в комментариях выше, следует исправить ошибку

GET _cat/indices?v

Добавил сквозные выводы здесь

Другие вопросы по тегам