Как бы прискорбно это не звучало, но к хорошему быстро привыкаешь. Под хорошим я конечно же имею ввиду домашнюю вседозволенность. Пол терабайта оперативной памяти. Терабайты высокоскоростных SSD и NVMe хранилищ. 10+ Гигабитные сетевые интерфейсы. Это вот всё не ценишь пока не лишишься к этому всему доступа (: . Оказавшись в дали от привычной долго и методично возмодимой дома инфраструктуры, ударяешься лбом о реалии. О первый попавшийся под руку ноут который был взят в дорогу. К несчастью это был ни один из моих еврокомов. Это был убогий Lenovo ideapad 3, с 8 гигами оперативной памяти и скромным ссдшником. Хотя если бы я взял с собой хотябы один из своих еврокомов, возможно этой статьи бы не было :).
Собственно работать необходимость никто не отменял. Возможности поднять десяток многоядерных виртмашин с вагоном оперативной памяти и по 32-64гб ссд дисками нет, как и возможности солить их годами не удаляя. Места на диске текущего ноута свободного всего 50 гигов. Даже создать десяток виртмашин и просто катать их туда обратно по снапшотам тоже не вариант. Невозможно столько машин уместить на диске в текущих реалиях. Благо с трафиком проблем нет, но доступ в сеть есть не всегда :).
И тут на помощь приходит Vagrant и VirtualBox. Вместо того чтобы хранить все ВМ с их снапшотами на диске, они создаются по необходимости и удаляются после использования. Прикладываю файлы для Vagrant для разворачивания Zabbix одной командой.
К несчастью бусти не поддерживает тег код. Потому так же будут прикреплены файлы
Vagrant
# -*- mode: ruby -*-
# vi: set ft=ruby :
HOST_NAME = 'zabbix' # Имя VM / VM name
HOST_IP = '192.168.0.127' # VM IP
HOST_USER = 'test' # Дополнительный пользователь / Additional user
HOST_USER_PASS = '123456789' # Пароль дополнительного пользователя. Пароль рута будет таким же / Additional user pass. Root pass will be same
HOST_SHOW_GUI = false # Показывать гуй виртмашины/ Show VM GUI
HOST_MEMMORY = "1024" # Оперативная память ВМ / VM RAM
HOST_CPUS = 1 # Количество ядер ВМ / VM vCPU
HOST_BRIDGE = "Intel(R) Wireless-AC 9560" # В какой сетевой адаптер делать бридж / Network adapter to bridge
HOST_VM_BOX = "generic/debian10" # Из какого бокса выкатываемся / Which box to use
HOST_CONFIIG_SCRIPT = "zabbix-server.sh" # Скрипт который будет запущен в процессе настройки / Script to use while provisioning
ZABBIX_REPO = "https://repo.zabbix.com/zabbix/5.4/debian/pool/main/z/zabbix-release/zabbix-release_5.4-1+debian10_all.deb" # DEB пакет для репозитория ZABBIX / Zabbix repo deb package