Дорожная карта DevOps
DevOps действительно актуален сегодня и большинство разработчиков упорно работает над тем, чтобы стать инженером DevOps и проецировать себя в качестве чемпиона DevOps в их организации.
Хотя преимущества DevOps, которые напрямую связаны с улучшенной разработкой и развертыванием программного обеспечения, несомненно очевидны, это непростая задача. Очень трудно выбрать правильный путь в середине множества инструментов и практик.
Многие задаются вопросом, как стать инженером DevOps, какие инструменты следует изучать, какой практики следует придерживаться? следует ли изучать Maven и Jenkins для DevOps, как насчет Docker и Kubernetes? Разделяет ли инфраструктура автоматизации DevOps? Нужно ли изучать Chef, Puppet, or Ansible- это лишь некоторые из тех вопросов, которые волнуют разработчиков, интересующихся DevOps.
Я изо всех сил старался ответить тем, у кого был мой минимальный опыт, но я не мог записать их таким образом, который просто потрясающий и многоразовый, но не волноваться.
Чтобы ответить на большинство таких вопросов, мы поделимся с вами потрясающим ресурсом, который поможет вам стать инженером DevOps, которым вы всегда хотели стать, 2018 DevOps RoadMap.
Эта замечательная страница была предоставлена GitHub от Kamranahmedse, которая показывает пару полезных дорожных карт, чтобы стать front-end разработчиком, back-end разработчиком, веб-разработчиком полного стека и наконец, инженером DevOps.
Эта дорожная карта является удивительной в любом смысле, поскольку она не только подчеркивает, какова роль инженера DevOps, но также рассказывает, какие инструменты и технологии вам необходимо изучить, чтобы охватить эту область.
Кроме того, она визуально привлекательна, имеет приятные цвета, поэтому вы можете просто распечатать ее и повесить над столом в качестве ориентира.
Хотя дорожная карта хороша в том смысле, что она говорит вам, что необходимо изучить, но она не говорит вам, как учиться и где. Чтобы завершить дорожную карту, мы поделимся некоторыми полезными онлайн-курсами, как бесплатными, так и платными, чтобы вы могли изучать и совершенствовать инструменты или желаемую область
2018 DevOps RoadMap для разработчиков
Во всяком случае, вот та самая 2018 DevOps RoadMap:
Теперь давайте пройдем через нее шаг за шагом и узнаем, как вы можете научиться основным навыкам, чтобы стать гуру DevOps в 2018 году:
1. Изучите язык программирования
Очевидно, предполагается, что вы, ребята, определенно знаете один из трех основных языков программирования, то есть Java, Python или JavaScript.
Если вы этого не сделали, не волнуйтесь, вы можете посмотреть курсы, представленные ниже. Мы настоятельно рекомендуем вам изучить хотя бы один из этих трех основных языков программирования общего назначения.
Java
Если вы хотите изучить Java, то The Complete Java MasterClass - отличный курс, который также недавно обновлен для Java 10.
Python
Если вы хотите изучить Python, то The Complete Python BootCamp - мой любимый ресурс, который научит вас Python 3, самой популярной версии Python.
JavaScript
И, если вы хотите изучить JavaScript, вам подойдет курс Мохам Хамдани JavaScript Basics for Beginners на Udemy.
2. Понимать различные концепции ОС
Именно здесь и появляется часть Ops, раньше она касалась исключительно парней из поддержки и системных администраторов, которые отвечали за знание об ОС и аппаратных средствах, но с появлением DevOps их должен знать и разработчик.
Вы, по крайней мере, должны знать об управлении процессами, потоках и параллелизмах, сокетах, управлении ввода-вывода, виртуализации, памяти и файловых системах, как это предлагается в дорожной карте.
Поскольку большинство из нас работает в Linux, предлагаем вам пройти курс BootCamp Linux Administration на Udemy, чтобы лучше узнать и понять Linux OS.
3. Учитесь жить в терминале
Для специалиста DevOps важно иметь хорошую команду в командной строке, особенно если он работает в Linux. Знание некоторой оболочки Linux, такой как Bash, или Ksh, и инструменты, такие как find, grep, awk, sed, lsof и сетевые команды, такие как nslookup и netstat, являются обязательными.
Если вы считаете, что вам нужно обновить эти команды и инструменты, вы должны присоединиться к курсу Linux Command Line Interface (CLI) Fundamentals на Pluralsight.
Это хорошее обновление для начинающих и опытных пользователей Linux. Вам понадобится членство Pluralsight, чтобы получить доступ к курсу стоимостью около $ 29 в месяц или $ 299 в год, но это того стоит.
Pluralsight похож на Netflix разработчика, он имеет более 6000 высококачественных курсов по новейшим технологиям, что означает, что вы можете научиться чему угодно и где угодно. Например, во время путешествий и поездок на работу.
4. Сетевое взаимодействие и безопасность
Прошли годы изоляции, в современном мире все связано со всем, что делает сетевое взаимодействие и безопасность очень важными.
Чтобы стать хорошим инженером DevOps, вы должны знать об основных понятиях сетевого взаимодействия и безопасности, таких как DNS, OSI Model, HTTP, HTTPS, FTP, SSL, TLS и т. Д.
Чтобы обновить эту концепцию, вы можете взглянуть на курс Эд Либермана TCP/IP and Networking Fundamentals for IT Pros на Pluralsight.
5. Что есть на компьютере и как настроить
Как чемпион DevOps, вы должны знать, что настроено на вашем компьютере, и как вы можете это настроить, только чтобы вы могли подумать о его автоматизации.
В общем, инженер DevOps должен знать, как настроить веб-сервер, такой как IIS, Apache и Tomcat.
Он также должен знать о кешировании сервера, балансировщике нагрузки, обратном прокси и брандмауэре и т. д. Если вы новичок в пространстве веб-разработки, предлагаем вам также ознакомиться с веб-разработчиком Bootcamp от Colt Steele
6. Изучите инфраструктуру как код
Это, наверное, самое важное для инженера DevOps, и это тоже очень обширная область. Как разработчик DevOps, вы должны знать о таких контейнерах, как Docker и Kubernetes, инструменты управления конфигурацией, такие как Ansible, Chef, Salt и Puppet, Infrastructure Provisionings, такие как Terraform и Cloud. Вот некоторые из рекомендуемых курсов, чтобы изучить эти инструменты.
Если вы хотите изучить Docker, то курс The Docker Mastery: The Complete Toolset от Docker Captain на Udemy - лучший курс для начала. Он обеспечивает всесторонний охват всех инструментов, которые необходим инженеру DevOps.
Если вы хотите изучить Kubernetes, предлагаем вам присоединиться к курсу Learn DevOps: The Complete Kubernetes. Это научит вас, как создавать, развертывать и управлять Kubernetes.
И, если вы хотите обучиться Chef, тогда на данный момент нет лучшего курса, чем Chef Fundamentals: A Recipe for Automating Infrastructure на Udemy.
7. Изучите инструменты непрерывной интеграции и доставки (CI/CD)
Это еще одна важная вещь для гуру и чемпиона DevOps, т. е. для создания конвейера для непрерывной интеграции и доставки. В области CI/CD имеется множество инструментов, например Jenkins, TeamCity, Drone и т. д.
Но мы настоятельно рекомендуем изучить хотя бы Jenkins, поскольку он наиболее широко используется и, вероятно, самый зрелый инструмент CI / CD на рынке. Если вы не знакомы с Jenkins, то это лучший курс для начала.
Если вы хотите освоить Jenkins, то нет лучшего курса, чем Master Jenkins CI For DevOps and Developers на Udemy. Это просто лучший курс, и многие разработчики обращаются именно к нему для освоения Jenkins.
8. Научитесь проверять программное обеспечение и инфраструктуру
Помимо установки и развертывания, мониторинг является еще одним важным аспектом DevOps, поэтому специалисту DevOps важно узнать о мониторинге инфраструктуры и приложений.
В этой сфере есть много инструментов, например Nagios, Icing, Datadog, Zabbix, Monit, AppDynanic, New Relic и др.
Вы можете выбрать некоторые из них, в зависимости от того, какой из них используется в вашей компании, например AppDynamic и Nagios.
9. Изучите облачных провайдеров
Облако - это следующая большая вещь, и рано или поздно вам нужно перенести приложение в облако, поэтому важно, чтобы инженер DevOps знал, по крайней мере, о некоторых популярных облачных провайдеров и принципах их работы.
Хотя AWS явно лидирует в облаке, он не одинок, Google Cloud и Azure медленно догоняют, а затем у нас есть другие игроки, такие как Heroku, Cloud Foundry и Digital Ocean.
Для начала мы настоятельно рекомендуем присоединиться к классическому AWS Serverless APIs & Apps — A Complete Introduction в Udemy, который является просто лучшим.
Заключительные примечания
Спасибо, что прочитали эту статью. Возможно, вы думаете, что есть так много вещей для изучения, и так много курсов по освоению, но вам не нужно беспокоиться.
Существует большая вероятность того, что вы, возможно, уже знаете большую часть материала, а также есть много полезных бесплатных ресурсов, которые вы можете использовать.
Удачи вам в путешествию к DevOps! Это, конечно, будет нелегко, но, следуя этой дорожной карте и руководству, вы становитесь на один шаг ближе к профессии инженера DevOps.