Visitors have accessed this post 4231 times.

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

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

Visitors have accessed this post 4231 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 )

Ондрей

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

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

Протокол SSH
array(1) { [0]=> object(WP_Term)#11779 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Протокол SSH (Secure SHell) - один из основных и очень важных инструментов работы с Linux (тут надо отметить, что он может использоваться и для других платформ - OpenBSD, Windows, macOS). SSH применяется для зашифрованного соединения сервера и клиента путем создания защищенного соединения на удаленном компьютере. Используется прежде всего для...

2
0
25 мая 2020
Как использовать Ceph в кластере Kubernetes — настраиваем deployment с несколькими репликами
array(1) { [0]=> object(WP_Term)#988 (16) { ["term_id"]=> int(10) ["name"]=> string(10) "Kubernetes" ["slug"]=> string(10) "kubernetes" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(10) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(4) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(10) ["category_count"]=> int(4) ["category_description"]=> string(0) "" ["cat_name"]=> string(10) "Kubernetes" ["category_nicename"]=> string(10) "kubernetes" ["category_parent"]=> int(0) } } Kubernetes

Автор статьи - Андрей Трошин

День добрый, в этой статье хочу рассказать один из вариантов использования распределенной файловой системы Ceph в кластере Kubernetes.

Собственно, для чего это может пригодиться? Один из важных принципов в кластере Kubernetes - это постоянное распределение подов c репликами вашего приложения по нодам кластера....

1
0
14 августа 2020
Что должен уметь Linux-администратор
array(1) { [0]=> object(WP_Term)#11780 (16) { ["term_id"]=> int(6) ["name"]=> string(5) "Linux" ["slug"]=> string(5) "linux" ["term_group"]=> int(0) ["term_taxonomy_id"]=> int(6) ["taxonomy"]=> string(8) "category" ["description"]=> string(0) "" ["parent"]=> int(0) ["count"]=> int(28) ["filter"]=> string(3) "raw" ["cat_ID"]=> int(6) ["category_count"]=> int(28) ["category_description"]=> string(0) "" ["cat_name"]=> string(5) "Linux" ["category_nicename"]=> string(5) "linux" ["category_parent"]=> int(0) } } Linux

Linux - это та операционная система, с которой вы точно будете работать в любой современной IT-компании. Знание ее изнутри, навык работы с ней при помощи разных инструментов - это тот фундамент, который поможет вам в дальнейшем развиваться в любом направлении IT.

Давайте посмотрим, какие шаги проходит в своей работе, что должен знать...

26
1
6 ноября 2020