Меня часто спрашивают, чему нужно научиться, чтобы стать DevOps-специалистом, или с чего начать.

⚠️ Внимание, не пытайтесь учиться или устроиться на работу в ИТ, если вас интересуют только деньги, так как мы знаем, что зарплаты в ИТ выше, но если ваша мотивация - это просто деньги, вы будете действительно недовольны своей жизнью и, скорее всего, сгорите на работе. Оставьте это для тех, кому это интересно. Если вы один из тех парней, которые всегда думают, как помочь людям, любят компьютеры и не могут уснуть, пока не поймут, как что-то работает, то, пожалуйста, продолжайте чтение. Я не уверен в вашем техническом уровне, мой юный джедай, но на самом деле это не имеет значения, есть ли у вас огонь в глазах и огромный аппетит к знаниям.

Так что же такое DevOps? Я понятия не имею. На основе слов это состоит из разработки и эксплуатации. Самое смешное, что DevOps похож на жидкость, он принимает разную форму в зависимости от компании, в которой вы работаете. Я не могу сказать вам, что вы должны знать Azure, чтобы быть хорошим специалистом по DevOps, потому что я понятия не имею, будете ли вы когда-нибудь использовать его в своей жизни. Как люди DevOps, наша цель — автоматизировать все и всегда улучшать этот процесс, черт возьми, я даже пытаюсь использовать его в своей реальной жизни. Умный свет, умный кондиционер, замок, чайник, я больше не хочу просыпаться в 7 утра, чтобы заварить чай, я просто пишу скрипт, чтобы автоматизировать это, и прошу Алексу сообщить мне, когда это будет сделано. DevOps — это болезнь, вы всегда думаете о том, как сделать что-то лучше, надежнее, быстрее и с меньшим количеством человеческого взаимодействия.

Советы, чтобы оставаться в курсе: Заведите учетную запись в Твиттере и подписывайтесь на парней, которые работают в мире DevOps, чтобы вы всегда могли отслеживать новости, потому что Твиттер — лучший способ оставаться на связи с ИТ-специалистами.

Не уверен, где начать? Хорошо, нп, начни с моей учетной записи https://twitter.com/TayaPollard, проверь список DevOps, на который я подписан, и ты найдешь больше интересных ребят, которые являются нашими подельниками. Вы также можете отправить мне свои вопросы, связанные с этой статьей.

Вам может быть интересно, как, черт возьми, вы можете установить что-то вроде Linux, потому что вы любите свой ПК / ноутбук с Windows, а также как установить все те инструменты, которые я упомянул ниже. Пожалуйста, получите VirtualBox с образом Linux, и вы можете попрактиковаться там, для таких инструментов, как Prometheus или Grafana и быстрого развертывания, вы можете использовать докер. Я вдохновляю вас начать использовать докер, так как вам понадобится этот инструмент как воздух, чтобы быть DevOps.

Если вы чего-то не знаете, Google/Youtube/StackOverflow — ваши лучшие друзья. Не бойтесь потерпеть неудачу, потому что неудачи учат большему, чем победы. Помните, что вы, вероятно, не единственный человек в мире, который столкнулся с какой-то проблемой и застрял на ней, попробуйте погуглить, и вы будете удивлены результатами.

Пройдите курс по работе с сетями, чтобы понять, как работают протоколы, а также узнать о git и gitlab/gitlab ci, это обязательная категория.

Итак, вот мой обязательный список для DevOps. То, что я использую каждый день в моей жизни. Начнем с основных вещей:

Операционные системы:

  • Debian/Ubuntu — мой личный выбор Linux.

Языки:

  • Bash — это азбука для любого специалиста по DevOps. Скорее всего, вы будете использовать Linux, а bash — это то, без чего вы не можете существовать.
  • Python — простой в освоении и полезный для автоматизации. Мой личный совет по книге «Автоматизация скучных вещей с помощью Python», «Fluent Python».
  • Go — становится все более популярным для написания сервисов и приложений. Если вы хотите быть профессионалом, вам лучше знать, но не пытайтесь выучить его, пока не изучите предыдущие 2 или, по крайней мере, bash.

☁️ Облака:

  • Google Cloud — мой личный выбор, так как мне нравится Google. Это дешевле, чем AWS, и моя компания использует его. Если вы не знаете, какого облачного провайдера выбрать, спросите или погуглите компанию, которой вы хотите отправить свое резюме. Изучите команды пользовательского интерфейса и командной строки для вашего провайдера, чтобы управлять им как ниндзя. Например, я знаю, что Netflix использует AWS, поэтому имеет смысл изучить его, если вы хотите подать заявку на Netflix. 🥷

Мониторинг инфраструктуры:

  • Prometheus — легкий и гибкий, вы можете написать для него любой экспортер и установить любой алерт.
  • Grafana — глубокое погружение в прекрасный мир графиков и метрик.

Управление журналами:

  • Лось — это тяжелый инструмент, его очень сложно и легко сломать.
  • Graylog — главный конкурент elk, используйте его, если вы уже пробовали elk и ненавидели его.

Веб сервер:

  • Nginx — веб-сервер и лучший обратный прокси из всех, что я знаю. Для некоторых древних инструментов вы все еще можете использовать Apache, но если вы не собираетесь много возиться с Windows или древними инструментами, вы можете пропустить это. Основная идея заключается в том, чтобы вы поняли, как работает Nginx, так что это вопрос синтаксиса, чтобы выполнить ту же работу с Apache.

Это основные вещи. Для большего удобства рекомендую ознакомиться с Kubernetes, Terraform, tmux, MySQL/Mongo, Ansible.

Очень важной частью этой блабла-статьи является то, что вам нужно постоянно узнавать что-то новое. Всегда старайтесь оставаться жаждущими знаний и узнавать что-то новое.

Посылаю вам любовь и терпение в вашем путешествии, джедаи. ❤