kibana не начинает получать ошибку при запуске

Я использую kibana7.5.2 в своем приложении

Ниже используется dockerfile.

FROM node:10.15.2-alpine
LABEL maintainer "AppInfra"

ENV VERSION 7.5.2

ENV PATH /usr/share/kibana/bin:$PATH

ADD kibana-${VERSION}-linux-x86_64.tar.gz /usr/share/

RUN mv /usr/share/kibana-$VERSION-linux-x86_64 /usr/share/kibana && \
    addgroup -g 1111 myuser && \
    adduser -D -u 1111 -G myuser myuser && \
    echo "http://mynexusurl:8082/main"  >> /etc/apk/repositories && \
    echo "http://mynexusurl:8082/community"  >> /etc/apk/repositories && \
    apk add --no-cache su-exec libc6-compat gcompat && \
    sed -i 's,NODE="${DIR}/node/bin/node",NODE="/usr/local/bin/node",g' /usr/share/kibana/bin/kibana-plugin && \
    sed -i 's,NODE="${DIR}/node/bin/node",NODE="/usr/local/bin/node",g'  /usr/share/kibana/bin/kibana && \
    rm -rf /usr/share/kibana/node && \
    rm -rf /usr/share/kibana/x-pack* && \
    chown -R myuser:myuser /usr/share/kibana


COPY kibana.yml /usr/share/kibana/config/kibana.yml
COPY docker-entrypoint.sh /

RUN chmod 755 /docker-entrypoint.sh
USER myuser
#RUN /usr/share/kibana/bin/kibana 2>&1 | grep -m 1 "Optimization of .* complete in .* seconds"

WORKDIR /usr/share/kibana

EXPOSE 5601


#USER myuser
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["kibana"]

и entrypoint.sh - это

#!/bin/sh
set -e
# Run as user "kibana" if the command is "kibana"
if [ "$1" = 'kibana' ]
then
if [ "$ELASTICSEARCH_URL" ]
        then
                sed -ri "s!^(\#\s*)?(elasticsearch\.hosts: ).*!\2 [ \"$ELASTICSEARCH_URL\" ]!" /usr/share/kibana/config/kibana.yml
        fi

fi
exec "$@"

переменная среды - ELASTICSEARCH_URL http://clogstore.storage:9200

Ниже находится файл kibana.yml

--- 
elasticsearch.hosts: 
  - "http://elasticsearch:9200"
logging.verbose: true
server.basePath: /clog
server.host: "0.0.0.0"
server.rewriteBasePath: false

Если я попытаюсь выполнить команду запуска докера, мой контейнер kibana запускается, и через 10 секунд контейнер останавливается с ошибкой ниже

Error: EFAULT: bad address in system call argument, read
    at Object.readSync (fs.js:494:3)
    at tryReadSync (fs.js:333:20)
    at Object.readFileSync (fs.js:362:19)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:699:20)
    at Module.load (internal/modules/cjs/loader.js:599:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:538:12)
    at Function.Module._load (internal/modules/cjs/loader.js:530:3)
    at Module.require (internal/modules/cjs/loader.js:637:17)
    at require (internal/modules/cjs/helpers.js:22:18)
    at Object.<anonymous> (/usr/share/kibana/node_modules/terser-webpack-plugin/dist/minify.js:8:15)
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: This socket has been ended by the other party
    at Socket.writeAfterFIN [as write] (net.js:396:12)
    at PoolWorker.writeEnd (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:129:20)
    at PoolWorker.dispose (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:273:12)
    at WorkerPool.disposeWorkers (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:370:16)
    at WorkerPool.terminate (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:305:10)
    at WorkerPool.disposeWorkers (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:364:12)
    at Timeout.timeout.setTimeout [as _onTimeout] (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:358:44)
    at ontimeout (timers.js:436:11)
    at tryOnTimeout (timers.js:300:5)
    at listOnTimeout (timers.js:263:5)
    at Timer.processTimers (timers.js:223:10)
Emitted 'error' event at:
    at Socket.writeAfterFIN [as write] (net.js:399:8)
    at PoolWorker.writeEnd (/usr/share/kibana/node_modules/thread-loader/dist/WorkerPool.js:129:20)
    [... lines matching original stack trace ...]
    at Timer.processTimers (timers.js:223:10)

странно, если я раскомментирую строку ниже в dockerfile

БЕГ / usr / share / kibana / bin / kibana 2> & 1 | grep -m 1 "Оптимизация. * завершена за. * секунды"

Я проверил, что в кибане 7.4.2 он работает нормально, и если я попытаюсь сделать то же самое в кибане, 7.5.2 сборка докеров будет ждать в этой конкретной строке, и даже через 3 часа сборка докеров не выполняется.

Я хочу знать, почему я получаю эту ошибку.

Какое значение имеет эта конкретная линия

Как сделать контейнер для кибаны

Если я добавлю именно эту строчку, то как сделать так, чтобы она строилась быстро. сборка не завершилась ни разу :(

Пожалуйста помоги мне с этим .

Я новичок в кибане и застрял. Мне нужно сделать свой контейнер с кибаной 7.5.2. Любая ранняя помощь будет действительно оценена

заранее спасибо

Примечание: я пробовал использовать kibana 7.5.1 aswel. Возникает такая же проблема.


person beginner    schedule 30.01.2020    source источник
comment
Если у вас возникли проблемы с установкой кибаны внутри образа, я предлагаю вам начать с официальный образ докера Kibana. Вы можете настроить позже.   -  person Zeitounator    schedule 30.01.2020


Ответы (1)


Похоже, что используемый вами файл докеров создает образ из базовой лицензии, загружаемой Kibana (которая включает X-Pack), а затем вручную удаляет каталог x-pack. Когда плагины, такие как те, что находятся в каталоге x-pack, отключены, Kibana необходимо перестроить все пакеты javascript. Этот процесс, известный как оптимизатор, очень интенсивно использует память и зависит от размера базы кода, поэтому требуемый объем памяти может меняться между выпусками.

Есть несколько вариантов:

  1. Вы можете попробовать собрать свой файл из выпуска OSS Kibana, он не включает плагины x-pack и не требует перекомпоновки пакетов javascript https://www.elastic.co/downloads/прошедшие-релизы/kibana-oss-7-5-2
  2. Выделите больше памяти, 4 ГБ должно хватить.
  3. Создайте промежуточный образ с объемом памяти не менее 4 ГБ. После сборки для запуска образа больше не требуется такого большого использования памяти.
person Rudolf Meijering    schedule 11.02.2020
comment
Большое спасибо. это сработало. Извините за очень поздний ответ - person beginner; 20.05.2020