было на него смотреть или для ещё чего то?
2. У меня просто нет навыков интеграции) Видел что терраформ может писать в файл переменные, которые подхватит ансибл. Ну и вроде как можно прям в файл терраформа.
Не не, интегрироваться - это просто хотелка. Увидел что он может tfstate хранить - сразу мысль что терраформ можно сделать не просто запускаемым скриптом в CI/CD, а теснее как то подключить. Что бы работало круче. Но опять же - это просто хотелка. Если излишне - можно убрать и пофиг. У меня почти нет опыта в таких вот... вещах. Потому представляется так: 1. Нужен кластер из 4 машин. 2. Пишу терраформовский файл, что бы он создавал эти самые машины с нужными ресурсами. 3. Передаю нужные переменные... куда-то. Например IP-адрес полученный по DHCP (Хотя я уже не уверен что это правильно, но все же кажется так будет правильно - адрес получил, и его скормил как переменную в ансибл) 4. Следующий этап активирует ансибл с переменными - какие то записаны статично, какие то получил от терраформа. Ансибл проводит настройку всех узлов. 5. Настройка завершена. 6. Потом если нужно будет что то изменить, я правлю ансибл, делаю коммит/пуш и изменения улетают на сервера. Думаю это должно выглядеть как то так. Потому и спросил вначале "Поделитесь опытом". Я не знаю как правильно 😅
Стейт в гитлабе неудобно хранить, лучше в с3. Да и выкиньте вы нахрен этот ансибл. Делаешь тупейший клауд инит для раскатки куба и работаешь с кубом
Я с кубом не работал ни разу, будет сложно) Да и потом, мне же не надо софт разворачивать определенным образом: ставить пакеты, выполнять команды для настройки, перезагружать хосты. Ансибл хорошо подходит. А почему стейт неудобно хранить в гитлабе?
Тебе кажется, что тебе это надо, потому что куб не трогал В гитлабе ты не сможешь подкаталог для стейта сделать, если например будешь юзать terragrunt
Хах, если раньше я еще что то примерно понимал, то после terragrunt вообще перестал) Я за такие штуки еще не шарю) Оно полезное?
Ну в общем и целом ОЧЕНЬ Если ты сразу его будешь юзать, то по итогу получишь модульную инфру Вот например у меня кучка модулей https://gitlab.com/from-the-lamp/infra/terraform/modules Вот тут https://gitlab.com/from-the-lamp/infra/terraform/oracle я в common к ним обращаюсь А stage и prod две идентичных среды, где уже можно что-то переопределить, например кол-во хостов или вот например я задаю урл для окружения и т.п. https://gitlab.com/from-the-lamp/infra/terraform/oracle/-/blob/main/stage/env.hcl?ref_type=heads
А ну и вот 20 строк для поднятия k3s https://gitlab.com/from-the-lamp/infra/terraform/oracle/-/blob/main/_common/oracle/scripts/k3s.sh?ref_type=heads И рот наоборот того ансибла
а зачем для него подкаталог
Я выше все описал
Обсуждают сегодня