Самообучение на позицию Junior DevOps
Добрый день, коллеги!
Подскажите, что нужно знать и уметь для успешного трудоустройства без опыта работы на позицию Junior DevOps. Если возможно, поделитесь пожалуйста теми ресурсами, которые использовали вы для обучения.
Какое направление выбрать: AWS, или Azure?
Имею 12 летний опыт системного администрирования по Microsoft технологиям, решил переквалифицироватся в DevOps.
Заранее спасибо за ответ!
93 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарівКак раз наткнулся сегодня:
hackernoon.com/...88d8670cb?gi=9a6d50aaa5f2
Ти розумієш, воно-то мотивуюче. Но коли тобі до 30 8-)
Нє, таки ейджизм є.
І ахуєнний.
«Ви же панімаєтє, у маладово чєловєка єсть пєрспєктіва, а чьто у вас ? ну напішітє на доу ми нє баімся.»
Ну, мне 32. Уволился с сисадмина, устроился девопсом. Чем возраст машает?
Как раз хорошо, есть опыт в разных сферах, достаточно его систематизировать и работать в нужном направлении.
Уфф...ну 32, — это не 52 8-) начнем с этого. Мне уже раза три задавали вопрос «а зачем вам нужно переучиваться ? сейчас и молодым работы нет» 8-) Но есть и плюс — в те фирмы, которые таким страдают идти не стоит 8-) так что это и положительный фильтр с другой стороны — видно мудаков. Эйджизм — четкий признак того, что в фирме у руля стоят неадекваты.
А с выражением
согласен на 1000 процентов.
Работы таки есть и много, особенно для толковых спецов, но конторы с19-летними лидами и 23-летними архитектами я бы точно обходил стороной
Да и меня туда не берут 8-) (слава Богу, что старый) я ж ведь не знаю, что за контора — ну написали, что сисадмин+трейни девопс — подал туда сиви на поговорить (в основном телефон-скайп, не киевский я 8-)) Вот в разговорах и вылетает такое. А, еще и в неких не айти конторах, где пишут , что нужен сисадмин, а по факту — подай-прими-младший помощник начальника хозотдела
Такое сразу на прекрасное надо тащить, имхо. Багини очень быстро почему-то меняют свое мнение на противоположное после широкой огласки их смелых заявлений
Наверное да. Только мне от той смены мнений нету никакой пользы 8-) и честно говоря, я процентов80-85 нормальных кадровиков встречал, так что не могу их называть плохо. Большинство — честно делает работу, честь им и хвала, а вот 15 процентов говнишка таки будут описаны на веселеньком 8-) да.
Мне тоже, т.к именно это большинство и советует.
АПД. Написал быстро и не обосновал сам, а стоило бы
Ansible+Salt — это Python
Puppet+Chef — это Ruby
GC — это Go . Про кьюбирнетес не в курсе, но думаю, что тоже. Поэтому — таки да, знать нужно.
Согласен, но часто требуются знания основного языка, на котором разработан проект.
Go — ви будете з k8s або mesos застосовувати, якщо таски будуть потребувати.
Python — та хщ — я його всюди щастосовати.
JS — це в основному білд тулзи для CI/CD
дивлячись що на таска знадобиться, лишнім не буде нічого. але тут є момент — глубина знань. я не можу GO без словника, але розумію екосистему. пітон і розумію екосистему і можу без словника. js без словника але не розумію екосистему ( тому доводиться шукати що замодулі юзаються і дивитись доки).
про Groovy та Java хай аксакали розкажуть. але груві теж треба.
Тобто виходить, що треба знати майже всі сучасні мови програмування ? 8-( ) , ну дивіться, Go, Groovy,Python, JS, Ruby,Java — й ще до цього обов’язкове знання Bash (Dash,Zsh)+ PowerCLI(якщо треба застосовувати конфігурацію CI/CD для Vmware)+...гм 8-) о які інтєрєсні вимоги вже тут у двох людей. На реддіті люди пишуть лише про рубі й пайтон..шось мені це нагадує вакансії для сисадмінів, де ті мають займатися охоронною сигналізацією та 1С.
я в devops прийшов зі сторони dev і не так давно. ось що я наприклад встиг зробити з тими мовами — на python я інколи автоматизую речі, інколи на bash’і, ще Python a це використав коли наводив порядок у serverless інфрастктурі на проекті. На Groovy накидав був класс який би мені дозволив зберігати конфігурацію дял деплою на різні енви, але чесно не запустилось. Там якась внутрішня фігня з тим як працюють інклуди в пайплайнах (ну по суті різниця між скриптованими та декларативними пайплайнами). Ruby трошка використовував коли робив більш динамічними машини дял vagrant’у. node.js переписуав і узагальнював код який би допомогав при міграції еластіксерча (лямбда на node.js перекидувала події в ріні ендпоінти еластіка) + лямбди + трошка ci/cd описаного девами при генерації доп пакету. Go я вчу для себе в надії перейти в команду що займатиметься суто кубером. Більшість цих задач не потребують знання програмування ан рівні «а нука давай розкажи про метакласи в пітоні» або про «gc в java»... але не мішає.
Якщо дуже цікаво ось завдання з лаб і посто фігня білядевопсова, якою я страждаю час від часу
github.com/butuzov/DevOps-Journey
отакий я джун
з/и/
powershell це кльово але хай цим замаються люди на ажурі/вінді, мене поки бог милував.
Ахрєнєнний джун 8-) Мені ще до того повзти 8-) Дякую, форкнув твій репозиторій, гляну що до чого.
Ну нормальне, воно таке саме як баш іноді дурне 8-)
у мене в роботі python, golang, bash, та lua, ansible. у кожного инструманта е свої принади та обмеження. До всего того доводится розбирати код на php js golang etc шо пишуть розробнити та допомогати їм з розумінням оточення. сам в девопс прийшов з адмінів. ПС — писати yaml та json сьогодні доводиться частіще за чистий python чи golang
Зрозуміло.
«Я ненастоящий сварщик», но когда возникла задача сделать управление зависимостями и автоматическую сборку эдакого «франкенштейна» из C++, Unity, Swift и ObjectiveC, то пришлось разобраться и с Groovy, и немного с Ruby, и с Python (вернее, его подмножеством Skylark, который используется в Bazel) — хотя, исторически, у меня весь опыт был в MS стеке + немного JS.
8-)))))а, понятно 8-) это дело такое 8-) - чашку чая, книжку под бок и давай с этим всем ...жениться, да 8-)))) - это все мне по админской работе знакомо 8-) не, ну тогда оно не страшно, а то я думал шо нужно все шоб от зубов — и красно-чорные деревья и линух и стопиццот языков программирования.
Ну линух таки наверное да. Продвинутая алгоритмистика — ну я бы точно не требовал от SRE такого. 100500 языков — ну, тоже преувеличение :) хотя специфика работы такова, что на базовом уровне приходится знать несколько.
П.С. Специально пишу SRE, т.к. DevOps это культура, а профессия называется Site Reliability Engineer
Согласен со всем.
в курсе 8-) , но все равно спасибо 8-)
база задихається по iops
що робе типовий девопс на амазоні?
8-) нажима на іконкі навєрноє.
Продолжает настраивать пайплайны, автодеплой итд. Так как базами занимаются dba или сисадмины.
Ні, базами теж він займається 8-))))))) у всякому разі на всіх запитах на цю позицію я бачу strong DB background(тут пишуть всьо шо можна)
варіанти:
— візьміть інстанс що гарантуватиме більше iops.
— шаманьте над базою — розностьте на майстри/слейви
— дивіться по кейсу (зщ, може у вас аплікуха сильно прикольна і її треба змінювати)
я не топовий девопс на амазоні.
Правильный ответ на примере mysql: берем profiler и explain и смотрим где тормозит запрос. Также смотрим как настроена db и os. В итоге на прошлой неделе оптимизировал скорость выполнения запроса в 5000 раз. База percona 5.7 на инстансе в gcloud.
99% тюнинга Mysql сводится к следующим ссылкам:
www.percona.com/...sql-database-performance
www.percona.com/...ately-after-installation
ruhighload.com/Профилирование в mysql
ruhighload.com/explain в mysql
habr.com/post/70435
P.S. вертикальное масштабирование инстанса на котором вертится база в большинстве своем бесполезно более чем полностью.
Ссылки хорошие, а вот p.s. странный.
Чем больше памяти, тем больше можно выкрутить innodb_buffer_pool_size и уменить IO на диск, ssd для нагруженой базы must have, scalability для версии 5.7 растёт до32-х ядер точно, про 8-ку не скажу.
Понятно что одним вертикальным масштабированием всё не вытянешь, но несколько десятков тысяч TPS на хорошей машинке держать можно (зависит, конечно, от запросов), а часто больше и не нужно.
Вот вам задачка. У вас инстанс с двумя ядрами и 7 Gb памяти. У вас есть запрос, который ранится по крону раз в минуту. После некоторого деплоя каждый третий запрос стал раниться по пять минут. Какой теперь инстанс вам нужен? Посичтали по cpu, по памяти и по стоимости? ok, новый деплой. Теперь каждый второй запрос тупит по пять минут. Будете дальше вертикально масштабировать вместо решения проблемы с кривым запросом?
Эм, я как раз не фанат тушить пожар керосином — фиксить кривые запросы увеличением мощностей. Естественно нужно смотреть на план выполнения запроса, индексы, возможно можно его переписать или разбить на несколько запросов.
И конечно количество ядер в гараздо большей степени влияет на конкурентное выполнение кучи запросов, нежели на ускорение одиночного.
а нащо вчитися під ажур?
там вже все клац-клац-клац і готово
8-) Так саме цікаве що й амазон так само рекламують «готові рішення для бізнесу ! два кліки й ти на небі» 8-)
Коментар порушує правила спільноти і видалений модераторами.
А зачем переквалифицироваться? Ищи ваканси devops, где требуется стек microsoft.
Вообще, толковому enterprise админу перейти в devops в аутсорс контору, это зашквар и downgrade
x3 по деньгам
скрипач не нужен дядя Вова ©
Думаю, ну нужно говорить, что СА в нашей стране, ценится ниже клининг менеджера )))
Даже на собеседовании на June сразу спрашивают о знании технологий которые используют DevOps и об опыте из применения.
А спрашивать и будут, поскольку хотят выяснить, что ты знаешь и с чем ты работал. Да, могу посоветовать — не подавать на Junior, т.к. там требования достаточно большие, на опыт работы от 1 года именно с CI/CD environment почти во всех вакансиях.
Знаю админов с зп 3-5к. Да, у них опыт не менее 10 лет и имеют узкую специализацию (сеть, инфраструктура, dba, веб-сервер админы итд)
Я тоже знаю. Просто мне в свое время не повезло вовремя вскочить в поезд, но так оно и есть. Таких админов очень мало и они нужны очень редко где и если они уходят — такие вакансии заполняются «из своих». Основная часть, вроде меня — достаточно низкооплачиваемые и зачастую их «ценят» наравне с уборщицами. Я ничего не имею против уборщиц — но я вкладываю в свой труд куда поболее знания и умения, и учиться мне нужно постоянно, а труд уборщиков в большинстве случаев достаточно прост , в меньшинстве — недельные курсы на обучение некой уборочной техникой. Плюс — админская работа нервная и ответственная, а уборщицам...ну ладно, молчу, а то сейчас мне расскажут , как я от народа отрываюсь.
Да все правильно говориш. Мы тут в основном не рокет сайнс делаем, но усилий все таки немного больше тратим чем условная «уборщица»
Спасибо за понимание. Просто огромное количество раз приходилось встречаться прямо с каким-то озлобленно-мерзким отношением к IT , что-то вроде «отьо умний ? я тебе зараз в гімньо гольовою засуну» — не на бывшей работе(хотя и там нечто подобное было поначалу, но там департамент IT хорошо и правильно все поставил — и все утихло и это было одно из немногих светлых пятен среди госслужбенных айти..эххх ) - а когда помогал знакомым . Пару раз видел, что под серверную отдавали комнату уборщиц , один раз — айтишников посадили в подсобку столовой...та всякого видел, а что по районам творилось — это был( и есть наверное, не знаю, я был в поездке по районам в последний раз очень давно) даже не грустный цирк, а пипец. «Тай шо шо ти такий отьо вумний і в інстітє вчився, я осьо дєплома купив і в мене і дом і сімня і батько посаду дав, а ти шо таке» — фраза ровно оттуда.
А что для тебя мало много? 1к мало? 2к? 3к?
Смиялсо 8-) Да зарплата — вещь относительная, по большому счету, но при нищенском существовании не будешь думать много о творчестве 8-)
Бойся обрушить на себя праведный гнев уборщиц
Не, ну тут есть странный народ, я об этом. А гнев уборщиц — он существует, вне зависимости от. 8-)
Не согласен. Человек ценится на столько, на сколько он сам себя центит и позволяет с собой обращаться. Если кто-то и позволяет смешивать себя с грязью это его проблемы. У меня так получалось, что чаще людам нужна моя помощь, чем мне их деньги. Это формирует и отношение, и позицию кто кого уговаривает.
Сам сейчас так пытаюсь, вон Андрей внизу толково написал , единственно что — я кручу Ansible ,плюс учу пайтон (и в общем хорошо бы руби, но уже не хватает времени).
DevOps культура пізнається на реальних тасках та проектах (коли ти пишеш пайплайни , розробляєш реальну інфраструктуру в AWS або мігруєш існуючу в клауди і тому подібне). Зі своєї сторони вивчити треба так званий admin stack : Python , Bash , Linux (траблшутінг на мережевому рівні , різного роду утиліти , lvm , командлайн , всемогутній vim і тому подібне) , поняття по мережевих протоколах (стек TCP/IP (ну і на співбесідах люблять питати теорію по моделі OSI на джуна) ) , Git (git flow , бренч стратегії , різного роду командлайн (мерджі , як створити бренчу , fetch vs pull , як перемістити зміни в іншу бренчу , як відмінити комміт і тому подібне). Можеш побавитись з Vagrant . Буде плюсом знання модних Docker і Kubernetes (але на джуна хватить поняття , так як там треба руцями попробувати більше) . Що таке CI/CD , які є алгоритми балансування трафіку , стратегії деплою і тому подібне. MySQL на рівні JOIN , SELECT , DROP (ну або інакше кажучи — базово) . Найлегший шлях попасти — через курси від EPAM , SoftServe і тд (на скільки я знаю , набір туди на DevOps не такий аж і великий)
Дякую, все так і є.
osi не потрбіна, наприклад( tcp/ip модель куди реальніша)
коли вона створювалася — мережі були зовсім іншими
8-) воно одне й те ж по суті, тільки спрощене. OSI більш академічна, але дає повне розуміння «як воно робе» Да і мережі лишилися тими самими , як на мене, просто зменшилася кількість протокольних стеків.
Нука-нука, поподробнее..
icmp — це який левел? я думаю, що не 3 точно
а arp?
що там з mpls, його куди приткнути?
а якщо ввімкнути bgp rr?
вже не кажу про sdn
Третій, бо він є додатковим, службовим до основного ІР у стеку, він не транспортує даних. Такі протоколи відносяться саме до 3 рівня моделі, як до речі й arp. MPLS діє по тій самій моделі зі своїм протокольним стеком по різним рівням, про bgp — не знаю, з ним не працював. Про sdn — перепрошую, а вони тут яким чином ? Це до нової концепції мереж, де можна робити свої протокольні стеки й свої обробки класичних протоколів...але все на рівнях все тієї ж класики.
третім він не може бути, бо він використовує ip як carrier під собою, тобто 3.5 як мінімум
туди ж arp і т.д
як натягнути sdn на osi model? та ніяк
8-) Читаємо уважно класику. Чи оперує будь-який службовий протокол сегментами даних (одиночними, як UDP, чи багатосегментними, як ТСР) ? Ні. Він оперує ПАКЕТАМИ, або — послідовністю ПАКЕТІВ, не пов’язаних між собою, тобто це типова поведінка протокола3-го рівня . SDN базується на моделі,хочете ви того, чи ні 8-)
udp pdu називається датаграма
що ви хотіли сказати про "оперування"?наведіть посилання, будь ласка
про sdn : osi навчилася відрізняти control plane і data plane?
Оперує — себто тягне на собі payload, де інкапсульовані дані вищих рівнів (сегментований, чи несегментований). Про те, що є датаграми, я в курсі 8-) а вони що, не є одиночним сегментом даних ?
Про sdn (прийшлося гуглити, бо я в собі сумніваюся)
Software-defined networking (SDN) decouples the data and control planes, removes the control plane from network hardware and implements it in software instead, which enables programmatic access and, as a result, makes network administration much more flexible.
Те, що я вам казав, змінюються ролі обладнання, а не сама ідеологія. Вибачте, все зводиться до можливости швидкого перепрограмування обладнання під свої потреби за допомогою спеціального ПЗ. ну перероблять ІР в якийсь інший протокол 3 рівня...то й що ?
дайте, все ж таки посилання на класику(як ви казали), все одно не розумію, про що ви
osi модель — про інкапсуляцію.(bits(frame(ip packet(icmp message)))) — icmp не 3 рівень.
ні, датаграма не є одиночним сегментом.бо udp не використовує sequence number, а є stateless протоколом.
про sdn : я питався, як натягнути його на osi модель, а не що воно робе
standards.iso.org/...SO_IEC_7498-1_1994(E).zip
Так, тут мій прокол — використав невірну термінологію, але ще раз повторюю,
Взагалі, розмова з вами нагадує гарне оповідання Шукшина «Срєзал» —
Ага. Кстати, вопрос на собеседовании, ставит многих в тупик.
«на каком порту работает пинг?».
Гарне питання 😀
от того, что вместо картинки с4-уровневой моделью перешли к картинке с 7-уровневой моделью, сам IP не изменился вообще никак, потому что обе модели — это абстракции
Именно так.
ISO OSI нужно знать и понимать! На собеседованиях\тестированиях частенько попадаются вопросы по этой теме.
Пробовал поступить на курсы по Epam и совершенно не знал, к чему готовится. Тестирование завалил, поскольку с Bash совсем не знаком, хотя стоит отметить, что тестирование достаточно простое, вопросы по ISO OSI и Bash.
Не совсем ясно, зачем знать Python для DevOps? Что я должен уметь на нем писать?
www.reddit.com/...ing_python_for_in_devops
Specifically, we have python scripts to: manipulate some of our ansible group vars files; perform complex interactions with OpenStack; a slackbot, github.com/refinery29/yas (which also interacts with OpenStack github.com/...refinery29/YasOpenstack) icinga and collected plugins; Ansible plugins; a subset of our Jenkins jobs; one off scripts; managing aws resources; interacting with other third party apis; manipulating data in our data stores. I’m surely forgetting some things.
Девопс это кудбтура, а не технологии
Якщо по AWS, то є непоганий матеріал www.youtube.com/...6LYsxrZ_4xE_U95AtGsIB96k9
Лучше на юдеми за 10 баксов взять курс на подготовку к солюшн архитекту.
Этот курс бесплатный, да, но он не обновляется + речь у товарища очень уже плохо поставлена.
Кстати да. Еще лучше — можно брать бесплатные образовательные курсы и у Амазона.
Но лучше юдеми
По поводу DevOps я купил вот єто
www.udemy.com/...t/lecture/8042668?start=0
А по поводу амазона — вот курс LinuxAcademy
www.udemy.com/...sociate/learn/v4/overview
Единственный минус — не будет доп плюшек в виде серверов от академии, удовлетворишься фри тайером
Спасибо! Приобрел 2 курса70-532 и 70-533, а дальше видно будет :)
От себя, могу порекомендовать вот этот образовательный портал:
www.pluralsight.com
Достаточно много разных курсов и мне они понравились больше, чем Udemy. + можно вытавить CC на любом языке.
Вот собственно амазоновский:
Советую курсы от Livelessons & O’Reilly, их не так много, но они более качественные, чем Udemy
Они по цене на уровне Linux Academy, на Udemy можно купить те же курсы (именно те же) за 10 долларов с пожизненным доступом.
-
О, ещё один админ понял что залип?
Мой вариант, устроится ждуном девопсом и учится. Ибо привык учится на реальных задачах.
Хочешь подскажу, контора откуда я ушёл, всё ещё ищет админа.
Вообще-то профессия админа сильно трансформируется и действительно приходится переучиваться. Насчет реальных задач ..хе-хе, уронить прод — не самая лучшая учеба уж извини
Ну, да, профессия админа в IT компании уже не та что раньше. Но, вот один мой коллега рассуждал иначе. С его слов, я отвечаю за сеть, за пару серверов и всё. Ваши дженкинсы с CI\CD меня не волнуют. При этом он не претендует на зп сильно выше 1к. И руководство это устраивает. Человек есть, свою часть работы делает.
А я пришёл к выводу, что человеку нужно либо повышать зарплату, либо уволить (уходить с точки зрения гребца) если не за что повышать. Ибо отсутствие развития есть деградация.
Спорно.Все зависит собственно от построения процессов в компании. Да, саморазвитие- это обязательно. Но если человек качественно делает свою работу — за что его выгонять ? За то, что не самообразовывается ?
Ну — тут сильно зависит от собственно самих задач конторы.
И если в ней нет собственной разработки, либо это «традиционные» технологии, то при всем желании админу вырасти в ней особо не выйдет.
Скорее тогда нужно ловить момент, когда аутсорсерам понадобится узкая, но глубокая экспертиза и перепрыгивать туда.
Совершенно верно. Могу полностью подтвердить на своем случае — и сказать, что и самообразование не особо помогает развиться, потому что все то, что учится-гоняется на симуляторах(да хоть и на полигонах из «живого» железа) — весьма успешно забывается после полугода неиспользования и плотной работы с рутиной.
Недавно проходил собеседование по вакансии и мнепришел отбойник ))) В качестве перичины указали: Не работал с Hyper-V более 4х лет ))))
бугага. Не переживай, значит и не стоило идти, т.к. причина крайне дурная для Junior позиции.
Думаю с учетом имеющегося опыта лучше смотреть в сторону Azure, хотя AWS безусловно лидер в этой области. Для самообучения можно использовать такие ресурсы как LinuxAcademy & A Cloud Guru (курсы с готовыми лабами), но опять же это все более применимо к AWS
Советы сеньоров: как прокачать знания junior DevOps.
Ну, не все умеют читать. Мне вот проще взять задачу и неспеша её решать чем читать книги.
Сейчас епам вроде берёт джунов в девопс.
Тут dou.ua/...digests/junior-digest-34 много кто берет.
И тут еще можно смотреть:
jobs.dou.ua/.../?category=DevOps&exp=0-1