TGStat
TGStat
Type to search
Advanced channel search
  • flag English
    Site language
    flag Russian flag English flag Uzbek
  • Sign In
  • Catalog
    Channels and groups catalog Search for channels
    Add a channel/group
  • Ratings
    Rating of channels Rating of groups Posts rating
    Ratings of brands and people
  • Analytics
  • Search by posts
  • Telegram monitoring
Legacy Code

31 Mar 2020, 09:00

Open in Telegram Share Report

Forward from: ✙rozho)))k✙🇺🇦
Инфраструктура для людей 1

Подавляющее большинство современных инструментов управления инфраструктурой сделаны не для людей. Имея на руках кучу отличных технологий и карт-бланш, из-под рук “творцов” всё равно выходят уродливые пародии на Do Nothing Machine(https://www.youtube.com/watch?v=Bp4tGTNNi1I), которыми потом приходится пользоваться несчастным инженерам.

По идее, с течением времени уровень абстракции должен повышаться, а сложность управления — уменьшаться. Когда выстрелила Lambda и serverless-движение, то казалось что вот он — конец громоздким архитектурам и серверам. Увы, на деле всё не так просто и Lambda стала еще одним инструментом для узкого круга задач.

Меня сильно огорчает это положение вещей. Большинству проектов нужно всего ничего:

- Балансировщик-гейтвей с SSL-терминацией

- Эфемерные сервера приложений и минимальный service discovery между ними

- Крон, выполнение кода по расписанию

- Managed базы данных (реляционные и нереляционные) с бекапами, копированиями, автоматическим масштабированием

- Объектное хранилище (S3) и CDN для него

- Очереди (SQS и всевозможные *MQ)

- Чтобы всем этим можно было управлять по API

- Blue-green (red-black) deployment, клонирование окружений, canary releases

- Все это в одном месте и чтобы запускалось одной кнопочкой

Всё. Этим набором (а то и меньше) можно закрыть почти всё что угодно. Конечно, вдобавок надо еще мониторинг физических и бизнес метрик, централизованное логирование, фаерволы и всё остальное из 12-factor application набора, но то уже плюшки, поначалу можно жить и без них. Но для того, чтобы всё это настроить, завести и потом поддерживать, надо приложить титанические усилия. Большинство держит для этой чёрной работы специального человека или целый отдел.

К сожалению, индустрия идет по пути культа больших компаний и пытается скуксить (“натянуть наоборот”) решения, выросшие из потребностей гигантов, на свою маленькую проблему. У нас появляются кубернетесы, но кубернетес из коробки слишком сложен(https://github.com/kelseyhightower/kubernetes-the-hard-way) поэтому давайте сделаем еще десяток инструментов для упрощения кубернетеса: minikube, k3s, kind, еще черти что, для конфигурации возьмем Б-го мерзкий YAML а для гибкости навернем туда разнообразных шаблонизаторов и сделаем компиляцию одного ямля в другой. На одном из проектов, где я сейчас работаю, все крутится в кубере. Даже с учётом того, что мы используем GKE, окружения не сильно сложные и все деплоится через helm, у меня просто лютейше подгорает от всего этого. После пары месяцев работы над инфраструктурными задачами я совершенно перехотел заниматься тем, что называется DevOps. Пустите меня обратно в коробочку, откуда я могу выдавать код, который “работает на моей машине”, а дальше делайте с ним что хотите. Я бомблю каждый день от невероятной сложности всего происходящего и до меня теперь на самом деле дошла шутка про Senior YAML Engineer. Мне кажется, люди могут лучше.

(если у вас есть комментарии и возражения, например о том что все на самом деле хорошо, то обязательно оставляйте его у меня в блоге: https://www.rozhkov.me/post/infrastructure-for-a-people/)

3.4k 0 0
Catalog
Channels and groups catalog Channels compilations Search for channels Add a channel/group
Ratings
Rating of Telegram channels Rating of Telegram groups Posts rating Ratings of brands and people
API
API statistics Search API of posts API Callback
Our channels
@TGStat @TGStat_Chat @telepulse @TGStatAPI
Read
Академия TGStat Telegram Research 2019 Telegram Research 2021 Telegram Research 2023
Contacts
Справочный центр Support Email Jobs
Miscellaneous
Terms and conditions Privacy policy Public offer
Our bots
@TGStat_Bot @SearcheeBot @TGAlertsBot @tg_analytics_bot @TGStatChatBot