Обновить
120.9

Kubernetes *

ПО для работы с контейнерными приложениями

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

Обходим ограничение доступа Github к базе уязвимостей Trivy. Быстрый фикс вам в помощь

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

Совсем недавно разработчики, применяющие сканер образов Trivy, столкнулись с ошибкой TOOMANYREQUESTS. Она произошла из-за достижения максимального количества пользователей инструмента и предельной скорости по загрузкам из Container Registry (CR) ghcr.io.

Меня зовут Алиса Кириченко, я занимаюсь разработкой контейнерной платформы «Штурвал». Мы вовсю используем Trivy, но совсем не хотим зависеть от доступности сторонних сервисов. Иначе заказчики не поймут. Поэтому базы у нас свои, и обновляются они каждую ночь.

Если лень дальше читать, то вот, берите:

Trivy DB: public.shturval.tech/trivy-db

Trivy Java DB: public.shturval.tech/trivy-java-db

Детали — под катом.

Читать далее

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

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

Привет, Хабр! Расскажу про единый деплой для всех приложений в кластер K8s и поделюсь, как нам удаётся жить без OPA rules и не допускать дичи некорректных манифестов в кластере.

Читать далее

Envoy Proxy — один за всех Load Balancer

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

В современной инфраструктуре нет недостатка в решениях для балансировки и межсервисных коммуникаций. Почти все используют nginx, HAProxy, есть адепты Treafik, а публичные облака предлагают Load Balancer как сервис. Но что делать, если инструменты не справляются с ростом масштабов и необходимо автоматизируемое cloud-native-решение?

Я Дмитрий Самохвалов, архитектор в K2 Cloud. В этой статье поделюсь, как мы из-за ограничений старых систем для динамической конфигурации перешли с работающих решений nginx и HAProxy на модный Envoy. Расскажу, почему сочли это решение подходящим, какие возможности есть у Envoy, каким был опыт внедрения и оставлю рекомендации для эффективного перехода. Будет полезно разработчикам cloud-native-приложений и инфраструктуры, а также всем, кто хочет создать единое платформенное решение для взаимодействия сервисов и инфраструктуры.

Читать далее

Корректное завершение работы подов в Kubernetes

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

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

Читать далее

От хаоса к инфраструктуре

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

Всем привет. Сегодня я хочу рассказать о том, как мы прошли наш путь от хаоса к нашим Paas внутри нашего внутреннего облака. Меня зовут Михаил Марченко, я руководитель центра компетенций, сопровождения и построения процессов разработки. Это наше подразделение, где мы сосредотачиваем экспертизу DevOps. В девопсе я уже семь лет, из них последние три года в билайне. 

В большой бренд билайна входят достаточно большое число юрлиц, такие как Вымпелком, Датафорт, который реализует публичное облако билайна, и другие. И мы поняли, что IT у нас абсолютно распределённая и существует во всех юрлицах, во всех подразделениях и во всех командах, которые внутри этих юридических лиц. И внутри Вымпелкома есть отдельное подразделение, которое  возглавляю я, в котором сосредоточена экспертиза DevOps, мы его называем "DevOps Governance".

Делим мы его на две части. 

Читать далее

Масштабируем приложение в Kubernetes от метрики в Yandex Monitoring (или от любого http-эндпоинта)

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

Всем привет! Меня зовут Дмитрий Мамонтов, я DevOps-инженер с опытом работы более пяти лет, а также наставник на курсе «DevOps для эксплуатации и разработки» и один из авторов курса «Эксплуатация и разработка в Kubernetes» в Яндекс Практикуме.

Представим, что у нас есть приложение, которое шлёт свои метрики в Yandex Monitoring, и стоит задача: масштабировать это приложение с помощью HPA в кластере Kubernetes в зависимости от метрики.

Есть два популярных варианта решения этой задачи:

Читать далее

Как сделать простые метрики для оценки полосы пропускания сети?

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

Если вам важна высокая стабильность и скорость сети на ваших серверах, тогда вам надо отвественнее подойти к выбору провайдера. В данной статье я показываю, как добавить метрики и дешборды в Grafana для оценки скорости сети с помощью speedtest-exporter.

Читать далее

Автоматизация управления ресурсами окружений в Dev Platform

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

При работе с облачной инфраструктурой важна не только гибкость использования ресурсов, но и возможность автоматизировать основные рутинные процессы. При разработке своих продуктов мы в команде VK Tech стараемся следовать именно этим принципам. В нашем продукте Dev Platform в рамках одной из возможностей реализовано автоматическое управление инфраструктурными ресурсами, необходимыми для разработки программного обеспечения — например, виртуальными машинами, Kubernetes-кластерами и прочими.

Меня зовут Виктор Горячкин. Я старший разработчик Dev Platform в VK Tech. В этой статье я расскажу о разработанном нашей командой решении для автоматизации развертывания инфраструктуры.

Читать далее

Как небольшой «тюнинг» Talos Linux увеличил производительность NVMe SSD в 2.5 раза

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

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

Мы рассмотрим несколько примитивных настроек Linux, которые могут повысить производительность NVMe SSD дисков в разы. Под катом много интересных подробностей, так что скучно не будет.

Читать далее

Создание кастомного Kubernetes Scheduler для StatefulSet

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

В этой статье мы рассмотрим процесс создания кастомного scheduler'а для Kubernetes, ориентируясь на Kubernetes Scheduling Framework.

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

В одном из наших проектов, где мы использовали оператор Strimzi для развёртывания кластеров Kafka, заказчик выдвинул специфические требования по размещению данных, резервному копированию и восстановлению.
Одним из ключевых пунктов стал вопрос строгой привязки экземпляров приложения к вычислительным узлам.
Для этого нам пришлось создать кастомный scheduler, учитывая нюансы инфраструктуры, особенности приложения и требуемые правила размещения.

Schedule Reading

Кластеры и мир: хроника высокодоступного Pub/Sub в Redis

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

В статье рассматриваются основные принципы и особенности использования Redis в режиме Pub/Sub для масштабируемых и высоконагруженных приложений. Описаны два подхода к обеспечению высокой доступности — Redis Sentinel и Redis Cluster, их преимущества, ограничения и примеры настройки. Приведены примеры использования Pub/Sub в реальных системах, а также практические конфигурации и код для настройки отказоустойчивого кластера Redis. Статья предназначена для разработчиков, которые ищут решения для создания надежных систем обмена сообщениями с высокой производительностью и отказоустойчивостью.

Читать далее

Восстанавливаем работу MySQL. Решение задачи

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

Привет! Я Саша Хренников, руководитель DevOps-юнита в KTS.

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

В этой статье я разберу задачу и покажу, как её можно решить двумя способами.

Читать далее

Построение надежных систем: решение сложностей распределенных микросервисов

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

Привет, Хабр! Мы в команде Nova Container Platform продолжаем серию переводов полезных материалов о микросервисной архитектуре.

Читать далее

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

Mount — ещё один способ уменьшения размера Docker-образа

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

Делюсь лайфхаком по уменьшению размеров Docker-образов. Как-то нам попалась на поддержку и развитие CRM-система, написанная на Ruby...

Обновили Ruby-пакеты и под них код, написали Dockerfile. Первая сборка была удручающей: образ в 2Гб. Это нормальный размер, если ты собираешь образ с Torch и другой ML-штуковиной, но CRM - нет. В результате дальнейших действий, удалось сократить размер образа до 200Мб.

Cделали следующее, чтобы сократить размер

Техническая история Kubernetes: секреты создателя

Уровень сложностиСложный
Время на прочтение27 мин
Количество просмотров8.9K

Однажды Брайан Грант, первый lead architect Kubernetes, написал в Twitter серию тредов о технической истории проекта. Он рассказал о появлении разных фичей в K8s и логике, которая стояла за принятием отдельных решений. В этом году в честь очередного юбилея оркестратора Брайан собрал все твиты в одну статью. Под катом — её перевод, из которого вы узнаете, как появились контроллеры рабочих нагрузок, декларативная модель ресурсов, descheduler и многое другое.

Читать далее

Home Lab мечты в Kubernetes

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

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

В этой статье я расскажу про свой путь в построении такой лаборатории с помощью Kubernetes и облачных технологий. Здесь вас ждут полностью воспроизводимые k8s‑кластеры, бекапы с авто‑восстановлением, хитрые VPN‑ретрансляторы, хорошо защищенные приватные и публичные приложения, а также много‑много автоматизации и красивых инженерных решений.

Читать далее

Облегчаем боль от перехода с Openshift на ванильный kubernetes. Настройка openshift-console с поддержкой SSO

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

Мы в нашей организации, как и многие, переходим на отечественные продукты, коснулось это и среды контейнеризации. За годы эксплуатации мы нежно полюбили OKD (Openshift) и очень расстраивались в ванильном kubernetes, подмечая отсутствие ставших уже привычными вещей. Однако OKD состоит из свободно распространяемых компонентов, а значит что-то да можно переиспользовать, например, web-консоль. Ее то мы и решили перенести в насколько это возможной полноте функционала. Существующие гайды обычно покрывают лишь установку самой консоли, нам же хотелось использовать и SSO и дополнительные элементы консоли - каталог ссылок и объявления в заголовке.

Читать далее

Три распространенных ошибки с метриками Kubernetes в PromQL

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

Миллионы разработчиков пишут запросы PromQL и создают пользовательские дашборды Grafana для Kubernetes. И все используют одинаковые метрики из node-exporter, kubelet и kube-state-metrics. К сожалению, не все знают, как при работе с метриками обойти некоторые подводные камни.‍

Команда VK Cloud перевела статью, в которой автор разбирает ошибки в одном простом с виду запросе Prometheus для Kubernetes. Он должен возвращать сведения об использовании памяти пода:

Читать далее

DevOps Challenge: восстановите работу MySQL и выиграйте крутой мерч

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

Привет! Я Саша Хренников, руководитель DevOps-юнита в KTS.

Наша команда дважды готовила для вас испытания. Сначала вы оживляли сломанное приложение, затем пробовали запустить k8s v0.1, и гардеробы счастливых победителей уже украшает наш мерч. Сегодня мы предлагаем вам пополнить их ряды: вас ждет новый челлендж и новое соревнование за место в списке достойнейших.

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

Читать далее

Managed Kubernetes на выделенных серверах, процессоры Intel и другие апдейты: что нового в сентябре

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


Привет! С вами Саша, технический писатель. В этом дайджесте расскажу, что изменилось в наших продуктах и услугах в сентябре, поделюсь апдейтами в документации и напомню о Selectel Tech Day.
Читать дальше →

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