как установить кибана-плагин в кибану, размещенную на кубернетах?
У меня есть существующий сервис Kibana, работающий поверх Kubernetes. Как установить в него кастомный плагин Kibana.
Я попытался установить плагин, выполнив следующую команду внутри модуля. Но плагин не работает.
bin/kibana-plugin install file:///tmp/myplugin-1.0.0.zip
Стоит ли перезапускать сервис Kibana, чтобы плагин заработал? Если да, то как перезапустить сервис Kibana на Kubernetes? Или есть какие-то другие шаги, которые мне не хватает?
3 ответа
Вам необходимо расширить образ докера kibana с помощью плагина. Используйте расширенный образ для развертывания кибаны в кластере k8s
см. образец ниже
FROM docker.elastic.co/kibana/kibana-oss:6.1.1
RUN kibana-plugin install https://github.com/sivasamyk/logtrail/releases/download/v0.1.25/logtrail-6.1.1-0.1.25.zip
Я думаю, что самый простой способ - установить кибану с помощью диаграммы управления: https://github.com/helm/charts/tree/master/stable/kibana
Helm позволяет вам установить приложение на кубернетах, при этом вам нужно только настроить некоторые параметры, а в случае кибаны вы можете установить список установленных плагинов. Перейдите по ссылке выше, чтобы узнать подробнее о настройке диаграммы кибаны, и вы можете узнать больше о helm на их веб-сайте: https://helm.sh/docs/intro/quickstart/
Для установки диаграммы используется файл (values.yaml), содержащий конфигурацию. В этом файле, представленном на диаграмме, на которую я ссылался, у вас есть следующий раздел:
plugins:
# set to true to enable plugins installation
enabled: false
# set to true to remove all kibana plugins before installation
reset: false
# Use <plugin_name,version,url> to add/upgrade plugin
values:
# - elastalert-kibana-plugin,1.0.1,https://github.com/bitsensor/elastalert-kibana-plugin/releases/download/1.0.1/elastalert-kibana-plugin-1.0.1-6.4.2.zip
# - logtrail,0.1.31,https://github.com/sivasamyk/logtrail/releases/download/v0.1.31/logtrail-6.6.0-0.1.31.zip
# - other_plugin
Итак, в вашем случае вы бы использовали что-то вроде этого:
plugins:
enabled: true
values:
- myplugin, 0.1,http://_your_publicly_available_url/myplugin-1.0.0.zip
Не рекомендуется вносить изменения непосредственно в модули, поскольку они постоянно заменяются.
Согласно Kibana README.MD, есть возможность установить Kibana, включая Yaml со всеми специальными параметрами, включая установку плагинов.
Вот полный Values.yaml, рекомендую вам проверить все доступные параметры.
Для установки плагина мы будем искать строки 179-188 из Values.yaml по умолчанию:
plugins:
# set to true to enable plugins installation
enabled: true
# set to true to remove all kibana plugins before installation
reset: false
# Use <plugin_name,version,url> to add/upgrade plugin
values:
- elastalert-kibana-plugin,1.0.1,https://github.com/bitsensor/elastalert-kibana-plugin/releases/download/1.0.1/elastalert-kibana-plugin-1.0.1-6.4.2.zip
- logtrail,0.1.31,https://github.com/sivasamyk/logtrail/releases/download/v0.1.31/logtrail-6.6.0-0.1.31.zip
Добавьте или удалите нужные плагины, соблюдая имя плагина, версию и формат URL.
Сохраните ваш файл как values.yaml и запустите:
$ helm install stable/kibana --generate-name -f values.yaml
Определенные плагины будут доступны после запуска службы.
Вы можете подтвердить свой values.yaml
был обработан путем поиска названий плагинов в описании модуля:
$ kubectl --namespace=default describe pods -l "app=kibana"
Name: kibana-1578496954-595c5856c7-82xbr
...///supressed output///...
Init Containers:
kibana-plugins-install:
Container ID: docker://937c95da139361d8c0e524f9850ad6ab63e9364dc7c51c65a66fe6bb3445ceed
Image: docker.elastic.co/kibana/kibana-oss:6.7.0
Image ID: docker-pullable://docker.elastic.co/kibana/kibana-oss@sha256:9af7fbceb7c9a746df1f7dc79d2b3bb320f0fddf9b06a3cc12fd8f903902e731
Command:
/bin/bash
-c
set -e
rm -rf plugins/lost+found
plugins=(
elastalert-kibana-plugin,1.0.1,https://github.com/bitsensor/elastalert-kibana-plugin/releases/download/1.0.1/elastalert-kibana-plugin-1.0.1-6.4.2.zip
logtrail,0.1.31,https://github.com/sivasamyk/logtrail/releases/download/v0.1.31/logtrail-6.6.0-0.1.31.zip