Открыть список
Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

10 лет on-call. Чему мы научились? (обзор и видео доклада)

Блог компании ФлантСистемное администрированиеIT-инфраструктураСерверное администрирование
Осенью прошлого года на конференции DevOops 2019 прозвучал доклад «10 лет on-call. Чему мы научились?». В нём рассказывается о том, почему мы отказались от внутреннего «акселератора» по развитию дежурных до DevOps-инженеров, как эволюционировала наша служба технической поддержки и система обработки инцидентов в целом.



Представляем видео с докладом (~63 минуты, гораздо информативнее статьи) и основную выжимку из него в текстовом виде. Поехали!
Читать дальше →
Всего голосов 41: ↑41 и ↓0 +41
Просмотры6K
Комментарии 12

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

Блог компании ФлантOpen sourceDevOpsОблачные сервисыKubernetes


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

Но перед тем, как перейти к деталям реализации, ответим на вопрос, зачем это вообще нужно, когда у Яндекса уже есть услуга Managed Service for Kubernetes.
Читать дальше →
Всего голосов 44: ↑44 и ↓0 +44
Просмотры4.3K
Комментарии 1

Представляем Kubernetes CCM (Cloud Controller Manager) для Яндекс.Облака

Блог компании ФлантOpen sourceDevOpsОблачные сервисыKubernetes


В продолжение к недавнему релизу CSI-драйвера для Яндекс.Облака мы публикуем ещё один Open Source-проект для этого облака — Cloud Controller Manager. CCM необходим не только для кластера в целом, но и собственно CSI-драйвера. Подробности о его предназначении и некоторые особенности реализации — под катом.
Читать дальше →
Всего голосов 37: ↑37 и ↓0 +37
Просмотры3K
Комментарии 2

Приключения Чиполлино: карантинный IT-квест от «Фланта»

Блог компании ФлантЗанимательные задачкиЛогические игры
Привет, Хабр!



Вы же помните Чиполлино? Да-да, того самого парня-луковицу из детской сказки. Так вот: он оказался в нашем мире в самый разгар пандемии COVID-19, наивно* полагая, что его защищают природные фитонциды… Путь героя домой, в свою луковую страну, оказался непрост. Его ждёт множество интересных загадок и головоломок, с которыми, мы уверены, Чиполлино с радостью помогут хаброжители, находящиеся на карантине.
Читать дальше →
Всего голосов 34: ↑31 и ↓3 +28
Просмотры4K
Комментарии 12

Loghouse 0.3 — долгожданное обновление нашей системы работы с логами в Kubernetes

Блог компании ФлантOpen sourceСистемное администрированиеDevOpsKubernetes
У компании «Флант» есть ряд Open Source-разработок, преимущественно для Kubernetes, и loghouse — одна из самых популярных. Это наш инструмент для централизованного логирования в K8s, который был представлен более 2 лет назад.



Как мы упоминали в недавней статье про логи, он требовал доработки, и актуальность её со временем только росла. Сегодня мы рады представить новую версию loghouse — v0.3.0. Подробности о ней — под катом.
Читать дальше →
Всего голосов 50: ↑49 и ↓1 +48
Просмотры5.4K
Комментарии 26

Релиз werf 1.1: улучшения в сборщике сегодня и планы на будущее

Блог компании ФлантOpen sourceСистемы сборкиDevOpsKubernetes


werf — наша GitOps CLI-утилита с открытым кодом для сборки и доставки приложений в Kubernetes. Как и обещали, выход версии v1.0 знаменовал начало добавления в werf новых возможностей и пересмотра привычных подходов. Теперь мы рады представить релиз v1.1, который является большим шагом в развитии и заделом на будущее сборщика werf. Версия доступна на данный момент в канале 1.1 ea.

Основа релиза — это новая архитектура хранилища стадий и оптимизация работы обоих сборщиков (для Stapel и Dockerfile). Новая архитектура хранилища открывает возможности к реализации распределенных сборок с нескольких хостов и параллельных сборок на одном хосте.
Читать дальше →
Всего голосов 41: ↑41 и ↓0 +41
Просмотры2.1K
Комментарии 1

Представляем k8s-image-availability-exporter для обнаружения пропавших образов в Kubernetes

Блог компании ФлантOpen sourceСистемное администрированиеDevOpsKubernetes


Рады представить свой новый Open Source-проект. На этот раз мы сделали совсем небольшую, казалось бы, утилиту, но столь полезную буквально для любой инсталляции Kubernetes. В чем же её суть? K8s-image-availability-exporter — это Prometheus exporter, позволяющий проактивно предупредить пользователя об образах, которые прописаны в объектах Kubernetes (например, поле image в Deployment), но отсутствуют в реестре контейнеров (Docker Registry и т.п.).
Читать дальше →
Всего голосов 47: ↑45 и ↓2 +43
Просмотры2.5K
Комментарии 10

Полная поддержка популярных реализаций Docker Registry в werf

Блог компании ФлантOpen sourceСистемы сборкиDevOps

image


Все популярные реализации реестров для образов контейнеров поддерживают Docker Registry HTTP API и позволяют использовать одни и те же инструменты для работы с ними. Тем не менее, часть реализаций имеет свои особенности и ограничения, а значит — если вам нужно их поддерживать в своем инструментарии для CI/CD, — с этой спецификой необходимо считаться. Так у нас и случилось в процессе работы над GitOps-утилитой werf, когда мы захотели улучшить в ней то, как обеспечивается жизненный цикл образов.


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

Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры2.8K
Комментарии 6

Организация распределенного CI/CD с помощью werf

Блог компании ФлантСистемы сборкиDevOpsKubernetes


werf — наша Open Source-утилита для сборки и деплоя приложений. Сегодня мы с радостью сообщаем, что werf научилась работать в распределенном режиме, начиная с версии v1.1.10 (доступна в каналах v1.1 alpha, beta, ea и stable). Для его подключения требуется минимум усилий.

Вот некоторые из примечательных особенностей нового режима:
Читать дальше →
Всего голосов 29: ↑29 и ↓0 +29
Просмотры4.3K
Комментарии 9

Простое создание Kubernetes-операторов с shell-operator: прогресс проекта за год

Блог компании ФлантOpen sourceСистемное администрированиеDevOpsKubernetes


Kubernetes-операторы — удобный механизм для расширения возможностей этой контейнерной платформы, по праву снискавший широкое признание в среде инженеров эксплуатации и им сочувствующих. О том, как они устроены и работают, мы рассказывали в уже далёком 2017-м. А в апреле прошлого года мы представили Open Source-проект shell-operator, который значительно упростил процесс создания Kubernetes-операторов.

Для этого был разработан фреймворк, позволяющий запускать произвольные скрипты (на Bash, Python и т.п.) в случае наступления определённых событий в K8s-кластере.

За минувшее время shell-operator обрёл свою пользовательскую базу (см. подробности в конце статьи) и, конечно, новые возможности. По случаю недавнего релиза v1.0.0-beta.11 (о бета-статусе см. дальше) мы решили рассказать о том, к чему проект пришёл за время своего существования, с момента анонса первой публичной версии.
Читать дальше →
Всего голосов 34: ↑34 и ↓0 +34
Просмотры3.6K
Комментарии 2

Практические истории из наших SRE-будней. Часть 2

Блог компании ФлантСистемное администрированиеСерверное администрированиеKubernetes


Утекло уже немало воды с момента публикации нашего последнего очерка об интересных случаях из практики обслуживания Kubernetes-кластеров и запускаемых в нём сервисов/приложений. Хотим представить очередную серию приключений инженеров «Фланта» в неспокойных водах большой (и не очень) веб-разработки.
Читать дальше →
Всего голосов 37: ↑37 и ↓0 +37
Просмотры6K
Комментарии 7

Go? Bash! Встречайте shell-operator (обзор и видео доклада с KubeCon EU'2020)

Блог компании ФлантСистемное администрированиеDevOpsKubernetes
В этом году главная европейская конференция по Kubernetes — KubeCon + CloudNativeCon Europe 2020 — была виртуальной. Впрочем, такая смена формата не помешала нам выступить с давно запланированным докладом «Go? Bash! Meet the Shell-operator», посвящённым нашему Open Source-проекту shell-operator.

В этой статье, написанной по мотивам выступления, представлен подход к упрощению процесса создания операторов для Kubernetes и показано, как с минимальными усилиями при помощи shell-operator'а можно сделать свой собственный.



Представляем видео с докладом (~23 минуты на английском, заметно информативнее статьи) и основную выжимку из него в текстовом виде. Поехали!
Читать дальше →
Всего голосов 40: ↑39 и ↓1 +38
Просмотры5.4K
Комментарии 4

Обзор операторов PostgreSQL для Kubernetes. Часть 1: наш выбор и опыт

Блог компании ФлантPostgreSQLАдминистрирование баз данныхDevOpsKubernetes


Всё чаще от клиентов поступают такие запросы: «Хотим как Amazon RDS, но дешевле»; «Хотим как RDS, но везде, в любой инфраструктуре». Чтобы реализовать подобное managed-решение на Kubernetes, мы посмотрели на текущее состояние наиболее популярных операторов для PostgreSQL (Stolon, операторы от Crunchy Data и Zalando) и сделали свой выбор.

Эта статья — полученный нами опыт и с теоретической точки зрения (обзор решений), и с практической стороны (что было выбрано и что из этого получилось). Но для начала давайте определимся, какие вообще требования предъявляются к потенциальной замене RDS…
Читать дальше →
Всего голосов 54: ↑53 и ↓1 +52
Просмотры11.7K
Комментарии 18

Проблема «умной» очистки образов контейнеров и её решение в werf

Блог компании ФлантOpen sourceСистемы сборкиDevOpsKubernetes


В статье рассмотрена проблематика очистки образов, которые накапливаются в реестрах контейнеров (Docker Registry и его аналогах) в реалиях современных CI/CD-пайплайнов для cloud native-приложений, доставляемых в Kubernetes. Приведены основные критерии актуальности образов и вытекающие из них сложности при автоматизации очистки, сохранения места и удовлетворения потребностям команд. Наконец, на примере конкретного Open Source-проекта мы расскажем, как эти сложности можно преодолеть.

Введение


Количество образов в реестре контейнеров может стремительно расти, занимая больше места в хранилище и, соответственно, значительно увеличивая его стоимость. Для контроля, ограничения либо поддержания приемлемого роста места, занимаемого в registry, принято:

  1. использовать фиксированное количество тегов для образов;
  2. каким-либо образом очищать образы.
Читать дальше →
Всего голосов 35: ↑35 и ↓0 +35
Просмотры3.1K
Комментарии 3

Обзор операторов PostgreSQL для Kubernetes. Часть 2: дополнения и итоговое сравнение

Блог компании ФлантPostgreSQLАдминистрирование баз данныхDevOpsKubernetes


На прошлую статью, где мы рассмотрели три оператора PostgreSQL для Kubernetes (Stolon, Crunchy Data и Zalando), поделились своим выбором и опытом эксплуатации, — поступила отличная обратная связь от сообщества*.

Продолжая эту тему, мы добавили в обзор два других решения, на которые нам указали в комментариях: StackGres и KubeDB, — и сделали сводную таблицу сравнения. Также за время эксплуатации оператора от Zalando у нас появились новые интересные кейсы — спешим поделиться и ими.
Читать дальше →
Всего голосов 34: ↑34 и ↓0 +34
Просмотры5.1K
Комментарии 5

Практические истории из наших SRE-будней. Часть 3

Блог компании ФлантСистемное администрирование*nixСерверное администрированиеАдминистрирование баз данных
Рады продолжить цикл статей с подборками из недавних вызовов, случившихся в нашей повседневной практике эксплуатации. Для этого мы описываем свои мысли и действия, которые привели к их успешному преодолению.



Новый выпуск посвящён опыту с неожиданно затянувшейся миграцией одного Linux-сервера, знакомству с Kubernetes-оператором для ClickHouse, способу ускорить восстановление данных в сломавшейся реплике PostgreSQL и последствиями обновления CockroachDB. Если вы тоже думаете, что это может быть полезно или хотя бы просто интересно, добро пожаловать под кат!
Читать дальше →
Всего голосов 43: ↑43 и ↓0 +43
Просмотры3.9K
Комментарии 0

elasticsearch-extractor — утилита для извлечения индексов из снапшотов Elasticsearch

Блог компании ФлантOpen sourceСистемное администрирование
Рады представить наш новый Open Source-проект — elasticsearch-extractor. Это простой веб-интерфейс, решающий единственную задачу: извлечение заданного индекса из снапшота Elasticsearch. Почему такой проект вообще появился?

Зачем


Представьте, что у вас есть большое количество однотипных инсталляций Elasticsearch в Kubernetes, где хранятся и анализируются многочисленные логи от приложений и инфраструктуры. Схема довольно обычная:
Читать дальше →
Всего голосов 50: ↑50 и ↓0 +50
Просмотры3.1K
Комментарии 0

Прогресс shell-operator и addon-operator: хуки как admission webhooks, Helm 3, OpenAPI, хуки на Go и многое другое

Блог компании ФлантOpen sourceСистемное администрированиеDevOpsKubernetes

Shell-operator и addon-operator — Open Source-проекты компании «Флант» для администраторов Kubernetes, представленные в апреле 2019 года. Первый призван упростить создание K8s-операторов: для этого с ним достаточно писать простые скрипты (на Bash, Python и т.п.) или любые бинарники, которые будут вызываться в случае наступления определённых событий в Kubernetes API. Второй (addon-operator) — его «старший брат», цель которого — упростить установку Helm-чартов в кластер, используя для их настройки хуки shell-operator’а.

В последний раз мы рассказывали о возможностях shell-operator по состоянию на релиз v1.0.0-beta.11 (летом прошлого года), если не считать последовавшего доклада на KubeCon EU’2020, который знакомил с проектом тех, кто о нём ещё не знает. (К слову, этот доклад мы по-прежнему рекомендуем всем желающим разобраться, как shell-operator облегчает жизнь при создании операторов, и увидеть наглядные примеры его применения.)

За минувшее время и shell-operator, и addon-operator получили множество интересных новшеств, которым и посвящена эта статья.

Читать далее
Всего голосов 31: ↑31 и ↓0 +31
Просмотры1.7K
Комментарии 3

Представляем ovpn-admin — веб-интерфейс для управления пользователями OpenVPN

Блог компании ФлантOpen sourceСистемное администрированиеСетевые технологии

Обслуживая большое количество проектов, мы пришли к необходимости простого управления OpenVPN (сертификатами и маршрутами для пользователей), подразумевая под этим веб-интерфейс вместо того, чтобы ходить по серверам/контейнерам и выполнять в них вручную команды. Поскольку существующие для этого решения (вроде Pritunl и OpenVPN AS) — коммерческие, несколько лет назад мы создали (и используем по сей день) свой интерфейс. Рассказываем про Open Source-проект ovpn-admin!

Читать далее
Всего голосов 66: ↑66 и ↓0 +66
Просмотры14.7K
Комментарии 40

Как мы обновляли Kubernetes 1.16 до 1.19… с удовольствием

Блог компании ФлантСистемное администрированиеDevOpsKubernetes

На начало декабря 2020 у нас во «Фланте» было около 150 кластеров на Kubernetes 1.16. Это кластеры с разной степенью загруженности: как находящиеся под высоким трафиком production-кластеры, так и использующиеся для разработки и демонстрации новых возможностей. Кластеры работают поверх различной инфраструктуры, начиная с облачных провайдеров, таких как AWS, Azure, GCP, Яндекс.Облако, различных инсталляций OpenStack и vSphere, и заканчивая железками.

Все эти кластеры находятся под управлением Deckhouse, который является нашей внутренней разработкой и позволяет не только иметь один инструмент для создания кластеров, но и общий интерфейс для управления всеми компонентами кластера на всех поддерживаемых типах инфраструктуры. Для этого Deckhouse состоит из различных подсистем. Например, есть подсистема candi (cluster and infrastructure), которая наиболее интересна в рамках данной статьи, поскольку отвечает за управление control-plane Kubernetes и настройку узлов, предоставляет готовый к работе, актуальный кластер.

Итак, почему мы вообще застряли на версии 1.16, когда уже достаточно давно вышли 1.17, 1.18 и даже выпустили патч версии для 1.19?..

Читать далее
Всего голосов 51: ↑51 и ↓0 +51
Просмотры5.2K
Комментарии 20