Управление Linux-сервером — самая ценная инвестиция

в 9:00, , рубрики: BaaS, CentOS, Debian, devops, paas, red hat enterprise linux, ruvds_статьи, tumblr, базовые навыки, Марко Армент, настройка сервера, сисадмин, системный администратор

Управление Linux-сервером — самая ценная инвестиция - 1


В эпоху облаков настройка Linux-сервера своими руками кажется неким вымирающим искусством. Для непосвящённого человека даже bash-скрипты выглядят как заклинания, а коллеги проникаются уважением к сисадмину, как древние индейцы к своему шаману…

Сейчас это «древнее искусство» вновь стало актуальным. История идёт по кругу — всё старое возвращается в новом виде. Запуск сервера на своём хостинге стал хорошей альтернативой облакам. Этому есть ряд причин, которые мы не будем подробно разбирать, только повторим вкратце: безопасность, свобода, контроль над своими данными, экономия финансов.

▍ Старое или новое. Контроль или зависимость

Выбор активного управления своей инфраструктурой (on-prem, VPS, штатные сисадмины) — часть более широкой дискуссии, как правильно выбирать инструменты и технологии. Эта дискуссия обширна и ведётся по многим направлениям. В общем, это скорее философский вопрос выбора между старым и новым. Между скучным и интересным. Для важных задач люди склонны выбирать всё-таки скучные, проверенные и надёжные технологии. Даже существует вероятность, что они менее эффективные и/или менее удобные.

Например, если нужно выбрать оптимальный инструмент для решения каждой конкретной проблемы, то в теории это складывается следующим образом:

Управление Linux-сервером — самая ценная инвестиция - 2

Но на практике реальный выбор выглядит иначе:

Управление Linux-сервером — самая ценная инвестиция - 3

Это жизнь. При выборе мы учитываем не только технические факторы.

Старое/новое — это первое измерение в многомерном пространстве выбора.

Вторая ось — управляемые/неуправляемые службы. В одном случае мы самостоятельно всё контролируем, а в другом полностью отдаёмся во власть облачной платформы BaaS/PaaS, которая предоставляет полный комплекс услуг. Между этими двумя крайностями есть разные варианты компромиссов вроде управляемых облачных сервисов типа Amazon RDS.

Последнее десятилетие развития IT-индустрии можно смело назвать эпохой облачных сервисов, когда все дружным строем направились в AWS, GCP и Azure. Каждая компания думала, что чем меньше она управляет своей инфраструктурой — тем лучше. Сэкономить на железе, уволить всех инженеров и просто зарабатывать денежки.

Но сейчас выясняется, что не всё так просто. И ситуация начинает понемногу меняться в сторону более компромиссных решений — частично управляемых сервисов с инженерами в штате.

Управление Linux-сервером — самая ценная инвестиция - 4По мере усложнения (и удорожания) облачных платформ мы вдруг вспомнили, что ещё 10−15 лет назад даже очень маленькая компания могла поднять высоконагруженный сервис на собственных серверах. Вплоть до того, что это мог сделать один человек, единственный сисадмин, как Марко Армент (на фото справа), который в одиночку написал и запустил сайт Tumblr в районе 2007 г. (спустя шесть лет продан Yahoo за $1,1 млрд). И начинаешь задумываться: а к добру ли все эти облачные изменения?

Марко пишет, что при большом желании такой сервис можно запустить «дёшево, просто и разумно», если подойти к делу с умом. Поскольку у него не было времени на обслуживание серверов, то он изначально настроил их так, чтобы они не требовали особого администрирования. Выбор Марко Армента в 2005 году: дистрибутив CentOS (по сути, бесплатная версия Red Hat Enterprise Linux), который удовлетворяет трём основным требованиям:

  • очень стабильный (консервативный), чтобы не было частых обновлений, которые могут всё сломать;
  • медленно развивающийся, чтобы не приходилось переучивать основы ОС и осваивать новые инструменты;
  • популярный, так что по любому вопросу в интернете куча инструкций.

Он говорит, что Debian тоже неплохой вариант.

Их других сайтов на собственном хостинге с миллионной аудиторией и минимальным обслуживанием (1−2 человека) можно посмотреть на архитектуру Stack Overflow. Вспоминается также пример WhatsApp, когда штат компании составлял 50 человек, а аудитория превысила 200 млн пользователей. Изначально российский программист Игорь Соломенников с фриланс-биржи RentACoder.com написал это приложение в одиночку по заказу основателей WhatsApp, не умевших хорошо программировать. К сожалению, Игоря так и не взяли в число совладельцев компании, которую спустя пять лет продали за $19 млрд.

На самом деле таких примеров много. Главный принцип у этих компаний: свой хостинг по умолчанию и настройка высоконагруженных серверов таким образом, чтобы они требовали минимального администрирования и поддержки.

▍ Сисадмины превратились в девопсов

Повсеместный переход в облако — это объективный факт. О причинах можно долго рассуждать: распространение философии «быстрой разработки с частыми апдейтами», маркетинговые бюджеты техногигантов, пропаганда из технологических СМИ. Истина, как всегда, где-то посередине. Облачные сервисы и контейнеры — это великие достижения в IT, их нужно использовать, но и не забывать про собственные серверы, ведь только на них можно построить по-настоящему высоконагруженный сервис дёшево и эффективно.

Администрирование Linux-сервера — это, конечно, вымирающее искусство, но одновременно и всё более востребованная профессия. Bash-программирование востребовано даже в веб-разработке. Bash-скрипты могут сделать абсолютно всё: и сгенерировать сайт (тем более в связке с ChatGPT), и поднять веб-сервер.

Управление Linux-сервером — самая ценная инвестиция - 5
Распределение языков программирования в нормальном веб-приложении, источник

Для сравнения: разработка современного веб-сайта с модными технологиями выглядит как совершенное безумие:

Управление Linux-сервером — самая ценная инвестиция - 6

В наше время у сисадминов, девопсов, да и вообще у всех программистов добавился ещё один опциональный навык — работа с ChatGPT, то есть грамотное конструирование запросов (промтов). Есть маленькие хитрости, какие слова добавлять к запросу, чтобы ответ был более точным и информативным, когда вы просите составить bash-скрипт или сгенерировать настройки конфигурации. В принципе, работодатели ещё не требуют от этих знаний в обязательном порядке, но для самих специалистов полезно освоить новые инструменты. Для собственного удобства, чтобы экономить время. Только надо проверять всё, что выдаёт эта система. Но ChatGPT реально удивляет, подсказывая такие варианты синтаксиса Bash, о которых вы даже не знали, например, расширение параметра с вложенными скобками др. Таким образом, ChatGPT может выполнять роль инструктора и учителя в чём-то…

В общем, от современного сисадмина (девопса) требуют разбираться ещё много в чём: и во всех продуктах Amazon (а их около сотни, причём список постоянно меняется), и в других облачных сервисах, уметь немного программировать, да ещё следить за всеми новинками в IT.

▍ Потеря компетенций

Переход в облако и увольнение сисадминов — это необратимая потеря компетенций, специалистов и технологическая деградация. Кроме того, потом возникает проблема вернуться на свой хостинг (on-prem). Это так называемая «облачная репатриация»: во многих случаях получается, что переход в облако — необратимое действие. Практически никогда его потом не получится «откатить». По двум причинам:

  • привязка к поставщику;
  • потеря компетенций.

Если вы поднимаете систему на своём сервере on-prem или на VPS, то в любой момент можете перейти на другое железо или к другому хостеру. В случае облачных сервисов это нетривиальная и не всегда возможная процедура, потому что у некоторых вендоров есть уникальные и проприетарные сервисы (типа AWS Lambda), которые так просто не экспортируются. Это и есть привязка к поставщику.

С потерей компетенций всё понятно — если опытный сисадмин работал в вашей компании много лет и всё знал как свои пять пальцев, то после его увольнения второго такого вы не найдёте никогда. Просто потому, что опыта работы в вашей компании нет ни у одного специалиста на рынке труда. Придётся обучать новичка с нуля, а кто это будет делать?

Вот и получается, что переход в облако становится необратимым. Поэтому и популярны инструменты вроде Cockpit, чтобы управлять сервером VPS мог даже новичок из-под Windows, который не знает даже консоль. Но это суррогаты.

Управление Linux-сервером — самая ценная инвестиция - 7
Cockpit: графический веб-интерфейс для управления сервером

▍ Базовые знания

Очень жаль, что настройка и управление Linux-сервером на своём собственном железе/хостинге становится вымирающим видом искусства. На самом деле это крайне полезный профессиональный скилл. Основы администрирования Linux и огромная библиотека софта для установки на своём сервере — одна из самых полезных вещей, которые может освоить девопс и разработчик, особенно в начале карьеры. Эти знания открывают целый новый мир возможностей. Они дают понимание, как всё работает на самом деле, как использовать железо с максимальной эффективностью.

Для освоения и закрепления базовых навыков можно рекомендовать следующие ресурсы:

Управление Linux-сервером — это базовый навык, который останется актуальным спустя годы и десятилетия. Скорее всего, на протяжении всей вашей карьеры. Bash, SSH, nginx/Apache и даже сам Linux — ничто из этого не устареет в обозримом будущем. Подумайте, что ещё такого долговечного есть в IT-индустрии? Чем раньше освоить эти инструменты — тем лучше.

Даже в домашнем хозяйстве навыки системного администрирования сэкономят десятки или сотни долларов в месяц, потому что вы своими силами можете поднять инфраструктуру, за которую облачные компании берут ежемесячную плату. Те же системы видеонаблюдения, стриминговые сервисы, медиасерверы, NAS (самодельный вместо фирменного), системы резервного копирования, умный дом и многое другое. А сотня сэкономленных долларов в месяц — это уже $52 093 за двадцать лет (с капитализацией 7% годовых) или $75 937 (с капитализацией 10%). Про $200 в месяц и говорить нечего, там цифры астрономические…

Такова ценность базовых навыков управления Linux-сервером в домашнем хозяйстве.

Выходит, что изучение Linux — одна из самых эффективных инвестиций в жизни человека. Вы получаете от $50 000 до $75 000, потратив всего несколько месяцев, причём это обучение приносит ещё и огромное удовольствие. Ведь программирование — как зависимость, организм получает кайф и требует повышения дозы.

А что касается развития всей индустрии, то после массового перехода в облака некоторые компании вдруг обнаружили, что простая серверная стойка может быть в несколько раз дешевле, чем облачное обслуживание. И они возвращаются обратно: к серверным комнатам в конце офисного коридора (или у хостера).

Узнавайте о новых акциях и промокодах первыми из нашего Telegram-канала 💰

Автор: Анатолий Ализар

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js