Size: a a a

2020 March 16

DS

Dmitry Sergeev in DevOps
Let Eat Bee
реверт это  супер рабочий инструмент. можно перед ревертом 10 комитов попробовать "задеплоить тег", который попытается создать новый комит с желаемым состоянием, но не факт что будет идентичным
он нормальной автоматизации не поддается. + сюда добавляется факт того, что мы точно не знаем до какого момента ревертится, так как инфу в каком комите прописана нужная версия артифактов мы не знаем
источник

LB

Let Eat Bee in DevOps
Dmitry Sergeev
он нормальной автоматизации не поддается. + сюда добавляется факт того, что мы точно не знаем до какого момента ревертится, так как инфу в каком комите прописана нужная версия артифактов мы не знаем
у меня знаем :) комит в инфра репе это просто еще один артефакт сиая приложения. конечно знаем. вот у @elemir90  не знаем :)
источник

LB

Let Eat Bee in DevOps
я никуда не тороплюсь когда напьюсь тогда напьюсь
Посмотри на рутрекере OTUS свежий, там много зарелизили. В одной из серий ДЖВА ЧАСА РАССКАЗЫВАЮТ ПРО State
ссылку?
источник

ЕО

Евгений Омельченко in DevOps
Dmitry Sergeev
он нормальной автоматизации не поддается. + сюда добавляется факт того, что мы точно не знаем до какого момента ревертится, так как инфу в каком комите прописана нужная версия артифактов мы не знаем
Ничего не мешает вам тегировать инфрарепу или в описании коммита писать
источник

DS

Dmitry Sergeev in DevOps
Let Eat Bee
у меня знаем :) комит в инфра репе это просто еще один артефакт сиая приложения. конечно знаем. вот у @elemir90  не знаем :)
где хранится инфа, что в таком-то коммите инфра репы хранится такая-то версия артифакта?
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
George Gaál
Начнем с того, что ci != Cd
Я много раз читал и слушал про отличия, но если каждый день не работаешь с этим - объяснить не можешь. Прям вопрос для FAQ/собеседования, можно даже по-умному задать, а не перечислите_уровни_молели_OSI-style
источник

DS

Dmitry Sergeev in DevOps
Евгений Омельченко
Ничего не мешает вам тегировать инфрарепу или в описании коммита писать
у вас реально менеджеры ревертят инфра репу для отката приложения?
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Dmitry Sergeev
ну вот реальный кейс. Давай еще раз
Есть одно и тоже приложение для разных платформ:
google, ios - юзеры во сновном из европы.
wechat, tiktok - китай
yahoojp - япония

Базы общие не нужны, бэкенды тоже. Самый просто способ - деплоить их отдельно. Нет никакой причины держать для них общий бэк и базу. Иначе проблем с тем что  у тебя бэкенды и база геораспределены по всему земному шару просто уйма. + у тебя нет всяких там AS и bgp anycast и тому подобного.

Просто не понимаю, почему когда ты идешь в сторону упрощения архитектуры, чтобы не страдать от сложных проблем это легаси?
ЭТО ДРУГОЕ!
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
George Gaál
Я сомневаюсь в твоей верной оценке происходящего
Это НОРМА, я же джун.
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Евгений Омельченко
Ну это же другой вопрос совершенно. Почему ты не спросил сразу — как деплоить в 5 кластеров одновременно?
+
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Евгений Омельченко
Ну это же другой вопрос совершенно. Почему ты не спросил сразу — как деплоить в 5 кластеров одновременно?
Пытался не стой стороны решать
источник

LB

Let Eat Bee in DevOps
Dmitry Sergeev
где хранится инфа, что в таком-то коммите инфра репы хранится такая-то версия артифакта?
ну изначально наоборот, по  репе приложения можно узнать комит в инфра репе. например можно хранить в артефактах сиая или в git notes к комиту репы.

можно и обратную связь поставить - в комите инфра репы указать комит репы/сиай джобу которая создала этот комит в инфре
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
А у @yamlcoder почему так мало?
источник

LB

Let Eat Bee in DevOps
кармабота надо отменить ИМХО
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Let Eat Bee
для ясности  моя позиция: гитопс инфра репа это то откуда синкается состояние кластера. эта такая штука скажем одна на весь куб кластер или хотя б на одну команду и все её неймспейсы. там хранятся  отрендеренне манифесты, просто голые ямлы без никаких темплейтов или кастомайзов. туда комиты попадают из сиай разных реп, не важно что там они делают, но на выходе выдают пачку ямлов и комитят ее в инфра репу, затем у себя записывают комит инфра репы, что потом позволяет отследить деплои
сложна
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Let Eat Bee
кармабота надо отменить ИМХО
Я бы взял тебя и его в свою команду по спасению мира. И ещё третьего, который редко заходит (но метко). А тех, которые любят одменам жалобиться и писать обезличенные предьявы/сарказмы в пустоту - отдал бы @gecube - в команду злодеев.
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Dmitry Sergeev
еще раз это был условный пример. Я его просто выдумал, там нет конкретики. Замени cronjob на любой объект куба из своей головы, если хочешь я могу поправить свои сообщения, и заменю там cronjob на service если тебя это беспокоит
Я не знаю кубера 😥Прочитал книжку и начал другую, но понятнее не стало. А рабочего кластера чтобы посмотреть нет под рукой
источник

як

я никуда не тороплюсь когда напьюсь тогда напьюсь in DevOps
Let Eat Bee
реверт это  супер рабочий инструмент. можно перед ревертом 10 комитов попробовать "задеплоить тег", который попытается создать новый комит с желаемым состоянием, но не факт что будет идентичным
птичий язык
источник

DS

Dmitry Sergeev in DevOps
Еще раз есть кейс:

Одно и тоже приложение на куче платформ:
ios (весь мир но чаще Европа)
google (весь мир но чаще Европа)
tiktok (китай)
wechat (китай)
yahoojp (япония)
hangame (япония)
...

Самый простой способ - менеджить их отдельно. То что они деплоятся в разные кластера итак понятно (с этим проблем нет никаких). Ничего общего им не надо, базы данных тоже живут отдельно.
Помиго этого. Менедежер хочет деплоить каждую платформу отдельно. И контроллировать версию для каждой платформы.

Такой подход антипаттерн и легаси? Какой тогда подход в таком кейсе лучше и не будет антипаттерном?
источник

GG

George Gaál in DevOps
Евгений Омельченко
Я исхожу из трёх принципов:
1. Принцип единой ответственности, т.е. за одну вещь в один момент времени должен отвечать один агент. Если ответственность передаётся, то механизмы её передачи должны быть читаемыми и прозрачными для всех участников процесса
2. Принцип повторяемости инфраструктуры, при наличии бекапов приложения инфраструктура уметь быть легко развернута повторно на новых мощностях
3. Принцип читаемости кода инфраструктуры, человек должен легко уметь прочитать код из 2 и сделать выводы о том как устроена инфраструктура приложения
2. бекапы не нужны. У тебя все должно быть развертываемо из репы
источник