Этот вопрос закрыт для ответов, так как повторяет вопрос Какие навыки нужны для DevOps-инженера?

Счего начать изучение DevOps?

Привет ребят!
Помогите с направлением я сисадмин уже как 10 лет опыт с юниксом есть (сквид, нжинкс и по мелочи)
с чего начать изучение DevOps направления?
1)незнаю как происходит доставка кода в продакшн (стеджинг и тд)
2)как производить деплой и чем его делают

Да и вообще с чего начать и куда двигаться
Прошу не пингать за нубовский вопрос а отнестись с пониманием
Спасибо
  • Вопрос задан
  • 3156 просмотров
Решения вопроса 1
@yellowmew
Saboteur неплохо ответил(что не отменяет того что все остальные ответившие тоже правы)
Девопс - это практики. Это не набор инструментов( инструменты используются на определенных этапах, реализация которых необходима для приближения к идеалу), однако определенные необходимые инструменты опять же есть.
Про девопс можно прочитать очень много информации, но я, как админ (win-админ :D) вижу ситуацию для вас, как и любого, с опсовой основой, примерно так:
  1. Жирным вы выделили вопросы который для вас вот конкретно сейчас не играют ни малейшей роли. Дмитрий Шицков и Saboteur написали почему: зависит от проекта.
  2. Завет любого ops-а: автоматизируй всё что можно
    Если выбор между configuration management (chef, ansible, puppet и тд) и скриптами - то лучше первое. Хотя и тут можно поспорить, у меня в проекте chef-ом автоматизированное не очень-то используется на последнем этапе доставки в прод, поскольку мы все равно запечатываем машину и запускаем в AWS с asg без пост-конфигурации. Тут можно до посинения спорить хорошо это или нет, но скрипты в идеальном мире проигрывают DSL
  3. Вы пишете код для автоматизации
    Вам понадобится git (который тянет за собой git-хостинг: bitbucket, github, gitlab и тп.) и навыки правильной работы с гитом. Для отслеживания и планирования изменений - понадобится какой-нибудь таск трекер (jira, таск трекер встроенный в gitlab, что-то другое).
  4. Инфраструктура как код
    Автоматизируй всё означает автоматизацию развертывания инфраструктуры
    Здесь уже вступают в силу особенности вашего окружения - в облаках вы скорее всего захочете использовать terraform или, например, CloudFormation в AWS - встроенное средство оркестрации, или же будете сразу все запускать в контейнерах - docker , kubernetes используя соответствующие инструменты.
  5. Мониторинг
    Без правильного и подходящего вашему продукту мониторинга(+логирования) жить нельзя. И это было еще до DevOps тренда - это классика администрирования. Здесь ничего не посоветую, с Zabbix-ом сам не ужился, переехал на influx и прилегающие (TICK stack). Для логирования - graylog, ELK. В некоторых частях используется prometheus который в том числе и для кубера удобен. В общем - с чем подружитесь.


Это только то, что вы уже должны знать и вам легче будет к ним приступить.
Будете хорошо ориентироваться (не только знать, но и выбрать правильные инструменты, уметь построить правильный пайплайн) - вас с руками оторвут, несмотря на то что вы можете быть слабы в других областях (тестирование, билд и проч.)

Для примерного осознания всего цикла можно посмотреть на (картинка относительно рандомная,таких много, два года назад я ориентировался по другой, с более подходящим мне списком инструментов, но найти не могу =( )
Slide1.jpeg

P.S. Еще раз хочу отметить что описанное выше основано на личном опыте и это - движение в devops со стороны ops. Есть те, кто сразу пытаются строить все по девопсу параллельно обучаясь опсовой части и девелоперской( видел таких, не у всех получалось ). Есть те, кто двигается в девопс со стороны Dev. Все будут иметь разные мнения что важно для того, чтобы начать
Ответ написан
Пригласить эксперта
Ответы на вопрос 7
saboteur_kiev
@saboteur_kiev
build engineer
1. для начала git плюс какая-нибудь система управления (подойдет знакомство с github)

2. Во-вторых CI Инструмент - Jenkins или Teamcity.
Попробуйте для начала установить локальный дженкинс, и какие-нибудь задачи перенести из cron в Jenkins, посмотреть как это работает

3. Виртуальные машины не должны быть проблемой, vmware и virtualbox сейчас потихоньку замещаются облаками и контейнерами. То есть было бы неплохо иметь базовое представление о том, как работать с docker, aws, kubernetes. Этого будет достаточно, чтобы прийти помощником девопса.

4. Деплой это вопрос отдельный, зависит от проекта. Их множество.

5. Неплохо бы знать что примерно делает maven - это поможет в java проектах.
Ответ написан
neatsoft
@neatsoft
Life is too short for bad software
Базис:
The Twelve-Factor App (перевод)

Список необходимых инструментов и технологий:
DevOps Roadmap
Ответ написан
Continuous Integration and Delivery - GitLab TravisCI CircleCI
Docker -> docker-compose -> Kubernetes
Это базовое начало, которое доставит море хлопот .
Ответ написан
Zarom
@Zarom
Мастер на все руки из жопы
Так же понадобится знание bash (скрипты), большим плюсом будет знание какого либо ЯП, например python. Зачастую будет необходимо понимать суть чужого кода на незнакомых ЯП.
Знание Jenkins, и, например, GitlabCI.
Какой-либо системы оркестрирования: ansible, puppet, chief, solt...
Лично у нас деплой через capistrano, но деплой-систкм так же превиликое множество.
У каждой команды будет свой стек инструментов и методик. Нужно приходить в команду и прыгать в этот омут.
Ответ написан
Sanes
@Sanes
Docker, Ansible, Puppet, Chief для начала. Про bash и Python наверное и так понятно.
Но стек у всех компаний разный.
Ответ написан
Ваш ответ на вопрос

Вопрос закрыт для ответов и комментариев

Потому что уже есть похожий вопрос.
Похожие вопросы
BlockProof Tech Москва
от 150 000 до 175 000 руб.
Express 42 Москва
от 80 000 до 150 000 руб.
Трансойл Санкт-Петербург
от 100 000 руб.
19 дек. 2018, в 14:38
2500 руб./за проект
19 дек. 2018, в 14:31
500 руб./за проект