Горячее
Лучшее
Свежее
Подписки
Сообщества
Блоги
Эксперты
Войти
Забыли пароль?
или продолжите с
Создать аккаунт
Я хочу получать рассылки с лучшими постами за неделю
или
Восстановление пароля
Восстановление пароля
Получить код в Telegram
Войти с Яндекс ID Войти через VK ID
Создавая аккаунт, я соглашаюсь с правилами Пикабу и даю согласие на обработку персональных данных.
ПромокодыРаботаКурсыРекламаИгрыПополнение Steam
Пикабу Игры +1000 бесплатных онлайн игр
Захватывающая аркада-лабиринт по мотивам культовой игры восьмидесятых. Управляйте желтым человечком, ешьте кексы и постарайтесь не попадаться на глаза призракам.

Пикман

Аркады, На ловкость, 2D

Играть

Топ прошлой недели

  • AlexKud AlexKud 38 постов
  • SergeyKorsun SergeyKorsun 12 постов
  • SupportHuaport SupportHuaport 5 постов
Посмотреть весь топ

Лучшие посты недели

Рассылка Пикабу: отправляем самые рейтинговые материалы за 7 дней 🔥

Нажимая кнопку «Подписаться на рассылку», я соглашаюсь с Правилами Пикабу и даю согласие на обработку персональных данных.

Спасибо, что подписались!
Пожалуйста, проверьте почту 😊

Помощь Кодекс Пикабу Команда Пикабу Моб. приложение
Правила соцсети О рекомендациях О компании
Промокоды Биг Гик Промокоды Lamoda Промокоды МВидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня

DevOps + Разработка

С этим тегом используют

IT IT юмор Программирование Linux Программист Юмор Сисадмин Gamedev Инди игра Инди Игры Unity Все
18 постов сначала свежее
12
NaruCodex
NaruCodex
1 месяц назад
Программисты шутят

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

Протокол вскрытия неопознанного распределенного монолита IT юмор, Программирование, Юмор, Разработка, Код, Длиннопост, Баг, Легаси, DevOps, Монолит, Микросервисы

[Начало аудиозаписи (бодрый голос, с нотками цинизма и усталости)]

Протокол вскрытия № 666-IT/2025. Дата: 17 мая 2025 года. Время: 05:30.

- Я, ведущий DevOps-патологоанатом Сисадминов А.А., приступаю к патологоанатомическому исследованию неопознанного распределенного монолита, поступившего из ООО "Светлое Будущее" после фатального падения системы, зафиксированного 16 мая 2025 в 23:58 по московскому времени.

- Присутствуют: я, младший специалист Логинов П.Р., стажер Архитекторова Н.Ю.

Протокол вскрытия неопознанного распределенного монолита IT юмор, Программирование, Юмор, Разработка, Код, Длиннопост, Баг, Легаси, DevOps, Монолит, Микросервисы

- Итак, начнем. Внешний осмотр. Перед нами типичный корпоративный монолит — старожил цифрового мира. Судя по следам от PHP 5.3 в виде комментариев к коду, датированным 2011 годом, ему не меньше 14 лет. Внушительный возраст для любой системы в кровавом Энтерпрайзе, не находите, Логинов?

- Да, это почти живой мамонт!

- Отмечаю критическую анемию документации. В репозитории — одинокий README.md от 2012 года с гордой надписью "TODO: написать документацию".

- Так, что у нас тут… Kubernetes? О, да! Модный, молодежный. Оркестрация уровня «дирижер в запое». Поды висят в CrashLoopBackOff чаще, чем разработчики этого чуда видят кофейный аппарт. Логи… о, мда, логи! «Something went wrong», «Error: null», «PANIC: KERNEL PANIC (not really, just kidding, or am I?)». Креативненько, ничего Логинов, возьмите образцы на анализ.

- Первичный осмотр выявляет множественные очаги копипасты. Особенно вопиющий случай — модуль авторизации. Код проверки прав доступа размножен 47 раз с минимальными правками. Это уже не просто технический долг, это цирк абсурда ролевых моделей!

- Вижу следы восьми разных фреймворков, некоторые из которых не совместимы. Это мне напоминает "инновационный борщ, тёщи, приправленный усушенными котлетками и жаренными пельменями", брр. А вот это что? Закомментированный кусок кода с пометкой «// Игорь, это не трогай, я сам не знаю, как оно работает, но без него все падает!!!11». Игорь, если ты это слышишь, ты был не прав – оно и с ним упало. Из мешанины использованных языков программирования в разных модулях, можно предположить, что разработчики стремились изобрести свой высокоуровневый Brainf**k, совсем чуточку не успели.

Протокол вскрытия неопознанного распределенного монолита IT юмор, Программирование, Юмор, Разработка, Код, Длиннопост, Баг, Легаси, DevOps, Монолит, Микросервисы

- Ага, вот и причина непосредственного отказа. Один из «сервисов» решил, что ему мало 128 Гб оперативной памяти и попытался сожрать еще столько же из свопа. Классический OOM Killer пришел и сделал свою работу. Но это, так сказать, орудие убийства. Причина отказа куда глубже.

[идет продолжительная работа]

- Отказ наступила из-за необратимых изменений кода, навороченных за 13 лет разными разработчиками с их "уникальным видением". Рекомендации родственникам: кремация кодовой базы и старт с нуля. Пациент был нежизнеспособен с момента зачатия идеи в воспаленном мозгу тимлида.

- Ладно, хватит лирики. Пойду оформлять официальный протокол, Логинов, мне нужны результаты анализов. Эти бюрократы из «МинЦифЗдрава» требуют всё по форме.

[Щелчок выключения диктофона]


УТВЕРЖДАЮ

Заместитель начальника Отдела цифровой патологии и реанимации информационных систем

И.И. Кибернетиков

«18» мая 2025 г.

ПРОТОКОЛ № 666-IT/2025 патологоанатомического вскрытия информационной системы

Наименование «ИТ» организации, в которой производится вскрытие: Отдел цифровой патологии и реанимации информационных систем Департамента по надзору за стабильностью критической инфраструктуры.

Дата и время поступления системы: 17.05.2025, 04:48 (MSK)

Идентификатор «умершего»: Проект «Прорыв-2012», версия - неизвестная.

Возраст (время эксплуатации до фатального сбоя): 14 лет, 3 месяца, 2 дня (в режиме «постоянно падает, но мы поднимаем»).

Дата и время «полного отказа»: 16.05.2025, 23:58 (MSK)

Основной «клинический» диагноз (предварительное заключение службы эксплуатации): «Все сломалось, ничего не работает, пользователи в ярости, не могут закрыть спринт».

Дата и время вскрытия: 17.05.2025, 05:30 (MSK)

Вскрытие производил: Ведущий DevOps-патологоанатом Сисадминов А.А.

Присутствовали: Младший специалист по цифровой некроскопии Логинов П.Р., стажер Архитекторова Н.Ю. (сбежала через 15 минут с криком «О боже! Да я лучше бухгалтерию, буду переводить на метод ФИФО!»).

НАРУЖНЫЙ ОСМОТР СИСТЕМЫ: «Кожные пользовательские интерфейсы» недоступны, ответ сервера HTTP 503 (Service Unavailable) на всех эндпоинтах. «Трупные ошибки в логах» обильные, хаотично распределены по всем компонентам системы. «Трупное зависание процессов» наблюдается в 6 из 8 основных модулей. Сопроводительная документация-анамнез разработки фрагментарна, содержит ненормативную лексику и наскальные рисунки, не относящиеся к делу. Архитектурная схема представлена в виде эскиза на длинном бумажном чеке из КБ, вызывает сомнения.

ВНУТРЕННЕЕ ИССЛЕДОВАНИЕ СЕРВИСОВ И ПОЛОСТЕЙ СИСТЕМЫ:

  1. «Центральная нервная система Оркестратор Kubernetes»: Версия 1.25.х (устаревшая). Множественные Pod'ы в состоянии CrashLoopBackOff и ImagePullBackOff. Обнаружены некорректно сконфигурированные readiness и liveness пробы, приводящие к преждевременному «умерщвлению» работоспособных экземпляров. Конфигурационные файлы содержат критические данные в открытом виде.

  2. «Сердечно-сетевая система межсервисного взаимодействие»: Топология сети избыточно сложная, напоминает «Гордиев узел». Задержки при взаимодействии между «микросервисами» достигают нескольких десятков секунд. Обнаружены следы использования самописного протокола поверх HTTP/1.1 для передачи бинарных данных, что приводило к их регулярной закупорке каналов связи. «Микросервисы» по факту являются монолитными приложениями, упакованными в Docker-контейнеры, с высоким уровнем связанности (tight coupling).

  3. «Дыхательная API Gateway система»: API Gateway перегружен из-за отсутствия кэширования и неоптимальных запросов от фронтенда. Модуль «AuthService» демонстрирует признаки «гипертрофии» (размер Docker-образа 3 Гб) и «кислородного голодания» (регулярные OOM Killed). Обнаружены многочисленные хардкод-адреса зависимых сервисов.

  4. «Пищеварительная база данных»: Основная СУБД PostgreSQL – горизонтально шардированная. Структура БД ненормализована, наименования таблиц и полей не соответствуют общепринятым стандартам (например, tbl_prod_final_v2_important). Индексы на часто запрашиваемых полях отсутствуют. Обнаружены следы «несварения» данных (неконсистентность) между репликами. Обнаружена метастаза в виде документно-ориентированной MongoDB из одной коллекции, c полу структурированными данными.

  5. «Опорно-двигательная кодовая база»: Код написан на смеси Python, Go и Node.js (в рамках одного «микросервиса»), в наличии остаточные следы PHP. Присутствуют многочисленные «велосипеды» (самописные решения для стандартных задач). Уровень покрытия тестами – предположительно, менее 5%. Обнаружены закомментированные участки кода с пометками «не трогать, магия» и «костыль, убрать перед релизом».

ПАТОЛОГОАНАТОМИЧЕСКИЙ ДИАГНОЗ:

  • Основное «заболевание»: Острая декомпенсированная архитектурная недостаточность, развившаяся на фоне тотального игнорирования принципов проектирования распределенных систем и DevOps-практик. Тип: «Распределенный Монолит с полиорганной дисфункцией микросервисов».

  • Осложнения: Синдром каскадного отказа модулей. Терминальная стадия технического долга. Критическая зависимость от «магического кода Игоря», о чем свидетельствуют множественные коммиты. Фатальные уязвимости безопасности.

  • Сопутствующие «заболевания»: Хроническое отсутствие автоматизированного тестирования. Дефицит компетентной документации. Синдром «Неприятия чужой разработки» (NIH) в тяжелой форме.

ЗАКЛЮЧЕНИЕ О ПРИЧИНЕ «ОТКАЗА» СИСТЕМЫ: «Отказ» информационной системы «Прорыв-2012» наступила в результате совокупности критических архитектурных просчетов, некомпетентной реализации, отсутствия контроля качества и пренебрежения базовыми принципами разработки и эксплуатации ПО. Непосредственной причиной остановки функционирования явился отказ модуля «AuthService» вследствие исчерпания выделенных ресурсов памяти (OOM Killer), что вызвало цепную реакцию отказа зависимых компонентов. Система стала нежизнеспособна в долгосрочной (и, как оказалось, краткосрочной) перспективе.

РЕКОМЕНДАЦИИ:

  1. Признать проект «Прорыв-2012» полностью несостоятельным.

  2. Провести служебное расследование с целью выявления ответственных за принятие губительных архитектурных и технических решений.

  3. Останки системы (репозитории, артефакты сборки, конфигурации) архивировать с пометкой «Крайне токсично. Не реанимировать!».

  4. Команде разработки в полном составе пройти курсы повышения квалификации по темам: «Основы архитектуры ПО», «DevOps для чайников», «Тестирование – это не больно».

  5. При планировании аналогичных проектов в будущем закладывать бюджет на привлечение внешних ИТ-архитекторов и независимых стейколдеров.

Ведущий DevOps-патологоанатом

___________________ Сисадминов А.А.

М.П. (Отдела Цифровой Патологии)

Показать полностью 3
[моё] IT юмор Программирование Юмор Разработка Код Длиннопост Баг Легаси DevOps Монолит Микросервисы
0
9
AppFox
AppFox
1 месяц назад

Kubernetes в продакшене: основные понятия и вопросы на собеседовании⁠⁠

Меня зовут Александр, я CTO компании AppFox. Мы более 10 лет занимаемся заказной разработкой и также имеем собственные продукты.

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

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Что такое Kubernetes простыми словами?

Разберем на примере интернет-магазина с тремя серверами:

  1. Сервер №1 – основной (принимает заказы).

  2. Сервер №2 – база данных (хранит товары и пользователей).

  3. Сервер №3 – бекенд для API (обрабатывает платежи).

Проблема:

  • В Чёрную пятницу приходит в 10 раз больше покупателей. В результате, сервера №1 и №3 падают от нагрузки, магазин "висит".

  • Сервер №2 (база данных) ломается, а все заказы теряются.

  • Чтобы добавить новые сервера, админ вручную копирует настройки, что занимает часы.

Решение при помощи Kubernetes.

Те же 3 сервера, но теперь они управляются Kubernetes.

  1. Автомасштабирование

    • При наплыве покупателей Kubernetes автоматически запускает дополнительные копии серверов №1 и №3.

    • Когда нагрузка падает – лишние сервера отключаются.

  2. Отказоустойчивость

    • Если сервер №2 (база данных) упал, Kubernetes сразу переключает нагрузку на его резервную копию.

    • Покупатели даже не замечают проблемы.

  3. Гибкие обновления

    • Вы хотите обновить API (сервер №3).

    • Kubernetes делает это без downtime:

      • Запускает новые версии API, переключает трафик на них и останавливает старые.

  4. Экономия денег

    • Ночью, когда магазин почти не используют, Kubernetes отключает часть серверов.

    • Утром – снова включает.

Что это даёт бизнесу?

  • Магазин не "падает" в пиковые нагрузки (Чёрная пятница, распродажи).

  • Нет потери заказов – если что-то сломалось, система сама всё починит.

  • Быстрые обновления – можно выпускать новые фичи без остановки магазина.

  • Экономия на серверах – не нужно держать "лишние" мощности.

Kubernetes: мощный инструмент, но не серебряная пуля

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

Термин k8s является синонимом Kubernetes и означает 8 букв между первой и последней буквой. Да, программисты любят сокращения :)

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

Когда Kubernetes оправдан:

  • Микросервисная архитектура с большим количеством сервисов.

  • Необходимость автоматического масштабирования под нагрузку.

  • Высокие требования к отказоустойчивости.

  • Гибкость деплоя (Canary, Blue-Green, A/B-тестирование).

Когда Kubernetes — избыточное решение:

  • Монолитное приложение с низкой нагрузкой.

  • Маленькие проекты без потребности в масштабировании.

  • Стартапы с ограниченным бюджетом.

  • Проект для демо или MVP, в которых планируется масштабирования только после получения инвестиций

  • Команда не готова к сложности k8s (обучение и поддержка требуют ресурсов).

В компании AppFox мы используем Kubernetes при построения кластеров для мультиплеерных игр и проектов со сложной микросервисной архитектурой. В частности, мы его использовали при разработке решений для СберБанка и Банка ВТБ.

Основные понятия Kubernetes

  • Pod — минимальная единица развертывания (может содержать один или несколько контейнеров).

  • Deployment — декларативное описание желаемого состояния приложения.

  • Service — абстракция для доступа к подам (ClusterIP, NodePort, LoadBalancer).

  • Ingress — управление внешним трафиком (роутинг, SSL).

  • ConfigMap & Secret — хранение конфигураций и чувствительных данных.

  • PersistentVolume (PV) & PersistentVolumeClaim (PVC) — работа с постоянным хранилищем.

  • Helm — менеджер пакетов для k8s (чарты).

Вопросы по Kubernetes на собеседовании

Теперь самое интересное — какие вопросы задают кандидатам в зависимости от их уровня.

Для backend-разработчика

Что такое контейнер и зачем нужен Docker?

  • Контейнер - это изолированное окружение для запуска приложений со всеми зависимостями.

  • Docker - платформа для создания и управления контейнерами.

Разница между Docker и Kubernetes

  • Docker создает контейнеры

  • Kubernetes управляет множеством контейнеров на разных серверах.

Как работает kubectl get pods? Что выведет эта команда?

Команда показывает список подов (pods) - минимальных единиц развертывания в k8s. Вывод включает имя пода, статус, количество рестартов и возраст.

Что такое Deployment и зачем он нужен?

Это объект k8s для декларативного управления подами. Позволяет:

  • Разворачивать приложения

  • Обновлять их (rolling update)

  • Возвращаться к предыдущим версиям (rollback)

  • Масштабировать количество реплик

Как приложение в k8s получает конфигурацию (ConfigMap, Secrets)?

  • ConfigMap хранит конфигурации (например, настройки приложения)

  • Secrets - чувствительные данные (пароли, токены). Они монтируются в поды как файлы или переменные окружения.

Что такое Pod, Deployment и Service?

  • Pod — это минимальная единица в Kubernetes

  • Deployment управляет жизненным циклом Pod'ов

  • Service предоставляет сетевой доступ.

Как подать переменные окружения в Pod?

Через env, envFrom, ConfigMap, Secret.

Что произойдет, если Pod упал?

Kubernetes сам его перезапустит — важно понимать работу контроллеров.

Для Junior DevOps

Как создать под с помощью kubectl?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как посмотреть логи пода?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как работает Service? Какие типы сервисов знаете?

Абстракция для доступа к набору подов. Типы:

  • ClusterIP (внутренний IP)

  • NodePort (порт на каждой ноде)

  • LoadBalancer (внешний балансировщик)

  • ExternalName (CNAME-запись)

Как обновить приложение в k8s (стратегии деплоя)?

  • RollingUpdate (постепенная замена подов)

  • Recreate (удаление всех старых перед созданием новых)

Что делает kubelet и kube-proxy?

  • kubelet - агент на нодах, запускает и контролирует контейнеры

  • kube-proxy - обеспечивает сетевую связность между сервисами

Как создать кластер Kubernetes?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост
Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост
Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как подключить volume к Pod'у?

Volume (том) в Kubernetes позволяет сохранять данные между перезапусками Pod'ов. Есть несколько типов томов, но для постоянного хранения данных используются PersistentVolume (PV) и PersistentVolumeClaim (PVC).

  • PersistentVolume — это ресурс в кластере, представляющий физическое хранилище (например, диск в облаке или NFS-шару). PV создаётся администратором кластера и существует независимо от Pod'ов.

  • PersistentVolumeClaim — запрос Pod'а на выделение PV. PVC связывается с подходящим PV (или динамически создаёт его, если настроен StorageClass). PVC монтируется в Pod как volume. Если не хочется создавать PV вручную, можно использовать StorageClass для автоматического создания томов.

Чем отличается Horizontal Pod Autoscaler от Vertical Pod Autoscaler?

  • HPA масштабирует количество Pod'ов на основе метрик нагрузки (увеличивает или уменьшает число реплик (replicas) Deployment'а в зависимости от, например, CPU или памяти, т.е., нагрузка выросла — добавили ещё Pod'ов).

  • VPA изменяет ресурсы (CPU, память) у контейнеров внутри Pod'а

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Для Middle DevOps

Как настроить Ingress для доступа к сервису?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост
Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как сделать Horizontal Pod Autoscaler (HPA)?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост
Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как управлять ресурсами (requests/limits)?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как настроить PersistentVolume для stateful-приложения?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как диагностировать проблему с CrashLoopBackOff?

  1. Посмотреть логи пода

  2. Проверить readiness/liveness пробы

  3. Убедиться, что контейнеру хватает ресурсов

  4. Проверить монтирование томов

  5. Изучить события кластера:kubectl describe pod <pod-name>kubectl get events

Для Senior DevOps

Как настроить NetworkPolicy для изоляции подов?

Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост
Kubernetes в продакшене: основные понятия и вопросы на собеседовании IT, Разработка, Системное администрирование, Программирование, Программист, Kubernetes, Интервью, Собеседование, DevOps, Серверная, Оптимизация, Длиннопост

Как работает etcd и что делать при его проблемах?

Распределенное key-value хранилище - "мозг" Kubernetes. Проблемы и решения:

  • Недостаток места: регулярная дефрагментация

  • Высокая задержка: оптимизация сети

  • Потеря кворума: восстановление из бэкапа

Как настроить мониторинг (Prometheus + Grafana)?

  1. Установка Prometheus Operator

  2. Настройка ServiceMonitor для сбора метрик

  3. Создание Grafana дашбордов

  4. Настройка алертов через Alertmanager

Как организовать multi-cluster управление?

Варианты:

  • Kubefed (Federation v2)

  • Cluster API

  • Коммерческие решения (GKE Anthos, EKS Anywhere)
    Основные задачи: синхронизация ресурсов, единая аутентификация, централизованное логирование.

Как оптимизировать costs в облачном k8s (автоскейлинг нод)?

  • Использование spot-инстансов

  • Автомасштабирование нод (Cluster Autoscaler)

  • Вертикальное масштабирование подов (VPA)

  • Планирование подов на дешевые ноды (node affinity/taints)

  • Использование serverless-решений (AWS Fargate, GCP Cloud Run)

Заключение: Kubernetes — мощный инструмент, но не панацея

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

Главный совет:

  • Если у вас микросервисы, высокая нагрузка или требовательная инфраструктура — Kubernetes может стать вашим решением.

  • Если проект небольшой или монолитный — начните с простых решений (Docker Compose, managed-сервисов) и масштабируйтесь постепенно.

Попробуйте Kubernetes в действии:

  • Разверните локальный кластер через minikube или kind.

  • Поэкспериментируйте с Helm-чартами и автоскейлингом.

  • Изучите managed-решения (GKE/EKS/AKS), чтобы оценить их преимущества.

Показать полностью 15
[моё] IT Разработка Системное администрирование Программирование Программист Kubernetes Интервью Собеседование DevOps Серверная Оптимизация Длиннопост
3
1
eSimOnOff
eSimOnOff
1 месяц назад
Серия Фреймворк управления IT-компанией

CTO в разрезе: как устроена его конфигурация по уровням компании⁠⁠

CTO в разрезе: как устроена его конфигурация по уровням компании DevOps, Разработка, Развитие, IT, Инженер, Длиннопост

В прошлый раз мы обсуждали PDCA — про оценку того, как рук-ль работает с командой. Теперь — о командах, на уровнях которых работает CTO (будем для общности называть его руководителем технического домена). CTO работает не только с разработкой. Его зона ответственности охватывает множество бизнес-доменов — от аналитики до маркетинга. Разберём, как это устроено на разных уровнях компании, определив, с кем он взаимодействует и из чего складывается оценка его деятельности.

[1 и 2] Операционно-тактический уровень - технари и тимлиды

Это, конечно, технарские команды, которых может быть несколько. Такой вот уровень работы «на земле» — операционный. Там и «бекенды», и «фронты», и мобильщики, и тестировщики, и технические писатели и т. д. и т. п. В общем, все те, кто работают руками.

Далее тимлиды, которые рулят теми самыми командами. Их команда — это уже не операционный, а тактический уровень. Все вместе и на операционном, и на тактическом уровне они занимаются развитием продуктов компании, генерируя постоянно их улучшения.

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

Оценка CTO складывается из успешности работы по управленческой (тимлидской) и технарской (техника) частям.

[3] Уровень эксплуатации (operations) - инфра, кадры, бухгалтерия и пр.

Улучшения продуктов поднимаются на следующий уровень — уровень эксплуатации (operations). Ради него и пишется документация техническими писателями, настраиваются CI/CD девопсами — в общем, делается всё, чтобы уровень развития, как первые ступени ракеты, в любой момент бизнес мог отбросить как выполнившие свою функцию. Уровень эксплуатации — это уже третий уровень.

Здесь находятся техподдержка, те специалисты из DevOps-команд, которые занимаются эксплуатацией (мониторинг, алерты, инциденты и т. д.). Здесь идёт постоянно активное взаимодействие с эксплуатацией других доменов — например, HR, юридической поддержкой, Отделом Кадров, АХО, бухгалтерией и т. п.

На этом уровне от CTO требуется действовать по принципу минимального вмешательства, так как именно здесь находятся механизмы компании, обеспечивающие работу всей бизнес-модели. Для CTO крайне важна здесь стабильность работы его улучшений продуктов, а также скорость выката в эксплуатацию — для проверки гипотез, позволяющих тестировать на живом рынке новые предлагаемые ценности.

Здесь CTO взаимодействует с доменами DevOps, технической поддержки, внутренней безопасности, IT-инфраструктуры, а также доменами административных и кадровых служб, от которых зависит стабильность.

Оценка CTO складывается из того, насколько он грамотно обеспечивает эксплуатацию.

[4] Стратегический уровень - бизнес

Следующий уровень — бизнес-команда или C-level. Это уровень стратегии с долгосрочными перспективами. Это команда руководителей других доменов, с которыми идёт активное взаимодействие для координации общей стратегии по улучшению бизнес-модели. Если на уровне эксплуатации CTO ещё мог не взаимодействовать с продажами или маркетингом, то здесь у него идёт активнейшее взаимодействие с ними.

CTO на этом уровне включается во взаимодействие с доменами продаж, маркетинга, клиентского успеха, даже если они ему не подчиняются. Его задача — донести ограничения и возможности технологий до тех, кто строит бизнес-модель.

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

[5] Внешний контур - рынок

И последний уровень — внешний контур, рынок. То, ради чего всё.

На самом деле вся компания со всеми доменами и уровнями — это его (рынка) гипотеза. Рынок, по сути, проверяет гипотезу (в виде инвестиций), экспертизой (в виде сотрудников и консультантов). Рынок может даже проводить валидацию. Это может быть due diligence от инвесторов, ревью со стороны партнёров или требования аудиторов в регуляторной среде. Если гипотеза оказывается верной — он меняет инвестиции финансов и внимания кастомеров на ценность, предоставляемую продуктами компании.

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

Итог

В каждом из этих уровней CTO взаимодействует с разными доменами компании. Получается сетка из уровней и функций, по которой можно диагностировать слабые места и что именно надо прокачивать или делегировать. Этот подход можно применять к любому домену. Вот как может выглядеть эта конфигурация на примере домена разработки: оперативно-тактический уровень, уровень эксплуатации, бизнес-уровень и уровень рынка.

Такую конфигурацию можно использовать для выявления пробелов в ответственности, фасилитации стратегических сессий и настройки фокуса роли CTO. Эта не оценка, как я уже в прошлый раз говорил, не дамоклов меч, а конфигурация конкретного CTO — в зависимости от того, что представляет собой компания: стартап, бигтех или вообще перекуп. Понимание своей конфигурации помогает CTO оценить зрелость своей роли, адаптировать систему управления и выстроить архитектуру под задачи компании.

Домашнее задание для закрепления

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

– в знаменателе — их реальные ожидания от вас,
– в числителе — то, как вы презентуете свою работу по этим ожиданиям перед стейкхолдерами;

Такая простая модель быстро покажет, где возникает разрыв — и что стоит развивать или делегировать.

Показать полностью 1
[моё] DevOps Разработка Развитие IT Инженер Длиннопост
0

Оформить подписку для бизнеса

Перейти
Партнёрский материал Реклама
specials
specials

Ваш бизнес заслуживает большего!⁠⁠

Оформляйте подписку Пикабу+ и получайте максимум возможностей:

Ваш бизнес заслуживает большего! Малый бизнес, Предпринимательство, Бизнес

О ПОДПИСКЕ

Малый бизнес Предпринимательство Бизнес
elena.davydova
2 месяца назад

Deckhouse Conf 2025: как прошла первая техническая конференция от команды Deckhouse⁠⁠

Масштабная технологическая конференция объединила свыше 500 ведущих специалистов в области DevOps, Kubernetes и платформенной разработки

Deckhouse Conf 2025: как прошла первая техническая конференция от команды Deckhouse Импортозамещение, Kubernetes, Российское по, Разработка, Промышленность, Информационная безопасность, Программирование, It-инфраструктура, IT, DevOps, ВКонтакте (ссылка), Длиннопост

Deckhouse Conf 2025 - первая техническая конференция команды разработчиков Deckhouse

Компания «Флант» провела Deckhouse Conf 2025 — первую техническую конференцию, организованную командой разработчиков Deckhouse, которая состоялась в Центре событий РБК. Событие объединило более 500 ведущих специалистов в области DevOps, Kubernetes и платформенной разработки.

Deckhouse Conf 2025 стала площадкой для обмена опытом и обсуждения актуальных вопросов Cloud Native-разработки. Программа конференции включала доклады, посвященные практическим аспектам работы с Kubernetes, информационной безопасности, мониторингу, DevOps и SRE. Участники узнали о последних обновлениях продуктов Deckhouse, планах развития Deckhouse Kubernetes Platform и получили ценные рекомендации по оптимизации инфраструктуры и повышению эффективности процессов разработки.

Deckhouse Conf 2025: как прошла первая техническая конференция от команды Deckhouse Импортозамещение, Kubernetes, Российское по, Разработка, Промышленность, Информационная безопасность, Программирование, It-инфраструктура, IT, DevOps, ВКонтакте (ссылка), Длиннопост

Александр Титов, генеральный директор компании «Флант»

«2024 год для Deckhouse Kubernetes Platform стал периодом стремительного развития — платформа показала рост выручки на 170%, а к началу 2025 года количество управляемых кластеров превысило 1000. Согласно исследованию TAdviser, объём российского рынка коммерческих платформ контейнеризации в 2023 году составил 931 млн рублей с учётом выручки от лицензий и поддержки OnPremise-решений. В этом сегменте платформа Deckhouse Kubernetes Platform от компании «Флант» уверенно занимает лидирующие позиции с долей рынка 31%», —  рассказал Александр Титов, генеральный директор компании «Флант».

Технологическая дорожная карта Deckhouse Kubernetes Platform в 2024 году была направлена на расширение поддерживаемых вычислительных сред и наращивание функциональности. Главным требованием при добавлении новых возможностей и внесении изменений являлось сохранение достигнутой производительности и объема потребляемых ресурсов. На текущий момент крупнейшая промышленная инсталляция DKP насчитывает более 450 узлов и свыше 20000 подов.

Deckhouse Conf 2025: как прошла первая техническая конференция от команды Deckhouse Импортозамещение, Kubernetes, Российское по, Разработка, Промышленность, Информационная безопасность, Программирование, It-инфраструктура, IT, DevOps, ВКонтакте (ссылка), Длиннопост

Давид Мэгтон, технический директор, сооснователь компании «Флант»

«Kubernetes перестал быть просто инструментом — теперь это новый стандарт для управления инфраструктурой, — отметил Давид Мэгтон, технический директор, сооснователь компании «Флант». — Но с ростом технических возможностей повышается и сложность управления ими. Наша миссия состоит в том, чтобы разорвать эту связь и обеспечить простоту разработки. Поэтому основой развития DKP является подход SDx (Software Defined Everything), поверх которого строится “правильный” API».

Давид Мэгтон выделил пять главных принципов, на основе которых происходит развитие API DKP. Первый – декларативный подход: пользователь задает правила, по которым система выполняет необходимые операции с использованием собственных механизмов. Второй – одна точка изменения того или иного параметра в API, обеспечивающая простоту использования. Третий – единообразие: применение единых подходов и терминов для всех инструментов управления в экосистеме. Четвертый – защита от неправильного использования: автоматическое ограничение нерабочих комбинаций параметров конфигураций. Пятый – обратная связь на любое действие пользователя.

Deckhouse Conf 2025: как прошла первая техническая конференция от команды Deckhouse Импортозамещение, Kubernetes, Российское по, Разработка, Промышленность, Информационная безопасность, Программирование, It-инфраструктура, IT, DevOps, ВКонтакте (ссылка), Длиннопост

В DKP реализованы такие подходы, как исправление возникающих ошибок уже на ранних этапах разработки; фокус на создании долгосрочных решений; готовность к постоянным изменениям в создаваемом решении. Они являются важными факторами, гарантирующими возможность применения платформы для построения цифровых продуктов и Cloud Native систем.

«Мы помогаем бизнесу управлять приложениями и ресурсами. Наша платформа знает, что нужно приложению, и может динамически подстраиваться под нагрузку — давать больше или меньше ресурсов: процессора, памяти и так далее. В этом преимущество DKP: платформу можно использовать  в окружении с разными и меняющимися нагрузками. Это не коробка, в которой ничего нельзя поменять — это открытая платформа, которая развивается в такт с потребностями заказчика, обеспечивая непрерывные обновления и интеграцию с другими системами, чтобы новые возможности появлялись без долгого ожидания и приносили максимум пользы. Вся индустрия движется к этому подходу, и мы задаем тренд», — подчеркнул Александр Титов.

Таким образом, развитие DKP имеет свои особенности, но идет в соответствии с трендами эволюции всей экосистемы Kubernetes. Сегодня решение успешно применяется во всех ключевых секторах экономики: финансовые организации, государственный сектор, промышленные предприятия,  ритейл и e-come выбирают Deckhouse Kubernetes Platform для своих цифровых инфраструктур. Платформа одинаково эффективно работает в любых средах — от bare-metal серверов до сложных гибридных архитектур, подтверждая свою репутацию наиболее универсального и надёжного решения для контейнеризации на российском рынке.

Фото Deckhouse conf доступно по ссылке

Показать полностью 4
Импортозамещение Kubernetes Российское по Разработка Промышленность Информационная безопасность Программирование It-инфраструктура IT DevOps ВКонтакте (ссылка) Длиннопост
0
1066
imctobitch
imctobitch
1 год назад
Офисные будни
Серия I'm CTO, bitch

DevOps Семён⁠⁠

DevOps Семён
I`m CTO bitch Скриншот IT юмор IT Разработка Нецензурщина Мат DevOps Сисадмин Офис Сотрудники Пьяные
122
2
atygaev
atygaev
1 год назад

С таким деплоем и врагов не надо⁠⁠

Деплоить в пятницу опасно и безответственно.
Поэтому деплоить надо в субботу.

[моё] IT юмор Программирование Программист Админ DevOps Разработка Разработчики Трудовые будни IT Эффективный менеджер Текст
7
2
DELETED
1 год назад

Deleted⁠⁠

Deleted
[моё] IT Программирование Разработка Программист Творчество IT юмор DevOps Длиннопост
1

Продвиньте ваш пост

Перейти
Партнёрский материал Реклама
specials
specials

Нужно больше внимания к постам? Есть способ!⁠⁠

Иногда даже самый интересный материал теряется в потоке новых записей. Если ваш пост остался незамеченным, измените ситуацию. Для этого на Пикабу есть продвижение.

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

Продвинуть пост

Продвижение Посты на Пикабу Текст
atygaev
atygaev
1 год назад

Какая специальность у IT-шников?⁠⁠

Какая специальность у IT-шников?
[моё] IT Программирование QA Разработка DevOps Админ Менеджер Картинка с текстом
6
Посты не найдены
О нас
О Пикабу Контакты Реклама Сообщить об ошибке Сообщить о нарушении законодательства Отзывы и предложения Новости Пикабу Мобильное приложение RSS
Информация
Помощь Кодекс Пикабу Команда Пикабу Конфиденциальность Правила соцсети О рекомендациях О компании
Наши проекты
Блоги Работа Промокоды Игры Курсы
Партнёры
Промокоды Биг Гик Промокоды Lamoda Промокоды Мвидео Промокоды Яндекс Директ Промокоды Отелло Промокоды Aroma Butik Промокоды Яндекс Путешествия Постила Футбол сегодня
На информационном ресурсе Pikabu.ru применяются рекомендательные технологии