Visitors have accessed this post 7447 times.

Какая операционная система лучше всего подойдет для работы DevOps?

4
4
7447
25 декабря 2020 9:32
Автор: Rebrain Me
DevOps

Visitors have accessed this post 7447 times.

Перевод статьи — https://devops.com/which-desktop-os-is-best-for-devops/

Какую операционную систему лучше использовать инженерам DevOps?

Это вопрос, на который нет однозначного ответа. Разговоры о том, какая ОС «лучше», всегда противоречивы.Я не собираюсь отдавать предпочтение одной операционной системе, когда мы говорим о работе DevOps. Но я хотел бы рассмотреть сильные и слабые стороны каждой из основных операционных систем — Windows, Linux и macOS.

Windows

По статистике, ОС Windows использует большинство людей. А значит, именно эту операционную систему, вероятнее всего, используют большинство DevOps-специалистов (хотя я не могу сказать это однозначно).

На мой взгляд, Windows имеет два основных преимущества с точки зрения DevOps:

  • Популярность. Это плюс, потому что DevOps — это свобода выбора инструментов для использования. Учитывая, что Windows так популярна, почти все инструменты совместимы с этой операционной системой. Поэтому отсутствие проблем совместимости с ОС не мешают работе DevOps.
  • Подсистема Windows для Linux, которая позволяет запускать некоторые инструменты CLI для Linux в Windows. Эта функция удобна, если вам нужно работать с практиками DevOps для серверных сред Linux и Windows.

Основным минусом использования ОС Windows является то, что это Windows. По сравнению с Linux Windows предлагает очень мало возможностей для настройки, и это ограничение может быть недостатком с точки зрения DevOps. Когда дело доходит до основных задач, таких как работа с командной строкой, вам понадобятся дополнительные инструменты, которые предлагает Microsoft. А также вы не сможете сделать систему Windows максимально защищенной.

Linux

Как по мне, Linux — лучшая ОС для DevOps. Но я говорю это только потому, что я любитель Linux и полагаю, что Linux лучше всего подходит для любых процессов.

Но даже если вы не фанат Linux, вы должны согласиться, что у него есть определенные преимущества для работы с DevOps:

  • ОС Linux имеет множество адаптивных настроек. Вы можете настроить систему так, как лучше всего подходит для вашего рабочего процесса. Вы можете использовать широкий спектр инструментов. Вы можете проделать много изменений, чтобы улучшить безопасность. Учитывая, что в DevOps очень важно иметь возможность выбора инструментов, это большое преимущество.
  • Зачастую инженеры DevOps занимаются поддержкой конвейеров доставки программного обеспечения, которые развертываются в серверных средах Linux. Возможность работать из собственной среды Linux может упростить выполнение таких задач, как тестирование и размещение этих приложений на локальном устройстве, когда необходимо. Вы можете, например, развернуть контейнер Linux на вашем локальном компьютере, чего нельзя сделать на ОС Windows или macOS.
  • На большинстве операционных систем на базе Linux все необходимые вам инструменты DevOps устанавливаются быстро и просто с использованием репозиториев и менеджеров пакетов. Нетрудно установить большую часть инструментов DevOps и в других системах, но я не думаю, что какая-либо ОС сможет превзойти дистрибутивы Linux в части управления пакетами.

Основное препятствие в работе с ОС Linux заключается в том, что на его изучение уходит некоторое время, особенно у инженеров DevOps, которые привыкли работать на ОС Windows. Вы также можете столкнуться с ситуацией, когда нужный вам инструмент не поддерживается ОС Linux, однако я сейчас не могу вспомнить хоть один инструмент DevOps, который бы не работал на операционной системе Linux.

MacOS

И последняя, но не менее важная — это операционная система macOS. В целом, я не считаю, что macOS идеально подходит для работы DevOps. Единственное преимущество у macOS:

  • нативная Unix-подобная среда. Вы не сможете запускать контейнеры Linux непосредственно на Mac, но вы можете, по крайней мере, использовать некоторые нативные инструменты Unix.

Недостатков у macOS много. Эта ОС плохо кастомизируется и не всегда совместима с приложениями и инструментами. Если вы никогда раньше не использовали Mac, вам придется потратить значительное время на обучение.

Имеет ли вообще значение, какую ОС использовать?

Теперь, когда мы рассмотрели все за и против Windows, Linux и macOS как операционных систем для инженеров DevOps, позвольте сказать следующее: сейчас во многих отношениях вопрос, какую ОС вы используете на своем ПК, больше неактуален. Многие приложения, в том числе ключевые инструменты DevOps, такие как IDE, теперь в большинстве своем работают в облаке. Кроме того, существует множество инструментов аппаратной виртуализации, которые позволят вам запустить практически любую ОС на виртуальной машине. При желании вы можете запускать Linux и Windows как виртуальные машины на MacOS.

Тем не менее, не все инструменты работают в облаке и переключение между виртуальными машинами не всегда практично. Поэтому стоит задуматься о том, какая ОС будет лучше всего отвечать вашим потребностям DevOps и выбрать именно ту, которая будет управлять вашим «железом».

От редакции

Если вам интересно посещать бесплатные онлайн-мероприятия по DevOps, Kubernetes, Docker, GitlabCI и др. и задавать вопросы в режиме реального времени, подключайтесь к каналу DevOps by REBRAIN

*Анонсы мероприятий каждую неделю

Практикумы для специалистов по инфраструктуре и разработчиков — https://rebrainme.com.

Наш Youtube-канал — https://www.youtube.com/channel/UC6uIx64IFKMVmj12gKtSgBQ.

Агентство Fevlake, проектируем и поддерживаем IT-инфраструктуры с 2012 года — https://fevlake.com.

Комментарии (3)
Введено символов из возможных
Не отвечать
Sergey

Согласен с автором на счёт Linux.

Ондрей

Не согласен. Зачем вообще это обуждать, нет рзницы из какой ОС работать, зачем вообще у себя контейнеры запускать засоряя ОС. Не нужно использовать ничего на своей машине кроме среды разработки и ссх клиента. Практически любой редактор кода имеет ремоут синк и гит, клиент ссх например мобаикстем сверх удобен. Так что не важно какая у вас ОС и на каком ядре. Кому вообще вздумается что-то запускать со своей машины ?

Evgenii

Есть вопросы по опыту использования автором MacOS )

Ондрей

Только по мак ос) хм

Вам также может понравится

Инструменты DevOps
array(1) { [0]=> object(WP_Term)#11541 (16) { ["term_id"]=> int(7) ["name"]=> string(6) "DevOps" ["slug"]=> string(6) "devops" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(7) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(19) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(7) ["category_count"]=> int(19) ["category_description"]=> string(0) "" ["cat_name"]=> string(6) "DevOps" ["category_nicename"]=> string(6) "devops" ["category_parent"]=> int(0) } } DevOps

Один из основных принципов DevOps – автоматизируйте все. Конечно, для автоматизации того широкого круга процессов, которые затрагивает методология, - разработка, тестирование, внедрение, внесение изменений – нужны эффективные инструменты. В этой статье мы рассмотрим, какие инструменты DevOps используются на разных этапах работы DevOps-инженера....

7
0
16 октября 2020
Docker – что это такое?
array(1) { [0]=> object(WP_Term)#11541 (16) { ["term_id"]=> int(8) ["name"]=> string(6) "Docker" ["slug"]=> string(6) "docker" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(8) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(8) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(8) ["category_count"]=> int(8) ["category_description"]=> string(0) "" ["cat_name"]=> string(6) "Docker" ["category_nicename"]=> string(6) "docker" ["category_parent"]=> int(0) } } Docker

Если вы считаете, что докер (англ. docker – портовый рабочий) – это тот, кто грузит контейнеры, вы правы по форме, но не по содержанию. В нашем случае Docker – это действительно удобный интерфейс для работы с контейнерами. Но не только. Давайте разбираться, что это такое и с чем его едят.

Docker – это программная платформа, которая помогает...

2
0
2 октября 2020
Использование OpenSSL: хеши, цифровые подписи и многое другое
array(1) { [0]=> object(WP_Term)#11549 (16) { ["term_id"]=> int(7) ["name"]=> string(6) "DevOps" ["slug"]=> string(6) "devops" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(7) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(19) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(7) ["category_count"]=> int(19) ["category_description"]=> string(0) "" ["cat_name"]=> string(6) "DevOps" ["category_nicename"]=> string(6) "devops" ["category_parent"]=> int(0) } } DevOps

Перевод статьи - https://opensource.com/article/19/6/cryptography-basics-openssl-part-2

Детальный обзор шифрования в OpenSSL: хеши, цифровые подписи, цифровые сертификаты и многое другое

В первой статье из этой серии мы познакомились с хешами, шифрованием/дешифрованием, цифровыми подписями и сертификатами в библиотеках OpenSSL, утилитами...

4
0
18 сентября 2020