Как стать автором
Обновить
273.48

DevOps *

Методология разработки программного обеспечения

Сначала показывать
Порог рейтинга
Уровень сложности

Поднимаем одно-нодовый kubernetes-кластер на RedOS

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров1.5K

Нынешний век — век импортозамещения. Многие компании сейчас сталкиваются с возникшей необходимостью переходить на отечественное ПО. Приходится осваивать вновь появившиеся нюансы, связанные с новым программным обеспечением. В данной статье мы в подробности рассмотрим настройку и шаг‑за шагом настроим single‑node kubernetes‑кластер в одной из популярных отечественных ОС — RedOS.

Читать далее
Всего голосов 10: ↑5 и ↓5+2
Комментарии1

50 терминов системного дизайна, которые должен знать каждый разработчик

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров18K



1. Масштабируемость / Scalability


  • Масштабируемость — это способность системы поддерживать возросшую нагрузку путем добавления дополнительных ресурсов
  • Примером является добавление дополнительных серверов для обработки увеличившегося веб-траффика
  • Что такое масштабируемость и как ее достичь?

2. Балансировка нагрузки / Load Balancing


  • Балансировка нагрузки — это разделение входящего сетевого траффика между несколькими серверами для снижения нагрузки на каждый из них (во избежание того, чтобы на один сервер приходилось слишком много траффика)
  • Примером является распределение веб-траффика между несколькими экземплярами EC2 с помощью сервиса AWS Elastic Load Balancer (ELB)
  • Понимание балансировки нагрузки
Читать дальше →
Всего голосов 43: ↑37 и ↓6+43
Комментарии6

OpenTelemetry с нуля до 100: пример внедрения Норвежским управлением труда и соцобеспечения

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров7.1K

Сейчас OpenTelemetry — это самый быстрорастущий проект CNCF. Опытом внедрения этого набора инструментов для отладки и анализа производительности распределённых систем поделился тимлид платформенной команды Норвежского управления труда и социального обеспечения. В переводе под катом вас ждёт тернистый путь от первых коммитов до реального применения OpenTelemetry в production, а также планы команды на будущее.

Читать далее
Всего голосов 25: ↑25 и ↓0+32
Комментарии4

Спускаясь с облаков в ад: развёртывание Kubernetes на Astra Linux. Часть 1

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров11K

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

Всем привет, на связи Пётр. Сегодня мы рассмотрим автоматическое развёртывание ванильного Kubernetes на Astra Linux через Kubespray + Helm.

Давайте разворачивать
Всего голосов 13: ↑11 и ↓2+13
Комментарии16

Истории

Оптимизируем системные ресурсы при развёртывании за счёт перехода на динамику

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров1.3K

Всем привет! Если в компании растёт количество продуктов, а для их развёртывания используются виртуальные машины, то рано или поздно возникает задача оптимизации ресурсов. Скажем, вы используете для оркестрации Jenkins. Количество агентов на ВМ при этом статично, а количество развёртываний в разное время разное. В этом случае при массовых установках агенты периодически упираются в установленный лимит исполнителей (executor), а в свободные часы ВМ простаивают, занимая ресурсы.

Мы, команда Run4Change в СберТехе, сопровождаем тестовые среды. В наши задачи входит в том числе развёртывание продуктов облачной платформы Platform V на стендах для последующего тестирования. Расскажем, как мы решили проблему использования системных ресурсов и отказались от виртуальных машин в пользу cloud‑native‑решения. Статья может быть полезна тем, кто планирует начать использование динамических агентов Jenkins, и может использоваться как первоначальное руководство.

Читать далее
Всего голосов 7: ↑7 и ↓0+12
Комментарии1

Одна платформа, чтобы мониторить всех: как мы осуществляем трассировку, работаем с логами и метриками во всей экосистеме

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров6.5K

Привет, Хабр! Меня зовут Филипп Бочаров, я руководитель направления мониторинга и наблюдаемости в МТС Диджитал. В нашей экосистеме более 400 продуктов, которые активно взаимодействуют между собой. Для такого обширного ландшафта мы используем единую платформу мониторинга: она устанавливает общие стандарты, дает возможность легкого перехода на новый стек и снижает трудозатраты на типовые операции. 

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

Читать далее
Всего голосов 13: ↑13 и ↓0+19
Комментарии7

Готовим по рецепту: CI/CD в MLOps

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров4.5K

Всем привет! Меня зовут Роза и я MLOps-инженер в Купере. Под катом расскажу, как построить CI/CD-пайплайн для ML-приложений с нуля, поэтапно и без боли. Ну почти :)

Раньше очень часто работа DS-инженера заканчивалась на подготовке кода модели в Jupyter-ноутбуке, а дальше его подхватывали команды разработки и доводили до продакшена. У такого подхода есть минусы. Например, если произойдёт инцидент, непонятно кто ответственен за сервис  — команда разработки или авторы ML-модели?

К счастью, культура разработки меняется: теперь ML-инженер — это специалист, который разрабатывает свой ML-сервис на всем пути от общения с бизнесом до продакшена. Этот подход хорошо описывает принцип «you build it, you run it»: кто построил модель, тот её и запускает. Как раз в этом здорово помогает CI/CD.

Погнали!
Всего голосов 20: ↑18 и ↓2+21
Комментарии11

Обзор Kwasm — оператора для запуска WebAssembly-приложений в кластере Kubernetes

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.1K

Продолжаем обозревать инструменты, которые позволяют использовать WebAssembly-приложения в кластере Kubernetes. В этот раз пробуем оператор Kwasm: установим его в кластер, развёрнутый с помощью kind, и запустим тестовое приложение.

Читать далее
Всего голосов 17: ↑17 и ↓0+23
Комментарии0

Стилистический анализатор: синхронизация объявлений и определений static функций

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров1.7K

Представлена утилита-надзиратель, что последовательность определения static функций совпадает с последовательностью объявляения static функций.

Читать далее
Всего голосов 7: ↑5 и ↓2+7
Комментарии21

Kubernetes на сковородке: готовим самые вкусные кластеры

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров5.3K

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

Привет! Меня зовут Игорь Титов, я Product Lead системных инженеров в Garage Eight. В этой статье расскажу, что такое контейнеризация, как с ней помогает Kubernetes и почему важно уметь правильно его готовить.

Читать далее
Всего голосов 10: ↑4 и ↓6+3
Комментарии2

С 80-х по 2024-й: как создавались и оптимизировались CI-тесты

Время на прочтение9 мин
Количество просмотров2K

Современные команды разработки тестируют каждое изменение кода перед мержем. Это не просто общепринятая традиция: наряду с ревью кода, это стандарт по умолчанию, применяемый практически во всех кодовых базах компаний. Мы называем его тестами CI (непрерывной интеграции). В результате их внедрения среднестатистическая организация запускает сотни наборов тестов в день.

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

Читать далее
Всего голосов 12: ↑11 и ↓1+14
Комментарии0

Кривая дорожка или приставными шагами в DevOps

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.3K

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

Данная статья рассчитана прежде всего на только «входящих в ИТ» или начинающих ИТ‑специалистов, которые стремятся к получению роли DevOps в будущем или просто хотят расширить багаж собственных знаний, но не знают с чего начать. Опытным специалистам указанные источники могут показаться недостаточно полными в силу того, что они собраны мной субъективно и без нацеленности на узконаправленное изучение одного из направлений, чего должно быть достаточно для начинающих специалистов, но при этом не должно негативно сказаться на желании изучения новых материалов.

Почему в названии статьи фигурирует «кривая дорожка» и «приставные шаги»?
Дорожка кривая, потому что придётся пробовать разные направления и не зацикливаться на чём‑то одном. Приставные шаги — так как Ваш путь в DevOps будет состоять из ряда направлений, в каждом из которых потребуется изучение теории и практики, следующей за ней. Не удастся обойтись чем‑то одним.

Читать далее
Всего голосов 16: ↑7 и ↓9+2
Комментарии8

Что делать, если баг попал в прод?

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров4.2K

Привет, Хабр! Если вы давно искали подборку полезных статей по Git и Gitflow — загляните в блог beeline cloud. Здесь я делюсь личным опытом, погружаюсь в задачи из практики и даю развернутые комментарии на конкретную тему. 

И да, меня по-прежнему зовут Николай Пискунов, я руководитель направления Big Data. Сегодня поговорим о том, что делать, если баг, несмотря на усилия тестировщиков, все же попал в прод.

Читать далее
Всего голосов 14: ↑7 и ↓7+4
Комментарии8

Ближайшие события

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань

Доступ к нескольким подам Kubernetes по протоколу TCP и единственному внешнему IP

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров1.3K

В облаке Амвера микросервисы и базы данных пользователей крутятся в кластере Kuberneres. Для доступа к приложениям обычно достаточно использовать nginx ngress controller который чудесно работает с HTTP(S) трафиком и позволяет получить доступ к сотням сервисов с использованием только одного внешнего IP адреса. Но, что если пользователь хочет получить доступ к развернутой СУБД не только изнутри кластера, но и извне? Конечно, мы могли бы выдавать каждой СУБД свой белый IP и создать ClusterIP, но это привело бы к дополнительным затратам на аренду адресов. В этой статье я бы хотел поделиться элегантным методом проксирования TCP трафика на основе SNI сообщений, который позволяет использовать один белый IP на сотни СУБД.

Читать далее
Всего голосов 5: ↑3 и ↓2+5
Комментарии5

Оркестраторы в российском DevOps в 2024: рост использования Managed Kubernetes и отечественных дистрибутивов

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров2.4K

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

Читать далее
Всего голосов 9: ↑9 и ↓0+15
Комментарии0

Нотификации в telegram о падении приложения, через графану

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров1.5K

Это не анонсированная третья часть. Первые две здесь:

1. Подготовка Django приложения для локальной разработки и деплоя

2. Django приложение в докере. Логирование и мониторинг (тоже в докере)

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

Читать далее
Всего голосов 7: ↑3 и ↓4+4
Комментарии5

Глубокие проверки работоспособности Kubernetes

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров2.7K

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

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

Читать далее
Всего голосов 20: ↑17 и ↓3+25
Комментарии2

Цифровая трансформация в России: роль DevOps в новой реальности

Время на прочтение12 мин
Количество просмотров15K

Привет Хабр! Меня зовут Евгений Калашников, я CPO «Инженерных инструментов» платформы «Сфера». И сегодня я хочу поговорить о том, как меняется ландшафт цифровой трансформации в России и какую роль в этом играет DevOps. Недавно мы с коллегами провели масштабное исследование российского рынка DevOps, и результаты получились очень любопытными. Мы убедились, что цифровая трансформация сейчас затрагивает буквально все аспекты бизнеса. Компании, которые не успевают адаптироваться к новым реалиям, рискуют безнадёжно отстать. И здесь на первый план выходит DevOps как ключевой фактор, обеспечивающий скорость и гибкость в разработке ПО.

Наше исследование охватило 817 IT-специалистов и руководителей из различных отраслей. Мы опросили представителей крупных компаний, таких как МТС, IBS, Яндекс, Лаборатория Касперского, а также привлекли экспертов из НИУ ВШЭ и других организаций. Интересно, как выглядит современный российский девопс? Заходите под кат.

Читать далее
Всего голосов 17: ↑11 и ↓6+16
Комментарии3

Пользуемся Docker, не выходя из Go

Уровень сложностиСредний
Время на прочтение12 мин
Количество просмотров5.7K

Привет, Хабр!

Зовут меня Егор, я программирую на Go и в этой статье хочу поделиться информацией про Docker и Golang.

Кто такой Докер? Как заявляет сама компания, Докер — № 1 программа по контейнерезации для разработчиков ПО. В этой статье я не буду объяснять, что это, зачем и почему именно он, для этого есть как офиц. документация, так и хорошие статьи на Хабре. Если кратко — то Докер — это инструмент, который позволяет запускать программы в некой песочнице(контейнере) с целевой ОС — как правило линукс. Самое главное преимущество Докера — это упаковывать все нужное для твоей программы(например: зависимости) в один модуль. И ресурсов эта вещь тратит намного меньше, чем та же виртуальная машина.

Зачем нужен Docker SDK? Самая важная причина — тестирование. Можно собирать метрики, делать редирект трафика, автоподъем контейнеров, анализировать логи в реальном времени, создавать образы и еще кучу всего, что упрощает тестирование. Я постараюсь охватить эти пункты в этой статье.

Читать далее
Всего голосов 9: ↑4 и ↓5+3
Комментарии11

Путь в GitOps или как мы перевели кластер Kubernetes под управление Argo CD

Время на прочтение10 мин
Количество просмотров6.6K

Всем привет! Если вы работаете с Kubernetes, то, скорее всего, используете kubectl, kustomize или Helm для развёртывания сервисов в кластере. Про последнюю утилиту я уже писал статью — можно посмотреть тут. Тогда я рассказал о своём опыте внедрения этого инструмента для собственных нагрузок и сравнил подходы kubectl apply и helm install.

Управление конфигурацией в Kubernetes может осуществляться с помощью различных инструментов. Помимо Helm, можно использовать просто YAML-манифесты или же kustomize. Для каждого из этих инструментов предусмотрена своя команда.

В данной статье мы рассмотрим подход GitOps для K8s-кластеров и применим такой инструмент, как Argo CD.

Читать далее
Всего голосов 13: ↑13 и ↓0+18
Комментарии8

Вклад авторов

Работа

DevOps инженер
42 вакансии