Небольшая моя реализация стека ELK для локальных экспериментов.
Внутри vagrant и init.sh скрипт, который развернет на одной ноде elasticsearch, kibana, logstash. Конфигов под logstash нет, тут предполагается, что их добавят самостоятельно, если нужно. Также автоматически поставится nginx, который будет работать как обратный прокси к kibana и будет обслуживать домен kibana.lan. Это в свою очередь предполагает наличие локального DNS с соответствующей записью. Установки и настройки DNS внутри репозитория нет.
Перед запуском нужно в Vagrantfile отредактировать IP адресс и название bridge интерфейса:
Vagrant.configure("2") do |config|
config.vm.box = "bento/ubuntu-22.04"
config.vm.box_check_update = false
config.vm.provision "shell", path: "init.sh"
config.vm.hostname = "elk"
config.vm.network "public_network", ip: "192.168.10.21", bridge: "wlp0s20f3" ###Заменить на свои
config.vm.synced_folder "./", "/vagrant"
config.vm.provider "virtualbox" do |vb|
vb.cpus = 1
vb.memory = 4096
vb.gui = false
vb.name = "elk"
vb.check_guest_additions = false
end
endВ скрипте init.sh, если например не нужен nginx, можно просто за комментировать строку с вызовом функции install_nginx. Там же можно задать креды для UI kibana и для общения кибана с elastic.
Запуск:
vagrant up
#elk