Обновить
120.9

Kubernetes *

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

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

Устройство Helm и его подводные камни

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

Typhon freight hauler concept, Anton Swanepoel

Меня зовут Дмитрий Сугробов, я разработчик в «Леруа Мерлен». В статье расскажу, зачем нужен Helm, как он упрощает работу с Kubernetes, что поменялось в третьей версии и как с его помощью обновлять приложения в продакшене без простоя.

Это конспект по мотивам выступления на конференции @Kubernetes Conference by Mail.ru Cloud Solutions — если не хотите читать, смотрите видео.

Прикручиваем ActiveDirectory авторизацию к Kubernetes c помощью Keycloak

Время на прочтение7 мин
Количество просмотров23K
Данная статья написана с целью расширить уже существующую, но рассказывает про особенности связки именно с Microsoft ActiveDirectory, а так же дополняет ее.

В этой статье я расскажу как установить и настроить:

  • Keycloak — это проект с открытым исходным кодом. Который обеспечивает единую точку входа для приложений. Работает с множеством протоколов, в том числе с LDAP и OpenID которые нас интересуют.
  • Keycloak gatekeeper — реверс прокси приложения, позволяющее интегрировать авторизаию через Keycloak.
  • Gangway — приложение которе генерирует конфиг для kubectl с помощью которого через OpenID можно авторизоваться и подключиться к Kubernetes API.
Читать дальше →

Одна история с оператором Redis в K8s и мини-обзор утилит для анализа данных этой БД

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


Что будет, если использовать всем известное in-memory-хранилище ключей и значений в качестве персистентной базы данных, не используя TTL? А если оно запущено с помощью надёжного, казалось бы, оператора в Kubernetes? А если в процессе увеличения реплик Redis мы внесём ещё одно маленькое и безобидное изменение?.. Отвечая на эти вопросы в данной статье, мы попутно расскажем, какие утилиты помогут найти пути к оптимизации размеров большой БД в Redis.

Проблемный кейс


Redis у нас используется внутри кластера Kubernetes в разных проектах. Для удобства управления и применения единых практик в рамках компании мы остановились на операторе от Spotahome. По нашему опыту, это наиболее стабильный вариант, хотя и у него есть свои проблемы, некоторые из которых будут затронуты далее в статье.
Читать дальше →

Приглашаем на DINS DevOps EVENING: разберем два примера инфраструктуры и поговорим, как облегчить поддержку

Время на прочтение2 мин
Количество просмотров1.4K
Встречаемся 26 февраля в нашем офисе на Старо-Петергофском, 19.

Кирилл Казарин из DINS расскажет, что такое инфраструктура для нас, как мы ей управляем, и как мы доставляем артефакты на 1000+ серверов в 50+ окружений. Александр Калошин из Last.Backend поделится опытом построения отказоустойчивой in-house инфраструктуры на контейнерах с использованием bare-metal и kubernetes.

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

Под катом — подробнее о докладах и спикерах, ссылка на регистрацию для участия во встрече, информация о трансляции, материалы с прошлой встречи.

image
Читать дальше →

Учимся разворачивать микросервисы. Часть 2. Kubernetes

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


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


Это вторая часть из серии статей "Учимся разворачивать микросервисы". В предыдущей части мы написали 2 простеньких микросервиса — бекенд и шлюз, и разобрались с тем, как их упаковать в docker-образы. В этой же статье мы будем организовывать оркестрацию наших docker-контейнеров с помощью Kubernetes. Мы последовательно составим конфигурацию для запуска системы в Minikube, а затем адаптируем ее для деплоя в Google Kubernetes Engine.

Читать дальше →

Production-ready images for k8s

Время на прочтение6 мин
Количество просмотров4.2K
Эта история о том, как мы используем контейнеры в продуктовой среде, в особенности под Kubernetes. Статья посвящена сбору метрик и логов с контейнеров, а также билду образов.

image
Читать дальше →

Рабочие узлы Kubernetes: много маленьких или несколько больших?

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

При создании кластера Kubernetes могут возникать вопросы: сколько настроить рабочих узлов и какого типа? Что лучше для кластера on-premise: купить несколько мощных серверов или задействовать десяток старых машин в вашем дата-центре? А в облаке лучше взять восемь одноядерных или два четырехъядерных инстанса?

Ответы на эти вопросы — в статье Даниэля Вайбеля, инженера-программиста и преподавателя обучающего проекта Learnk8s в переводе команды Kubernetes aaS от Mail.ru.
Читать дальше →

Loki — сбор логов, используя подход Prometheus

Время на прочтение7 мин
Количество просмотров65K
Салют, хабровчане! В преддверии старта нового набора на курс «DevOps практики и инструменты» подготовили для вас перевод интересного материала.





Эта статья — краткое введение в Loki. Проект Loki поддерживается Grafana и направлен на централизованный сбор логов (с серверов или контейнеров).

Основным источником вдохновения для Loki был Prometheus с идеей применения его подходов к управлению логами:

  • использование меток (labels) для хранения данных
  • потребление малого количества ресурсов

Мы еще вернемся к принципам работы Prometheus и приведем несколько примеров его использования в контексте Kubernetes.

Несколько слов о Prometheus


Чтобы полностью понять, как работает Loki, важно сделать шаг назад и немного вспомнить Prometheus.

Одной из отличительных характеристик Prometheus является извлечение метрик из точек сбора (через экспортеры) и сохранение их в TSDB (Time Series Data Base, база данных временных рядов) с добавлением метаданных в виде меток.
Читать дальше →

Наш опыт разработки CSI-драйвера в Kubernetes для Яндекс.Облака

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


Рады объявить, что компания «Флант» пополняет свой вклад в Open Source-инструменты для Kubernetes, выпустив альфа-версию драйвера CSI (Container Storage Interface) для Яндекс.Облака.

Но перед тем, как перейти к деталям реализации, ответим на вопрос, зачем это вообще нужно, когда у Яндекса уже есть услуга Managed Service for Kubernetes.
Читать дальше →

Развертывание в Docker и Kubernetes образа StatsD+Grafana

Время на прочтение7 мин
Количество просмотров6.9K
В начале моего изучения Docker и Kubernetes мне нехватало простого и понятного примера, с которым можно было бы «поиграться», изучая особенности этой среды. Этой статьей хотелось бы закрыть этот пробел. Здесь я расскажу об интеграции .NET Core приложения с Telegraf и Grafana, о том, как шлются метрики и как деплоить в Docker и Kubernetes. Примеры в статье расчитаны на тех, кто начинает изучать данную область, но базовыми понятиями желательно обладать, чтобы полностью понять статью. В ней описано, как развернуть контейнер, в котором есть StatsD, InfluxDB и Grafana, а также, как отправлять метрики различных типов из приложения.
Читать дальше →

Материалы с митапа по Кафке: СDC коннекторы, проблемы роста, Kubernetes

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

Привет! Недавно в нашем офисе прошёл митап по Кафке. Очные места на него разлетелись со скоростью света. Как сказал один из спикеров: «Кафка секси».


С коллегами из Booking.com, Confluent, и Авито мы обсуждали подчас нелёкую интеграцию и поддержку Кафки, последствия её скрещивания с Kubernetes, а также известные и собственноручно написанные коннекторы для PostgreSQL


Мы смонтировали видео докладов, собрали со спикеров презентации и отобрали красивые фотографии с митапа. Если вам интересно посмотреть и послушать — заходите под кат.


Тысячи забытых TODO в коде Kubernetes

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

Фото Yancy Min на Unsplash

Kubernetes — большой проект. Не только потому, что очень востребован, но и с точки зрения исходного кода. На момент написания этой статьи насчитывалось более 86 000 коммитов, более 2000 участников, более 2000 открытых тикетов, более 1000 открытых пул-реквестов и 62 800 звёзд в репозитории на GitHub.

Утилита scc насчитала более 4,3 млн строк кода на Go (всего более 5,2 млн строк), из них более 3 млн строк реального кода и более 700 тыс. строк с комментариями, в общей сложности более 16 000 файлов, включая директорию vendor/.
Читать дальше →

Calico для сети в Kubernetes: знакомство и немного из опыта

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


Цель статьи — познакомить читателя с основами сетевого взаимодействия и управлением сетевыми политиками в Kubernetes, а также со сторонним плагином Calico, расширяющим стандартные возможности. Попутно будут продемонстрированы удобство конфигурации и некоторые фичи на реальных примерах из опыта нашей эксплуатации.
Читать дальше →

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

Охота за ошибками в Kubernetes официально открыта

Время на прочтение4 мин
Количество просмотров4K
Прим. перев.: Две недели назад стартовала программа Bug Bounty у Kubernetes — долгожданный и важный шаг для столь масштабного Open Source-проекта. В рамках этой инициативы любой энтузиаст, обнаруживший проблему в безопасности K8s, может получить награду в объёме от 100 USD (минимальная критичность) до 10 000 USD (наивысшая критичность для компонента из ядра Kubernetes). Анонс программы был сделан сотрудниками Google, занимающимися безопасностью K8s — его перевод представлен ниже.



14 января Комитет по безопасности продукта Kubernetes (Kubernetes Product Security Committee) запустил новую программу bug bounty, в рамках которой исследователи будут получать вознаграждение за обнаруженные уязвимости в Kubernetes. Спонсором программы выступает CNCF.
Читать дальше →

Три уровня автомасштабирования в Kubernetes: как их эффективно использовать

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

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

Статью Kubernetes Autoscaling 101: Cluster Autoscaler, Horizontal Autoscaler, and Vertical Pod Autoscaler перевела команда, которая реализовала автомасштабирование в Kubernetes aaS от Mail.ru.
Читать дальше →

Визуальное руководство по диагностике неисправностей в Kubernetes

Время на прочтение11 мин
Количество просмотров53K
Прим. перев.: Эта статья входит в состав опубликованных в свободном доступе материалов проекта learnk8s, обучающего работе с Kubernetes компании и индивидуальных администраторов. В ней Daniele Polencic, руководитель проекта, делится наглядной инструкцией о том, какие шаги стоит предпринимать в случае возникновения проблем общего характера у приложений, запущенных в кластере K8s.



TL;DR: вот схема, которая поможет вам отладить deployment в Kubernetes:
Читать дальше →

Как я свой хобби-проект переносил на k8s

Время на прочтение5 мин
Количество просмотров8.7K
image

В этой статье я хотел бы рассказать о своем хобби-проекте поиска и классификации объявлений о сдаче квартир из социальной сети ВКонтакте и опыте его переезда на k8s.

Postgres-вторник №5: «PostgreSQL и Kubernetes. CI/CD. Автоматизация тестирования»

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


В конце минувшего года состоялся очередной прямой эфир российского PostgreSQL-сообщества #RuPostgres, в рамках которого его сооснователь Николай Самохвалов поговорил с техническим директором «Фланта» Дмитрием Столяровым про эту СУБД в контексте Kubernetes.

Мы публикуем стенограмму основной части этой дискуссии, а на YouTube-канале сообщества опубликована полная видеозапись:

Цели уровня обслуживания — опыт Google (перевод главы книги Google SRE)

Время на прочтение14 мин
Количество просмотров6K
image

SRE (Site Reliability Engineering) — подход к обеспечению доступности веб-проектов. Считается фреймворком для DevOps и говорит как добиться успеха в применение DevOps-практик. В этой статье перевод Главы 4 Service Level Objectives книги Site Reliability Engineering от Google. Этот перевод я готовил самостоятельно и полагался на собственный опыт понимания процессов мониторинга. В телеграм-канале monitorim_it и прошлом посте на Хабре я публиковал также перевод 6 главы этой же книги о мониторинге распределённых систем.

Перевод по катом. Приятного чтения!
Читать дальше →

Мониторинг распределённых систем — опыт Google (перевод главы книги Google SRE)

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


SRE (Site Reliability Engineering) — подход к обеспечению доступности веб-проектов. Считается фреймворком для DevOps и говорит как добиться успеха в применение DevOps-практик. В этой статье перевод Главы 6 Monitoring Distributed Systems книги Site Reliability Engineering от Google. Этот перевод я готовил самостоятельно и полагался на собственный опыт понимания процессов мониторинга. В телеграм-канале @monitorim_it и блоге на Медиуме я публиковал также ссылку на перевод 4 главы этой же книги о целях уровня обслуживания.

Перевод по катом. Приятного чтения!
Читать дальше →

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