This media is not supported in your browser
VIEW IN TELEGRAM
Очередь в rabbitMQ пошла пиздой
This media is not supported in your browser
VIEW IN TELEGRAM
пиэм заходит к нам на утренний стендап
This media is not supported in your browser
VIEW IN TELEGRAM
Доброе утро товарищи!
Джек-пиздек, все новые мемчики в чатике, разбирать сил нет, ебашил лопатой огород нахуй
This media is not supported in your browser
VIEW IN TELEGRAM
Ансибл. Начинаешь описывать инфраструктуру как боженька, всё предусматриваешь, но по итогу всегда получается лапша. Вот как бы ты не пытался всё ебать вылизать и предусмотреть, один хуй в итоге лапша получается ёбанная, которую нужно постоянно рефакторить.
Поэтому я хуй забил на универсальность ролей и т.п. и описываю инфраструктуру отдельной репой под каждый проект, роли использую те которые близки к совершенству и постоянно довожу их до ума.
Начиная новый проект, копирую наработки из прошлого проекта где уже максимально подлизано и уже адаптирую под новые условия и рефакторю что где можно.
Получается я и мозги не ебу выебываясь с напильником, но и не стою на месте, каждая итерация и каждый новый проект автоматически совершенствует ансибл код.
Поэтому я хуй забил на универсальность ролей и т.п. и описываю инфраструктуру отдельной репой под каждый проект, роли использую те которые близки к совершенству и постоянно довожу их до ума.
Начиная новый проект, копирую наработки из прошлого проекта где уже максимально подлизано и уже адаптирую под новые условия и рефакторю что где можно.
Получается я и мозги не ебу выебываясь с напильником, но и не стою на месте, каждая итерация и каждый новый проект автоматически совершенствует ансибл код.
🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Когда пересел на kubernetes
This media is not supported in your browser
VIEW IN TELEGRAM
Еще один инженер познакомился с kubernetes
This media is not supported in your browser
VIEW IN TELEGRAM
Петух фронт ебашит опса
This media is not supported in your browser
VIEW IN TELEGRAM
Джуну дали расширенные права на сервере
Досталась мне на новой работе интересная задача. Нужно привести в порядок генерацию и хранение SSL сертификатов для балансировщиков. Чтобы блять сделать и забыть навсегда про это гавно.
Проблема заключалась в том, что на 100500 серверах-балансировщиках, каждый сервер ходил по acme и получал себе нужный сертификат. Так же есть пачка тестовых серверов, которые доступны по тому же домену если прописать их в hosts, соответственно тестировщики испытывали анальные боли когда сертификат обновлялся на проде, но не обновлялся на тестовых серверах. Приходилось идти и копировать руками. Хуйня кароче отнимающая время и нервы.
Ну и вишенкой на торте — вся эта залупень работала совсем нестабильно, иногда сертификат продлялся иногда нет, постоянно такие качели, все это на каком-то супербаше обернуто и падает через раз. В мониторинг естественно нихуя не заведено, слепошарое уебанство.
Как я решил задачу
Да блять проще простого, яж нахуй охуенный! Сертификаты я решил складывать в vault, а из ваульта уже забирать ансиблом и катить на все необходимые сервера. Так и сделал, написал небольшую обертку для получения и обновления сертов, засунул ее в докер, ну и шедуллер раз в месяц чтобы поднимал контейнер и делал магию.
Скрипт продляет сертификаты, аккуратно складывает в vault, в awx каждый час прогоняются плейбуки, таск лезит в vault и забирает новые серты если такие есть, раскладывает на балансировщики и тестовые сервера, релоадид nginx и haproxy. Все счастливы. Так же добавил проверку сертификатов на валидность перед тем как зарелоадить, а то может хуйня произойти.
Дополнительно сделал графики просрочки сертов с алертингом через alertmanager. Пока полет нормальный. Скрин графаны скину в комменты.
Вдовесок получил респекты от разработчиков, теперь они сами могут сходить в vault, забрать нужный серт и локально протестировать всякие оплаты и прочую херабору.
А как вы управляете SSL сертификатами на пачке машин?
Проблема заключалась в том, что на 100500 серверах-балансировщиках, каждый сервер ходил по acme и получал себе нужный сертификат. Так же есть пачка тестовых серверов, которые доступны по тому же домену если прописать их в hosts, соответственно тестировщики испытывали анальные боли когда сертификат обновлялся на проде, но не обновлялся на тестовых серверах. Приходилось идти и копировать руками. Хуйня кароче отнимающая время и нервы.
Ну и вишенкой на торте — вся эта залупень работала совсем нестабильно, иногда сертификат продлялся иногда нет, постоянно такие качели, все это на каком-то супербаше обернуто и падает через раз. В мониторинг естественно нихуя не заведено, слепошарое уебанство.
Как я решил задачу
Да блять проще простого, яж нахуй охуенный! Сертификаты я решил складывать в vault, а из ваульта уже забирать ансиблом и катить на все необходимые сервера. Так и сделал, написал небольшую обертку для получения и обновления сертов, засунул ее в докер, ну и шедуллер раз в месяц чтобы поднимал контейнер и делал магию.
Скрипт продляет сертификаты, аккуратно складывает в vault, в awx каждый час прогоняются плейбуки, таск лезит в vault и забирает новые серты если такие есть, раскладывает на балансировщики и тестовые сервера, релоадид nginx и haproxy. Все счастливы. Так же добавил проверку сертификатов на валидность перед тем как зарелоадить, а то может хуйня произойти.
Дополнительно сделал графики просрочки сертов с алертингом через alertmanager. Пока полет нормальный. Скрин графаны скину в комменты.
Вдовесок получил респекты от разработчиков, теперь они сами могут сходить в vault, забрать нужный серт и локально протестировать всякие оплаты и прочую херабору.
А как вы управляете SSL сертификатами на пачке машин?
This media is not supported in your browser
VIEW IN TELEGRAM
Показываю пацанам мой новый пайплайн и как он умеет выкатывать круглый релиз
This media is not supported in your browser
VIEW IN TELEGRAM
сбалансированный пайплайн
This media is not supported in your browser
VIEW IN TELEGRAM
QA проводит нагрузочное тестирование
😁1