Введение
Сразу хочу предупредить, что данная статья не заказная. Меня никто не просил и не заказывал ее написание. Это моя инициатива и желание поделиться полезной информацией с читателями блога и телеграм канала. Ранее я уже описывал прохождения различных курсов. Так же у меня есть статья с личными рекомендациями по обучению IT специалистов в тех учебных центрах, про которые у меня есть собственное мнение. Вот она — Курсы по ИТ, которые я рекомендую.
Информация об описываемом курсе есть на его промо странице — https://slurm.io/ci-cd, так что все формальности и общую информацию можете посмотреть там. Также я не буду рассматривать и обсуждать вопрос стоимости. У каждого свои финансовые возможности и отношение к платному обучению. Так же у каждого свое количество свободного времени, которое он готов потратить на обучение. Практически вся информация обычно есть в интернете и при желании вы все сможете найти и изучить.
Сам я периодически прохожу различные курсы и никогда об этом не жалею. Но у меня мало свободного времени. Практически нет, так что я вынужден получать максимальный концентрат знаний за минимальное количество времени. Текущий курс я до конца не прошел (закончил 80%), но решил не затягивать с отзывом. Во-первых, потому что не знаю, когда его закончу полностью. Во-вторых, он вышел уже относительно давно и затягивая отзыв я могу описать то, что уже изменилось на момент моего прохождения. Курс наверняка будет дорабатываться и меняться вместе с изменениями того же gitlab.
И еще важный момент. Дальнейшее повествование очень субъективное. Я не проводил никаких исследований и вообще не проходил обучение в подобном формате. Мне не с чем сравнивать. Я просто расскажу, что вы получите от курса и все. Задачи сравнить его с другими курсами у меня нет.
Возможности Fluent Bit
Так как о Fluent Bit, как правило, слышали меньше, чем о Logstash, рассмотрим его чуть подробнее. Fluent Bit логически можно поделить на 6 модулей, на часть модулей можно навесить плагины, которые расширяют возможности Fluent Bit.
Модуль Input собирает логи из файлов, служб systemd и даже из tcp-socket (надо только указать endpoint, и Fluent Bit начнёт туда ходить). Этих возможностей достаточно, чтобы собирать логи и с системы, и с контейнеров.
В продакшене мы чаще всего используем плагины tail (его можно натравить на папку с логами) и systemd (ему можно сказать, из каких служб собирать логи).
Модуль Parser приводит логи к общему виду. По умолчанию логи Nginx представляют собой строку. С помощью плагина эту строку можно преобразовать в JSON: задать поля и их значения. С JSON намного проще работать, чем со строковым логом, потому что есть более гибкие возможности сортировки.
Модуль Filter. На этом уровне отсеиваются ненужные логи. Например, на хранение отправляются логи только со значением “warning” или с определёнными лейблами. Отобранные логи попадают в буфер.
Модуль Buffer. У Fluent Bit есть два вида буфера: буфер памяти и буфер на диске. Буфер — это временное хранилище логов, нужное на случай ошибок или сбоев. Всем хочется сэкономить на ОЗУ, поэтому обычно выбирают дисковый буфер. Но нужно учитывать, что перед уходом на диск логи всё равно выгружаются в память.
Модуль Routing/Output содержит правила и адреса отправки логов. Как уже было сказано, логи можно отправлять в Elasticsearch, PostgreSQL или, например, Kafka.
Интересно, что из Fluent Bit логи можно отправлять во Fluentd. Так как первый более легковесный и менее функциональный, через него можно собирать логи и отправлять во Fluentd, и уже там, с помощью дополнительных плагинов, их дообрабатывать и отправлять в хранилища.
Продолжение следует…
Программа обучения
В общих чертах о тематике курса можно получить представление на промо странице слёрма с описанием курса. Но так как это мой личный отзыв, постараюсь рассказать немного своими словами. На обучении вам кратенько расскажут, что такое ci/cd и зачем надо. Тут я немного заскучал, к тому же это было самое начало. Даже немного приуныл, подумав, что в курсе будет много теории. Просто по факту я со всем этим знаком. Я и gitlab знаю, и ci/cd на нем уже настраивал. Так что тут я возможно не очень репрезентативен, так как часть курса точно знал заранее. У меня и статьи есть по установке и настройке gitlab, а так же эксплуатации.
Дальше будет обзор популярных ci/cd систем. Teamcity и Jenkins я знаю. В первом ci/cd немного настраивал. А дальше было несколько продуктов, о которых я не знал. Интересно было познакомиться. Лектор залогинился во все описываемые системы, показал изнутри, как там все устроено. В общем, полезно.
Ну а дальше пошло все про Gitlab. Сначала учимся работать с репозиториями, потом подключаем gitlab-runners, настраиваем простенькие пайплайны с последующим усложнением. Все материалы остаются у вас на руках, так что можно спокойно изучать, редактировать конфиги. Клонировать и создавать репозитории и т.д.
Я остановился на интеграции с Kubernetes. Тема достаточно емкая и сложная. Ранее я уже проходил по ней обучение, так что в целом мне все было понятно. Если вы не знакомы с Kubernetes, то скорее всего ничего не поймете. Но оно и логично. Кубер отдельный сложный продукт. Хотя бы все конфиги и скрипты для деплоя в кубер у вас останутся, плюс на тестовом стенде сможете пощупать руками, как все это выглядит. Если в будущем будете его изучать, пригодится.
В общем, о программе у меня сложилось впечатление, что она для новичков. Слово База в названии курса намекает на это же. Вам дается базовая информация о том, как все устроено в gitlab на простых примерах. Вы все сможете найти в интернете сами при желании, если будете знать, что искать. Если вы уже давно настраиваете ci/cd в gitlab, то вряд ли найдете много для себя нового. Может быть просто структурируете знания и восполните пробелы. Например, я не умел регистрировать раннеры по api, не было необходимости. А тут показали пример и дали ссылку на документацию. Теперь можно использовать это самому при случае.
Мои советы для участников
Подытоживая все сказанное в отзыве, краткая выжимка советов для тех, кто будет участвовать в Слерме для изучения kubernetes:
- Заранее пройдите подготовительные курсы по docker и ansible. Поработайте с ними хоть немного, чтобы получше ориентироваться.
- Настройтесь на рабочий лад и освободите голову от всех проблем и задач на время обучения.
- Организуйте хороший сон, чтобы быть к началу обучения бодрым и готовым к труду.
- Отключите на мобильнике интернет и звук во время обучения.
- Подготовьте ноут к занятиям – запишите все доступы к ресурсам, ссылки на материалы, настройте ssh подключение, чтобы потом не тратить время в процессе. Темп занятий высокий.
- Подготовьте личный тестовый стенд или подумайте об его подготовке, чтобы после занятий сразу начать практиковаться.
Следующий Слёрм будет в Питере с 9 по 11 сентября, причем в конференц зале Selectel. Информация об этом уже есть на странице мероприятия – https://slurm.io Если есть желание участвовать и изучать kubernetes, планируйте заранее. Судя по тому, сколько людей было на этом Cлерме, подозреваю, что мест всем желающим не хватит. Их сейчас заявлено только 100 для очной формы.
Слёрм-2: работа над ошибками
Слёрму нужен нормальный отель. Выбираем пятизвездочный «Царьград».
Желающих больше, чем может вместить зал, и не все могут себе позволить командировку. Организуем удаленные занятия: онлайн-трансляцию, общение в телеграм-канале, группу саппортов для помощи удаленным студентам.
Студентов становится значительно больше. Систематизируем и автоматизируем процессы: создание кластеров, рассылку доступов, сбор вопросов аудитории.
Мы уже не впопыхах принимали организационные решения, а создавали технологию мероприятия.
Тут уже и зал приличный, и столов всем хватает
Теперь вскрываются концептуальные проблемы.
Люди не хотят ехать в загородный отель. Нам казалось, это круто: вырваться из текучки, отправиться туда, где тебя не догонит работа и домашние дела, погрузиться в Kubernetes по уши. Оказалось, это лишний напряг. Кроме того, отель больно бьет по бюджету мероприятия.
Финотделы не хотят оплачивать сотрудникам учебу в зале, когда есть более дешевый онлайн. А ведь мы задумывали онлайн как паллиатив для тех, кто живет в дальних уголках России и в других странах, и не собирались превращать Слёрм в трехдневный вебинар.
Отдельно порадовало, что на МегаСлёрм приехало 40 человек, хотя мы изначально рассчитывали на 15-20. Среди них много участников первого Слёрма.
Как лучше участвовать – очно или онлайн
По поводу участия на Слерме – очно или онлайн. Если раньше я был убежден, что очно однозначно лучше, то после Слерма я засомневался. До этого я проходил обучение только онлайн. Это был первый опыт и вот какие плюсы и минусы разных форматов я могу отметить. Плюс за очное обучение по kubernetes на Слерме:
- Хорошее погружение в тему. Я не знаю, какие физические законы могут описать мои наблюдения, а они таковы. Когда участвуешь в каком-то мероприятии очно, ты погружаешься в определенную информационную среду, из которой можешь черпать информацию. Создается какой-то специфичный фон, который настраивает и помогает мыслить в нужном направлении. К примеру, я всегда хожу на конференции с блокнотом и записываю мысли по ходу выступлений. Обычно мыслей много и они полезные, приходят как-то сами в голову. Если смотрю записи, то такого эффекта не наблюдаю. То же самое с обучением. В зале ты более сконцентрирован на теме обучения, информация лучше заходит и остается в голове. В эзотерике этот эффект объясняют подключением к определенному эгрегору, который формирует группа людей, думающих об одном и том же.
- При личном участии ты можешь с кем-то пообщаться, что-то спросить, с кем-то познакомиться. Получить новую полезную информацию так проще. Насчет знакомств конкретно на Слерме не уверен, что стоит сильно рассчитывать. Формат мероприятия не подразумевает какой-то совместной деятельности, да и просто свободного времени нет. Я пообщался с несколькими людьми, но не могу сказать, что мы сильно познакомились и это прям было очень полезно. Почти все время ты сидишь и занимаешься, перерывы только на поесть, в туалет сходить. Времени знакомиться и общаться почти нет. Было бы интересно организаторам продумать момент насчет совместного банкета или какого-то развлекательного мероприятия после обучения за отдельную плату для желающих. Я бы сходил. На обучении так умаялся, что нужен отдых
- Ты видишь вообще все, что происходит на мероприятии. Иногда кто-то что-то говорит в зале без микрофона, лекторы отвечают. Что-то еще может происходить за объективами камер. Трансляция может отвалиться из-за технических проблем и т.д. Когда ты в зале, то ничего не пропускаешь и в курсе всех дел и нюансов.
- В конце ты получаешь кружку с картинкой Слёрма
Минус очного обучения на Слерме:
- У меня походный ноутбук небольшого размера с экраном 12,5 дюймов. За ним откровенно неудобно полноценно работать. Плюс, не хватает второго монитора. А в идеале для комфортного обучения надо 3 монитора – лектор, консоль, инструкция или чат.
- Надо ехать и тратить время на дорогу. Для кого-то это привычно, но я тружусь обычно удаленно, мне не нравится ездить на метро. Я приезжал к 9.30, обучение заканчивалось где-то в 19.30-20.00 Плюс дорога. Можете сами прикинуть, как вам это подходит.
- В зале постоянно что-то отвлекает – кто-то болтает, шуршит, открывает алюминиевую банку газировки и т.д. Удаленно легче концентрироваться на учебном материале.
Описал субъективные впечатления от разных форм обучения. Я бы лично так поступал. Если живешь в Москве – можно ехать и участвовать очно. Если в другом городе – подойдет и онлайн обучение. Как мне кажется, для восприятия информации одинаково подходят оба формата. Я смотрел записи трансляций. Они выполнены на хорошем уровне. С учетом того, что зал большой, участников много, где-то 2/3 из участников в зале сами сидят и смотрят на лектора в трансляцию, которая идет через проекторы и экраны на стенах.
Конечно, если вы едете за счет работодателя, то можно и приехать из другого города, но будьте готовы к тому, что Москвы вы не увидите. У вас не будет для этого времени, либо надо закладывать лишний день. В общем случае, у вас будет так – приехал в Москву, пошел на обучение, вернулся в гостиницу, лег спать. Второй день встал, пошел на занятие, вернулся, лег спать. Третий день отучился, ухал на вокзал, сел в поезд. Обучение интенсивное (не зря же интенсив называется :), занимает все время.
Prometheus
Лучшая система для мониторинга кластера — это Prometheus. Я не знаю ни одного инструмента, который может сравниться с Prometheus по качеству и удобству работы. Он отлично подходит для гибкой инфраструктуры, поэтому когда говорят «мониторинг Kubernetes», обычно имеют в виду именно Prometheus.
Есть пара вариантов, как начать работать с Prometheus: с помощью Helm можно поставить обычный Prometheus или Prometheus Operator.
- Обычный Prometheus. С ним всё хорошо, но нужно настраивать ConfigMap — по сути, писать текстовые конфигурационные файлы, как мы делали раньше, до микросервисной архитектуры.
- Prometheus Operator чуть развесистее, чуть сложнее по внутренней логике, но работать с ним проще: там есть отдельные объекты, абстракции добавляются в кластер, поэтому их гораздо удобнее контролировать и настраивать.
Чтобы разобраться с продуктом, я рекомендую сначала поставить обычный Prometheus. Придётся всё настраивать через конфиг, но это пойдёт на пользу: разберётесь, что к чему относится и как настраивается. В Prometheus Operator вы сразу поднимаетесь на абстракцию выше, хотя при желании покопаться в глубинах тоже будет можно.
Prometheus хорошо интегрирован с Kubernetes: может обращаться к API Server и взаимодействовать с ним.
Prometheus популярен, поэтому его поддерживает большое количество приложений и языков программирования. Поддержка нужна, так как у Prometheus свой формат метрик, и для его передачи необходима либо библиотека внутри приложения, либо готовый экспортёр. И таких экспортёров довольно много. Например, есть PostgreSQL Exporter: он берёт данные из PostgreSQL и конвертирует их в формат Prometheus, чтобы Prometheus мог с ними работать.
«Слёрм-1»: в первый раз всегда больно
Концепция первого Слёрма непрерывно менялась. Мы проведем его в «Поселке программистов под Кировом». Нет, переезжаем в отель под Москвой. Делаем программу на неделю. Нет, на 3 дня. Рассчитываем на 30 участников. Нет, на 50. Практику проходим на ноутбуках. Нет, в облачном кластере.
Сотрудники Southbridge впервые встретились вживую
Учиться на Слёрм приехало 20 человек из Southbridge. Мы практически без рекламы продали еще 30 билетов по 25 000 ₽ (что очень дешево с учетом проживания), и еще человек 30 зарегистрировалось в очередь ожидания. Стало ясно, что спрос на такие курсы огромен.
2 августа 2018 года, участники съезжаются в отель, и шквал организационных проблем больно бьет нас по голове.
В конференц-зале, где должен проходить Слёрм, не закончен ремонт. Нет столов: то ли доставка из Икеи задержалась, то ли отель и не собирался их закупать, а нам вешал лапшу на уши. Треть номеров непригодны для жизни. Администрация отеля выглядит так, как будто еще вчера доила коммерсов, а девушки на ресепшене умучены, как те самые коммерсы.
В этом зале через 20 часов начнется Слёрм
Сидим практически друг у друга на коленях
Тем не менее, за первый день все животрепещущие вопросы были решены: столы собрали со всего отеля, «ограбив» ресепшен и столовую, самых пострадавших гостей поселили в «Корстоне» в близлежащем Серпухове, заодно оплатив им такси, наладили подвоз воды и питание.
Что делают админы после трудного рабочего дня?
Трубы для фонтанов
Из-за сложности и требования очень внимательного относиться к мелочам занимаются разработкой «труб» специально обученные люди: Devops-ы, выросшие из самых опытных админов и разработчиков. Их работа планомерна и строго последовательна. Они подобны строителям мостов — любая ошибка приводит к тому, что легкая бизнес-задача на 15 минут вдруг превращается в перепланирование инфраструктуры на много дней и денег.
Слёрм на данный момент — единственный в России курс (из известных мне), который обучает построению инфраструктуры стандартизованным образом, позволяющим хоть как-то нивелировать ошибки планирования. Я был на курсах по Kubernetes, а в сентябре собираюсь на новый курс по DevOps.
Слёрм придумала компания Southbridge, аутсорсер администрирования, построивший десятки фонтанов самой разной формы. Southbridge — сертифицированный KTP и KCSP (CNCF, Linux Foundation Member).
Слёрм-3: здравствуй, Питер!
Проводим Слёрм в Питере. Делаем одинаковую цену на «живое» и удаленное участие.
И промахиваемся с размерами зала.
Выбираем небольшой аккуратный зал на 50 человек. Заявки медленно капают, и вдруг наступает конец декабря. Компании принимаются стремительно осваивать бюджеты 18 года и буквально за неделю раскупают все места.
Весь январь люди пишут: «Мы из Питера, только узнали, хотим в зал, найдите, пожалуйста, местечко». И мы добавляем еще 20 мест. По расчетам выходило, что все поместятся, но когда мы начинаем расставлять столы, получается очень тесно.
На третьем Слёрме кристаллизуются требования к размерам, планировке и оборудованию зала.
Как обычно, вскрывается новый слой проблем: наши спикеры круты как технари, но не как преподаватели. Мало иметь хорошую программу, надо донести ее до аудитории.
После третьего Слёрма у проекта появляется методическое сопровождение.
Веб-интерфейс Prometheus
У Prometheus есть свой, довольно минималистичный веб-интерфейс. Подходит разве что для дебага или демонстрации.
В строке Expression можно писать запрос на языке PromQL.
Во вкладке Alerts содержатся правила алертов — alerting rules, и у них есть три статуса:
- inactive — если в данный момент алерт не активный, то есть по нему всё хорошо, и он не сработал;
- pending — это в случае, если алерт сработал, но отправка ещё не прошла. Задержку устанавливают, чтобы компенсировать мигания сети: если в течение минуты заданный сервис поднялся, то тревогу бить пока не надо;
- firing — это третий статус, когда алёрт загорается и отправляет сообщения.
В меню Status найдёте доступ к информации о том, что из себя представляет Prometheus. Там же есть переход к целям (targets), о которых мы говорили выше.
Более подробный обзор интерфейса Prometheus смотрите в лекции Слёрм по мониторингу кластера Kubernetes.
Что такое Слёрм
Для начала, что это вообще такое со странным названием. Вот сайт мероприятия – https://slurm.io Там есть вся официальная информация. По описанию трудно оценить, что же на самом деле тебя ждет и как все будет проходить. Я постараюсь подробно обо всем рассказать и оставить свой отзыв.
Слёрм организаторы назвали интенсивом по изучению kubernetes. Лично я не понимал полностью значение этого слова применительно к обучению. Что за такой интенсив, почему не просто курс или обучение. Поучаствовав, я понял, что слово интенсив тут очень уместно
Итак, Слерм – это обучение по Kubernetes. Начальный курс (есть и продвинутый – Мега Слерм) рассчитан на тех, кто вообще не знает что такое Kubernetes, но хочет с ним познакомиться и начать работать. Это как раз про меня. Перед обучением я не знал ничего о Кубере, кроме общих обзорных статей, с которыми сталкивался. Никакой конкретики в голове не было.
Для обучения очень желательно знать docker и ansible, опционально ceph, но не обязательно, я не знаком вообще. Перед основным интенсивом вы получаете доступ к записанным онлайн урокам по этим темам. В целом, там есть все основы, которых хватит для того, чтобы пройти курс, но могу сказать, что для эффективного освоения Kubernetes, docker и ansible надо знать в объеме бОльшем, чем дается на курсе, иначе вы просто не уложите все в голове за такой короткий период времени.
Я был знаком на среднем уровне и с ansible, и с docker. Предварительные курсы помогли систематизировать знания, узнать какие-то новые вещи. Доступ к онлайн курсам выдается за 3 недели до начала основного обучения по кубернетис, при условии поступления оплаты. Я рекомендую сразу же проходить эти курсы и вникать в предложенные темы, начать пользоваться, чтобы к моменту основного обучения для вас это были привычные инструменты. Так что проконтроллируйте вопрос с оплатой, чтобы не тянуть до последнего момента.
После подтверждения участия в мероприятии, вы получаете доступ в чат Telegram, где находятся все участники и организаторы. По активности в этом чате я понял, что большинство участников начали проходить предварительные курсы в последние несколько дней перед основным обучением. Это явная ошибка. На самом интенсиве вы получите столько новой и тяжелой для усвоения информации, которую переварить будут трудно. Лучше подготовить и освободить голову заранее.
Онлайн-практикумы REBRAIN
Для более спокойного и вдумчивого обучения новым знаниям больше подходят курсы от Rebrain. Основная их особенность в том, что:
- Вы обучаетесь в оффлайн тогда, когда вам удобно.
- У вас все материалы, в том числе видео, остаются навсегда. Вы в любой момент сможете к ним обращаться.
Лично курсы Rebrain я не проходил, но рекомендую их вот по какой причине. Компания один-два раза в неделю проводит онлайн практикумы по темам своих курсов. Их ведут в том числе авторы курсов. Эти практикумы я посещаю достаточно регулярно в течении полугода точно, может и больше. Так что имею представление о чем там примерно рассказывается и кто составляет и ведет эти курсы. Среди ведущих бесплатных практикумов есть в том числе и бывшие ученики этих курсов.
В общем, на основе той информации, что я получил на семинарах, я сделал вывод, что информация дается актуальная и полезная от людей, которые реально работают с инфраструктурой и сервисами, о которых они рассказывают.
Само обучение проходит по следующей схеме:
- Вы покупаете доступ на курс. У вас открывается личный кабинет.
- В личном кабинете вы смотрите учебный материал в виде лекций и видеозаписей.
- К каждой теме есть задания, которые вы выполняете и отправляете на проверку.
- В течении 24 часов вашу работу проверяют, исправляют или помогают выполнить.
Примерно так. Для учеников есть поддержка и общий чат в Telegram. Инфраструктура для выполнения заданий предоставляется.
Таким образом, покупая доступ к курсу, вы спокойно учитесь в любом подходящем для вас графике. Все материалы остаются с вами бессрочно. Вы всегда сможете к ним возвращаться.
Рекомендую подписаться на их анонсы по бесплатным практикумам и посмотреть их. Информация дается актуальная и полезная. Запись практикума будет доступна потом только тем, кто присутствовал на нем лично. Вот не полный список тем прошедших практикумов.
Архитектура Prometheus
Prometheus Server — это серверная часть, мозг Prometheus. Здесь хранятся и обрабатываются метрики.
Метрики хранит time series database (TSDB). TSDB — это не отдельная база данных, а пакет на языке Go, который вшит в Prometheus. Грубо говоря, всё находится в одном бинаре.
Prometheus Server работает по модели pull: сам ходит за метриками в те эндпоинты, которые мы ему передали. Сказали: «ходи в API Server», и он раз в n-ое количество секунд туда ходит и забирает метрики.
Для объектов с короткой продолжительностью жизни (job или cron job), которые могут появляться между периодами скрапинга, есть компонент Pushgateway. В него пушатся метрики от краткосрочных объектов: job поднялся, выполнил действие, отправил метрики в Pushgateway и завершился. Через некоторое время Prometheus в своём ритме сходит и заберёт эти метрики из Pushgateway.
Ну и напоследок расскажу про киллер-фичу Prometheus — Discovering. При работе с Prometheus не нужно указывать конкретные адреса объектов для мониторинга, достаточно задать их тип. То есть не надо писать «вот IP-адрес, вот порт — мониторь», вместо этого нужно определить, по каким принципам находить эти объекты (targets — цели). Prometheus сам, в зависимости от того, какие объекты сейчас активны, подтягивает к себе нужные и добавляет на мониторинг.
Такой подход хорошо ложится на структуру Kubernetes, где тоже всё плавает: сегодня 10 серверов, завтра 3. Чтобы каждый раз не указывать IP-адрес сервера, один раз написали, как его находить — и Discovering будет это делать.
Язык Prometheus называется PromQL. С помощью этого языка можно доставать значения конкретных метрик и потом их преобразовывать, строить по ним аналитические выкладки.
Слёрм: интенсив по Kubernetes. Программа и бонусы +17
- 25.04.19 02:11
•
aSkobin
•
#449490
•
Хабрахабр
•
•
1900
Блог компании Southbridge, DevOps, Серверное администрирование, Системное администрирование, Kubernetes
27-29 мая мы проводим четвертый Слёрм: интенсив по Kubernetes.
Бонус: онлайн-курсы по Docker, Ansible, Ceph
Мы вывели из Слёрма темы, которые важны для работы с Kubernetes, но напрямую к k8s не относятся. Как, почему и что получилось — под катом.
Все участники Слёрма-4 получат доступ к этим курсам.
Полный манибек в первый день
На питерском Слёрме два участника оставили крайне негативные отзывы. Как я жалел, что нельзя вернуться в прошлое и расстаться с ними без взаимных претензий.
Если вы поймете, что на Слёрме категорически не нравится, в первый день напишите любому из организаторов. Мы отключим доступы и вернем полную цену участия.
Консультации техдира
Если кто знает Дмитрия Симонова (он собрал клуб техдиректоров), мы пригласили его на Слёрм (учиться, а не выступать). Он обещал консультировать всех желающих. Вряд ли это будет интересно администраторам и разработчикам, а вот управленцам от IT — очень даже.
Чему конкретно учат на курсах по Kubernetes?
Лёгкий выкат в тест-, стейдж- и продакшн
- Lint
- Инструменты темплэйтирования и деплоя
- Стратегии деплоя
Есть ещё курс на стероидах, там вообще всё хардкорно. Тем не менее, после базового курса уже можно строить свой фонтан.
После Слёрма у участников остались артефакты — видеозапись всех дней, подробные инструкции по каждому пункту вместе с точными рецептами, команды которых можно тупо копипастить, чтобы собрать или решение для бекапа или решение для тестовых сред или ещё что-нибудь.
То есть вот так всё просто. Да
Пришёл на несколько дней, погрузился в тему, получил точные рецепты и вернулся на рабочее место строить инфраструктуру проекта — просто, правильно и, самое важное, прогнозируемо по срокам. Магия и колдовство кончились, осталось просто работать
Как проходит обучение по kubernetes
Слёрм проходит в интересном формате. Тут я удивился грамотному и удобному подходу. Каждому участнику Слерма выдается свой логин и пароль, с помощью которого он получает доступ к:
- Предварительным курсам по ansible, docker и ceph;
- Git репозиторию со всей текстовой информацией, презентациями и практическими заданиями;
- Общему серверу с уже настроенным и работающим кластером Kubernetes;
- Кластеру с несколькими виртуальными машинами, где вы будете настраивать свой кластер.
Доступ ко всем указанным ресурсам удаленный, можно в любой момент подключиться из дома после занятий. Плюс, какое-то время все или частично доступно до курса и после.
Вы приходите в зал для обучения, там есть интернет по wifi. В первый день он немного подглючивал до обеда, но потом все нормализовалось. Подключаетесь по ssh к серверам и выполняете команды на них. Обучение идет в таком формате – сначала лектор немного рассказывает, потом идет в свою консоль, вы за ним в свою и начинаете выполнять различные команды. Сначала за лектором повторяете, в конце обычно небольшое практическое задание, которое нужно выполнить самостоятельно, не простым копипастом, а немного подумав и изменив конфиги.
В зале помимо лекторов присутствуют несколько сотрудников тех. поддержки, которые подходят и помогают тем, у кого что-то не получается. Темп самостоятельных заданий не высокий, можно все успеть, если делать аккуратно и не ошибаться в мелочах. Сложность подобрана, с моей точки зрения, оптимально. Было и не слишком легко, и в то же время не возникало такой ситуации, что если ты что-то не успел и не получилось, то ты выпадаешь из процесса обучения и сидишь, ничего не понимая. Отстающих обычно ждали, помогала тех поддержка. Плюс, в конце лектор показывает, как надо было сделать, чтобы все получилось.
Лично у меня не возникало сложностей с заданиями. Выполнял их достаточно легко и в срок. Из наблюдений, не получалось в основном у тех, кто либо не внимательно слушал, либо ошибался в синтаксисе команд, либо просто не хотел соображать от усталости Плюс, я все новые команды сразу записывал себе в текстовый файл и потом в них не путался, а копировал из него. Это существенно ускоряло процесс и способствовало запоминанию. Видел, как окружающие либо набирали команды, глядя на консоль лектора, а с нее не скопируешь, либо пытались найти эти команды в чате, куда их иногда постили, либо в материалах обучения
Все это отнимает время и внимание. Свои замечания по поводу того, как улучшить этот момент, отправил организаторам
В процессе обучения kubernetes случались перерывы. Их было достаточно много:
- 2 перерыва по 10 минут на туалет, курение.
- 2 перерыва по 15 минут на кофе-брейк, где можно было перекусить сэндвичами и попить чай, кофе, морс.
- 1 перерыв 60 минут на обед.
Отдельно хочу рассказать про воду, питание. Ехал на курс в первый день, думал, надо бы водички купить, что-то перекусить взять. На всякий случай зашел перед занятиями в кафе, перекусил, чтобы не отвлекаться на голод. Думал, мало ли, как там и чем покормят. Опасения были напрасны. Этот вопрос хорошо проработан. В зале для всех была вода и кола в неограниченном количестве. В кофе-брейки было много сэндвичей и печенья, плюс напитки. Все с избытком, хватало всем и было вкусно. Обед тоже вкусный и сытный, много блюд на выбор (шведский стол). То есть вопрос с питанием проработан полностью, можно не переживать и не думать об этом. Брать с собой ничего не надо, воды-еды хватило всем с запасом. Кормили в гостиничном ресторане.
В конце обучения по kubernetes у меня был настроен свой кластер с возможностью CI/CD через gitlab. Последнее мне было интереснее всего, так как просто не знал, как это полностью выглядит на практике, от тестов до деплоя. До этого что-то сам колхозил по своим представлениям. Увидел всю цепочку, как после коммита разраба в репозитории, выкатывается приложение в кластер. Задал несколько вопросов по ходу и как мне кажется, в голове сложилась полная картина того, как все должно быть устроено. Получается, что не зная Kubernetes до этого, на Слерме я научился поднимать кластер и деплоить в него приложение.
В последний день, сразу после курса, пришел домой и попробовал собрать кластер на своем железе. Сидел до трех ночи, пока виртуалки подготовил, пока все настроил. Не получилось сходу, но в процессе начал разбираться, открыл лекцию и запись занятия, понял в чем ошибка. Буду пробовать еще раз, как время появится. Надо окружение заново поднимать. То есть общее представление появилось и с этим уже можно двигаться дальше. Думаю, что в будущем напишу статьи по Kubernetes, если зайдет нормально. Применить в проде есть где, но надо сначала на тестах посидеть и освоиться.
Заключение
Таким образом, если у вас есть желание быстро продвинуться и начать зарабатывать хорошие деньги в ИТ, но при этом вы не умеете или не любите программировать, рекомендую двигаться в сторону специальности Devops инженер. Чтобы максимально ускорить обучение, я бы рекомендовал сначала пройти подходящий интенсив в Слёрм, чтобы быстро войти в тему, а потом закрепить результат практикумами Rebrain. Если Linux знаете плохо, пройдите сначала курс администратор linux от rebrain.
С таким подходом, через пол года вы сможете устроиться куда-то на позицию Junior DevOps Engineer, а через год-полтора, если будете усердны в обучении и практике, станете полноценным DevOps Engineer. Какие у них сейчас зарплаты, можете сами уточнить на hh. А заодно и прикинуть, как быстро окупится обучение и стоит ли оно своих денег. На сегодняшний день мне видится это самым перспективным и интересным направлением в теме эксплуатации ИТ систем.
Если вы автор каких-то курсов, уверены в их качестве и хотите, чтобы я написал свой отзыв о них, пригласите меня на обучение на общих условаиях, как обычного ученика. После прохождения обучения я подробно опишу его. Примеры описания вы можете наблюдать в этой статье.
Онлайн курс Infrastructure as a code
Если у вас есть желание научиться автоматизировать свою работу, избавить себя и команду от рутины, рекомендую пройти онлайн курс Infrastructure as a code. в OTUS. Обучение длится 4 месяца.
Что даст вам этот курс:
- Познакомитесь с Terraform.
- Изучите систему управления конфигурацией Ansible.
- Познакомитесь с другими системами управления конфигурацией — Chef, Puppet, SaltStack.
- Узнаете, чем отличается изменяемая инфраструктура от неизменяемой, а также научитесь выбирать и управлять ей.
- В заключительном модуле изучите инструменты CI/CD: это GitLab и Jenkins
Смотрите подробнее программу по .