Как по мне основная идея DevOps такова: Любой разработчик вне зависимости от квалификации должен: 1) Знать, как работает приложение во всех окружениях. 2) Иметь возможность безопасно в любой момент безопасно выкатить любую его версию в любое окружение. 3) Админы (SRE, DevOps инженеры), называйте их как хотите, здесь нужны для того, чтобы помочь реализовать то что описано в первых двух пунктах. Что касается Continous Integration (CI), Continous Delivery (CD) и Continous Deployment (Другой CD). 1) Continous Integration - Постоянно льем изменения в основную ветку репоизтория, запускаем тесты, проверяем что ничего не сломалось 2) Continous Delivery - При успешном CI, собираем из основной ветри "релиз" и кладем его артефакты в систему хранения артефактов. 3) Continous Deployment - При успешном CD, когда реализованы и отработали шаги 1 и 2, автоматом льем в "production". Самая большая проблема всегда возникает с 3-им пунктом. Потому как решение "когда лить в production" - это бизнес решение и его должен принимать бизнес. Соответственно эта практика не для всех компаний может в принципе подойти.
@grigoryvp6 жыл бұрын
Я обычно делаю кнопку "залить в прод", которую нажимает ответственный :) И автоматика и ручной контроль одинакоdо довольны. Gitlab мне оч нравится простотой реализации такой кнопки. Она нам прямо в виде кнопки есть!
@111adinadinadin1116 жыл бұрын
Оставлю 5 копеек по поводу "антихрупкости". Данный термин впервые встречается в книге Нассима Талеба "Антихрупкость" (неожиданно!). В ней он излагает концепцию (если очень грубо и своими словами), что у нас издревле неверное представление о влиянии хаоса, случайностей, стрессоров и прочего на отдельного человека или общество. Мы привычно считаем, что полная стабильность и предсказуемость - это всегда хорошо, хотя в мире неравновесных систем это синоним стагнации, остывания и смерти. Так вот если представить себе шкалу, по которой мы распределим системы по степени влияния факторов стресса, то окажется что в нуле находятся неуязвимые системы, а далее, в положительную область идут системы с все возрастающим негативным стрессовым влиянием (хрупкие), и чем дальше от нуля, тем больше ущерба от стрессора они получают (вплоть до разрушения). А если мысленно продлить данную шкалу в отрицательную область, то мы получим системы, которые получают выгоду от стрессоров, становятся сильнее, закаляются, приобретают опыт и т.д. (речь, естественно, только о сложных системах с гомеостазисом или даже о саморазвивающихся системах - человеческий организм, коллектив и иные). Естественно, там все сложнее, много факторов, характерных признаков и особых случаев. В общем, если интересно - советую ознакомиться, в этой книге есть интересные наблюдения.
@ThisIsAYoutubeLogin6 жыл бұрын
Идея подкаста - к Григорию приделывается диктофон когда он допивает вторую кружку пива на автопати)
@NNM426 жыл бұрын
Я конечно недавно на канале, и замечаю очень позитивные моменты: 1. орбитруется разговор, тем самым не превращая его в базар 2. есть и о сферических конях, и живые реальные кони 3. круглый стол намекает 4. тайминг 5. список литературы и ссылки Касательно DevOps. Вот я сколько слышал от людей в теме и читал пару книг, там преподносится под соусом "devops - культура" \ "devops как сознание". Точка зрения участников: "devops как методология" - удивило.
@aaleksandrov6 жыл бұрын
Слово "культура" имеет под собой слишком большое количество значений, может возникнуть недопонимание. Со словом методология таких проблем нет, поэтому я предпочитаю употреблять именно его.
@egorkomarov47196 жыл бұрын
Григорий - мастер слова! Обезоружил... Даёшь сходку подписчиков в пабе?)
@Psycho2507856 жыл бұрын
Для этого есть Moscow Python Beer Meetup - подписывайтесь на него на meetup.com. :)
@grigoryvp6 жыл бұрын
Я - всегда за! Приглашайте :)
@79fz2707046 жыл бұрын
а это точно junior подкаст?
@Psycho2507856 жыл бұрын
А почему нет? :) Ну на самом деле хочется, конечно, чтобы интересно было не только джуниорам, поэтому затрагиваем довольно широкий круг тем.
@MrTreshev6 жыл бұрын
@@Psycho250785 ну тогда просто поменяйте название на нейтральное, типа "Григорий и Питон!" :)
@antonikucherov6 жыл бұрын
Я кстати с Гришей не согласился бы по поводу того, что frontend - это просто статика и по best practice ее всегда должно отдавать backend приложение (К тому же статику можно отдавать сразу через nginx напрямую с файловой системы, производительность будет выше.). Часто, так делают, но я бы не сказал что это best practice. Например само приложение может представлять из себя исключительно API/RPC сервер. В таком случае все клиенты будь то Web-клиент или мобильное приложение, являются независимыми приложениями. Или предположим клиент написан на Next.js (В таком случае у него есть свой сервер на node.js, реализующий SSR), а API/RPC реализован на Go. Ну или нам например нужно масштабировать и сервер и Web-клиент горизонтально, причем в разном кол-ве (Предположим 100 инстансов API и 10 инстансов Web-клиента). Во всех этих случаях API сервер - это один контейнер а Web-клиент - второй контейнер. Два разных приложения. Хороший пример: Сам Kubernetes и Kubernetes Dashboard. Два абсолютно независимых приложения. Но второе является клиентом для первого и написано на Angular как раз. При этом запускается в своем контейнере.
@grigoryvp6 жыл бұрын
Я не произносил слово "всегда" ^_^. Один из популярных вариантов, действительно с двумя контейнерами. Но если посмотреть на тот же хероку, то, сюрпри, Python + React стек там реализован одним "контейнером", blog.heroku.com/heroku-django-node
@maksymkudliak24486 жыл бұрын
Ребята, спасибо за интересный подкаст. Григорий Петров в одном из первых выпусков советовал книгу по JS. Я тогда не записал, а теперь не могу найти тот выпуск. Подскажите, пожалуйста, ещё раз. Спасибо!
@Psycho2507856 жыл бұрын
Это было в нулевом выпуске, книга Eloquent Javascript: eloquentjavascript.net/
@maksymkudliak24486 жыл бұрын
@@Psycho250785 Спасибо!
@soam81756 жыл бұрын
Григорий затролил DevOps-ов
@MrTreshev6 жыл бұрын
но к его чести не стал их добивать и сгладил ситуацию :)
@Denis-cy2du5 жыл бұрын
Уроки DevOps на русском бесплатно есть на канале ADV-IT
@roman-bolkhovitin6 жыл бұрын
Угу угу угу угу угууу угу угу (с) Григорий
@abtokarev6 жыл бұрын
Воды и маркетинга с каждым выпуском все больше. Грустно... Прикладывайте, что ли, к следующим релизам сокращенную пятиминутную версию с нарезкой из реплик Григорий Валерьича.
@Psycho2507856 жыл бұрын
Прямо-таки с каждым выпуском? :) И где здесь вы увидели много маркетинга?
@ДмитрийБо-о3л6 жыл бұрын
почему выступающие боятся называть компанию в которой они работали? "называть не буду", а если назовет?
@NMelis6 жыл бұрын
луна взорвется
@kriskaruzo13986 жыл бұрын
выделенный инженер?! это наверно должен делать сеньер? нет?
@aaleksandrov6 жыл бұрын
Зависит от масштаба компании. Если есть возможность выделить инженера в продуктовую/кросс-функциональную команду, лучше это сделать. Он лучше понимает специфику обслуживания приложений, чем разработчик, так что сможет подсказать как лучше спроектировать сервис, как его лучше развернуть на используемой инфраструктуре, подскажет какие метрики/логи нужно добавить. Сеньор с такой задачей справиться хуже, за не имением опыта долгого обслуживания приложений.
@nupsysua6 жыл бұрын
Разница проста qaat.ru/wp-content/uploads/2017/07/ci-vs-cd-devops-difference-768x289.jpg
@LeBrondoter16 жыл бұрын
DevOps - вода
@824pavel5 жыл бұрын
Учите perl и не морочьте людям голову своим python'ом.
@moscowdjangoru5 жыл бұрын
Начните с себя, учите Перл и не морочьте никому голову.