Обновить
250.31

DevOps *

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

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

Перенос кластера kubernetes на другие ip адреса

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

Предположим, вам необходимо мигрировать ваш кластер k8s в другой vlan или просто сменить ip адреса. Насколько это необходимо каждый решает сам. Будем считать, что перенос нагрузки ямлами на другой кластер затруднён или у кластера специфические настройки.

В качестве начальных условий: кластер on prem с root доступом на узлы, установлен через kubeadm или kubespray, в качестве cni calico. В нашем случае под ногами ubuntu в качестве системы. Если у вас кластер установлен the hard way , то статья вам не нужна, вы сами всё умеете.

Читать далее

Новости

Борьба с лавиной информации

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

В какой-то момент своей жизни, я стал понимать, что мне все сложнее справляться с информационным давлением. О чем речь? Что за давление? Может вы заметили, что сейчас, как говорится, «из каждого утюга» льется большой поток информации, которую стало не просто фильтровать. И далее по списку: социальные сети, мессенджеры, email почта, банковские приложения, реклама, интернет журналы, телевизор, ютуб, короткие ролики (да, это стоит выделить отдельно), звонки с телефона, СМС, музыка, фильмы, подкасты, радио, куча подписок (и это отдельно).  Если вы трейдер или как то связаны с рынком, то еще и это. Может еще что упустил , но суть в общем в том, что очень много источников информации, которые требуют нашего внимания. Что же делать?

Читать далее

Как выжать максимум метрик из GitLab CI/CD

Время на прочтение6 мин
Охват и читатели4.5K

Привет, Хабр. Меня зовут Никита Лепёхин. Я DevOps-инженер в СберЗдоровье — MedTech-компании №1 в России.

Многие компании пользуются GitLab в качестве инструмента CI/CD. Но при использовании бесплатной Community-версии он не даёт достаточную наблюдаемость всех запускаемых пайплайнов. Поэтому актуальной задачей становится поиск инструмента для анализа GitLab CI/CD. Наш выбор для её решения — Apache DevLake.

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

Читать далее

Боремся с энтропией в рядах инфраструктуры через регулярные обновления

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

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

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

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

Читать далее

Написал свой ngrok за 10 часов (Antigravity + Claude Code)

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

Привет, Хабр. Расскажу, как за 10 часов написал self-hosted аналог ngrok на Go.

Проблема

Нужно протестировать вебхук от Т-Банк/Telegram/любого внешнего сервиса. Запускаешь ngrok — не работает. Россия заблокирована. Каждый раз VPN, а с ним становится недоступна часть внутренних ресурсов. В какой-то момент решил написать своё.

Читать далее

Облако не должно быть загадкой: собираем прод за минуты, а не за ночь

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

Разворачивать приложения в облаке должно быть просто. Но на деле - всё наоборот. Вместо “вжух-вжух и в продакшн” получаем вечер с документацией, пляски с параметрами Terraform и постоянную проверку, правильно ли связались ресурсы.

В статье разберемся, как от использования UI консоли приходят к Terraform, и как OpenIDE позволяет вернуть легкость UI консоли при работе с Terraform.

Читать далее

Как построить идеальную «песочницу» для ML-моделей

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

Привет, Хабр! Я Даниил Салман, техлид по контейнеризации. Эта статья написана по мотивам моего доклада для конференции DevOops. Разберёмся, как сделать такую ML-«песочницу», где Data Scientist пишет код, а всё остальное (установка драйверов, выделение ресурсов, деплой и тренировка модели, сбор метрик) уже настроено на бэкенде. Написали максимально просто и доступно, чтобы понять смог даже человек с минимальным погружением в тему. Идеи из этой статьи можно применять в любой инфраструктуре — важно лишь понимать основы: как работает k8s-кластер, Docker и python-фреймворки. Итак, поехали!

Читать далее

Настройка .NET Aspire с AWS и LocalStack

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

Разработка сервисов с интеграцией в AWS быстро упирается в компромиссы: либо работать с реальным облаком и платить за каждый эксперимент, либо замокать инфраструктуру и надеяться, что в продакшене всё «взлетит». В статье показано, как с помощью .NET Aspire и LocalStack выстроить полноценное локальное AWS-окружение — с S3, CDK и реальной оркестрацией — так, чтобы один и тот же код без условностей работал и локально, и в проде.

Читать далее

Как мы случайно сделали стартап, пока учили ИИ работать с реальной инфраструктурой

Время на прочтение5 мин
Охват и читатели11K

Когда мы впервые увидели AI-чаты, это выглядело впечатляюще. Они писали код, помогали с документацией, объясняли архитектурные решения.

Это было хорошо. Но довольно быстро стало понятно главное:

Читать далее

GitLab: Основы написания Pipeline 1/3

Уровень сложностиПростой
Время на прочтение15 мин
Охват и читатели11K

Всем привет!

Так вышло, что в месте, где я преподаю и занимаюсь менторством стажёров, начался переход с GitHub-репозиториев на GitLab, развёрнутый на собственных серверах. Пока что перенесли не все проекты, но даже этого оказалось достаточно, чтобы у стажёров возникло немало вопросов — особенно в части настройки CI/CD-процессов.

Формально CI/CD в GitHub и GitLab решают одну и ту же задачу, но на практике подходы, терминология и детали конфигурации отличаются. Из-за этого попытки «сделать как в GitHub Actions» часто приводят к путанице и ошибкам.

У меня уже есть статья про CI/CD и workflow, но она целиком посвящена GitHub Actions. Чтобы сократить количество вопросов, разночтений и бессонных ночей у стажёров, я решил написать отдельную статью про CI/CD именно в GitLab — с учётом его особенностей и типичных подводных камней.

Если вам интересны подобные материалы, подписывайтесь на Telegram-канал «Код на салфетке». Там я делюсь гайдами для новичков, полезными инструментами и практическими примерами из реальных проектов. А прямо сейчас у нас там ещё и проходит новогодний розыгрыш.

Читать далее

За пределами юнит-тестов: как обрести уверенность в сложных системах

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.3K

Юнит-тесты дают чувство контроля — ровно до первого странного падения «только у одного клиента», под нагрузкой, на другой версии ядра, с неожиданными сетевыми ретраями и капризами аллокатора. В Quasar, распределённой системе хранения данных в реальном времени, эту реальность приняли как исходную: предугадать всё невозможно, поэтому уверенность строится не на одном виде тестов и не на «серебряных пулях», а на процессе, который ловит ошибки как можно раньше и системно закрывает зоны риска.

Читать далее

Инфраструктура не знает, что сегодня праздник

Время на прочтение4 мин
Охват и читатели4.2K

Согласитесь, что встретить Новый год рядом с семьёй и друзьями - намного приятнее, чем сидеть за ноутбуком в 02:40 и с квадратными глазами разбираться, почему “что-то там легло”, а доступ к нужным секретам остался только у одного человека… который как раз в этот момент режет оливье и не слышит телефон.

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

Читать далее

Как работают CSI-драйверы в Kubernetes: принципы, архитектура и жизненный цикл томов (подробный гайд)

Уровень сложностиСредний
Время на прочтение38 мин
Охват и читатели4.9K

В статье подробно разбираем, как устроен CSI (Container Storage Interface), как проходит жизненный цикл тома от PVC до удаления и что на самом деле делают sidecar-контейнеры и драйверы.

Читать далее

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

Xiaomi Mimo V2: Как бесплатная модель от вендора смартфонов обошла Qwen 235B в генерации образовательного контента

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

Мы ожидали увидеть очередную «легкую» модель для телефонов, а нашли hidden gem, который генерирует учебные материалы лучше, чем модели в 100 раз больше. Подробный разбор с JSON‑ами, промптами и сравнением.

Читать далее

Eventually-consistent СУБД — всё?

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели19K

В начале 2010-х в профессиональном сообществе разработчиков и архитекторов распределенных систем широко обсуждалась идея, что мир баз данных вступает в новую эру. На фоне успехов крупных интернет-сервисов термин BASE начал использоваться как противопоставление классическому ACID. Хайп вокруг NoSQL, CAP-теоремы и масштабируемых систем породил лозунги вроде «SQL умер», «ACID — для банков, а мы делаем веб», «eventual consistency — это нормально».

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

Что же произошло? Была ли «битва ACID и BASE» реальным технологическим разломом или лишь отражала ограничения своего времени? 

В этой статье мы разберём, как возникли ACID и BASE, почему BASE быстро стал популярен и что на самом деле означает тезис «победил ACID» в 2020-е годы.

Читать далее

Как убедить бизнес чинить, а не только строить: прозрачная приоритизация инцидентов и проблем

Уровень сложностиПростой
Время на прочтение12 мин
Охват и читатели5.7K

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

Читать далее

Как мы учили ИИ тушить инциденты вместо нас  (что из этого вышло)

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

Мы доверили ИИ первым реагировать на критические инциденты в продакшене. Это сократило время реакции, но одна его галлюцинация едва не отправила весь кластер в ребут...

История о том, как мы получили мощного, но странного стажёра, с которым нельзя оставаться наедине.

Читать далее

Вы уже занимаетесь SRE. Просто не знаете об этом

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

Меня зовут Дима Синявский, я SRE-инженер в Ви.Tech — это IT-дочка ВсеИнструменты.ру. В этот раз я решил помочь вам посмотреть на свою работу в отношении надежности. Особенно полезно будет тем, у кого официально нет SR-инженеров в штате.

"У нас нет SRE" – не значит "у нас нет надёжности". Даже без SRE-инженера ваша команда уже что-то делает для надёжности.

Покажу, как увидеть уже существующие у вас практики и понять, куда двигаться дальше.

Идем смотреть и понимать...

Балансировка DNS-трафика и активные health-check'и апстримов — как и почему мы начали использовать DNSdist

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

Коллеги, всем привет!

Долгое время в нашей внутренней сети для обработки DNS-трафика мы использовали только BIND, и нам с ним было хорошо. Но в какой-то момент его возможностей перестало хватать. В статье расскажу, что именно с BIND не так и почему теперь весь DNS-трафик у нас проходит через DNSdist. И что это вообще такое...

Читать далее

Patroni и логическая реплика в PostgreSQL: как не потерять данные при failover’е

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

Если вы используете nofailover: true (а многие так и делают), Patroni не синхронизирует слоты логической репликации — и при переходе на реплику часть данных может исчезнуть навсегда. Рассказываем, почему и как фиксить.

Читать далее
1
23 ...

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