Как стать автором
Обновить
59
Карма
0
Рейтинг
Иван Михейкин @diafour

Программист

shell-operator v1.0.0: долгожданный релиз нашего проекта для Kubernetes-операторов

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

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

Несмотря на это, его версия, долгое время «блуждавшая» в диапазоне бета- и RC-релизов будущей v1.0.0, вносила смуту для сторонних наблюдателей (и пользователей). С этим финальным релизом shell-operator мы ликвидируем это недоразумение, ещё более официально объявляя о зрелости проекта, а заодно — принеся в него новые возможности.

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

Новости

Показать еще

Прогресс 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.8K
Комментарии 3

Обновился наш плагин для Grafana — Statusmap panel 0.3.0

Блог компании ФлантOpen sourceСистемное администрированиеВизуализация данных
Почти два года назад мы представили свой плагин для Grafana, который фигурирует в официальном каталоге от Grafana Labs под названием flant-statusmap-panel. Если вкратце, он реализует возможность показывать статус во времени.

Вот простая иллюстрация:



Такую визуализацию мы используем, например, для наглядного просмотра состояния здоровья pod'ов в Kubernetes. Подробнее о том, почему и как мы создали плагин, читайте в уже упомянутом анонсе. Цель сегодняшней новости — рассказать о главных изменениях в релизе grafana-statusmap 0.3.0.
Читать дальше →
Всего голосов 29: ↑29 и ↓0 +29
Просмотры2.5K
Комментарии 5

Простое создание 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.7K
Комментарии 2

Что такое GitOps [по версии Weaveworks]?

Блог компании ФлантСистемное администрированиеIT-инфраструктураDevOpsKubernetes
Перевод
Прим. перев.: После недавней публикации материала о методах pull и push в GitOps мы увидели интерес к этой модели в целом, однако русскоязычных публикаций на эту тему оказалось совсем мало (на хабре их попросту нет). Посему рады предложить вашему вниманию перевод другой статьи — пусть и уже почти годичной давности! — от компании Weaveworks, глава которой придумал термин «GitOps». В тексте поясняется суть подхода и ключевые отличия от уже существующих.



Год назад мы опубликовали введение в GitOps. Тогда мы рассказали, как команда Weaveworks запустила SaaS, целиком основанную на Kubernetes, и разработала набор предписывающих лучших практик для развертывания, управления и мониторинга в среде cloud native.
Читать дальше →
Всего голосов 37: ↑35 и ↓2 +33
Просмотры29.4K
Комментарии 7

GitOps: сравнение методов Pull и Push

Блог компании ФлантСистемное администрированиеGitDevOpsKubernetes
Перевод
Прим. перев.: В сообществе Kubernetes явную популярность набирает тренд под названием GitOps, в чём мы лично убедились, посетив KubeCon Europe 2019. Этот термин был относительно недавно придуман главой компании Weaveworks — Alexis Richardson — и означает применение привычных для разработчиков инструментов (в первую очередь — Git, откуда и само название) для решения задач эксплуатации. В частности, речь об эксплуатации Kubernetes через хранение его конфигураций в Git и автоматического выката изменений в кластер. О двух подходах к этому выкату и рассказывает Matthias Jg в данной статье.



В прошлом году (на самом деле, формально это произошло в августе 2017 г. — прим. перев.) появился новый подход к развёртыванию приложений в Kubernetes. Он называется GitOps, а в его основе лежит базовое представление о том, что отслеживание версий deployment'ов ведется в безопасной среде Git-репозитория.
Читать дальше →
Всего голосов 31: ↑30 и ↓1 +29
Просмотры12.8K
Комментарии 3

Готовить Kubernetes-кластер просто и удобно? Анонсируем addon-operator

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


Вслед за shell-operator мы представляем его старшего брата — addon-operator. Это Open Source-проект, который используется для установки в кластер Kubernetes системных компонентов, которые можно назвать общим словом — дополнения.
Читать дальше →
Всего голосов 32: ↑31 и ↓1 +30
Просмотры7.3K
Комментарии 0

Представляем shell-operator: создавать операторы для Kubernetes стало ещё проще

Блог компании ФлантOpen sourceСистемное администрированиеDevOpsKubernetes
В нашем блоге уже были статьи, рассказывающие про возможности операторов в Kubernetes и о том, как написать простой оператор самому. На этот раз хотим представить вашему вниманию наше Open Source-решение, которое выводит создание операторов на суперлёгкий уровень, — познакомьтесь с shell-operator!

Зачем?


Идея shell-operator довольно проста: подписаться на события от объектов Kubernetes, а при получении этих событий запустить внешнюю программу, предоставив ей информацию о событии:

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

Советы по созданию нестандартных рабочих процессов в GitLab CI

Блог компании ФлантСистемное администрированиеСистемы сборкиDevOps
Перевод
Прим. перев.: Оригинальную статью написал Miłosz Smółka — один из основателей небольшой польской компании Three Dots Labs, специализирующейся на «продвинутых backend-решениях». Автор опирается на свой опыт активной эксплуатации GitLab CI и делится накопленными советами для других пользователей этого Open Source-продукта. Прочитав их, мы поняли, насколько нам близки описанные им проблемы, поэтому решили поделиться предлагаемыми решениями с более широкой аудиторией.



На этот раз я затрону более продвинутые темы в GitLab CI. Частой задачей здесь является реализация в пайплайне нестандартных возможностей. Большинство советов специфичны для GitLab, хотя некоторые из них можно применить и к другим системам CI.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры11.9K
Комментарии 2

Представляем библиотеку kubedog для слежения за ресурсами Kubernetes

Блог компании ФлантOpen sourceGoDevOps
Рады анонсировать новую Open Source-разработку компании «Флант» для DevOps-специалистов и не только — kubedog. Это написанная на Go библиотека и CLI на её основе для отслеживания событий ресурсов Kubernetes и сбора их логов.


На данный момент библиотека поддерживает слежение за следующими ресурсами: Pod (и Container), Job, Deployment, StatefulSet и DaemonSet. События и логи передаются через callback’и.
Читать дальше →
Всего голосов 30: ↑29 и ↓1 +28
Просмотры6K
Комментарии 5

Представляем новый плагин для Grafana — Statusmap panel

Блог компании ФлантOpen sourceСистемное администрированиеВизуализация данных
У Grafana есть возможность показывать статус, у Grafana есть возможность показывать данные во времени. Однако, как это ни парадоксально, у Grafana до настоящего момента не было удобного способа показывать статус во времени!

Мы представляем свой плагин — Statusmap panel. Он позволяет наглядно отобразить состояния набора объектов за выбранный промежуток времени. В качестве примера, демонстрирующего работу плагина, представим себе множество локаций, в которых для кого-то готовят кофе:


Можно увидеть, как Никки экономит электроэнергию, Герри быстро пополняет запасы воды, кофемашина Валеры частенько барахлит, а на Бифросте Wi-Fi явно лучше, чем на лунной станции, где, похоже, с водой совсем туго.

Выглядит интересно? Но начнём с того, как мы вообще к этому пришли.
Читать дальше →
Всего голосов 52: ↑52 и ↓0 +52
Просмотры16.1K
Комментарии 12

Сборка проектов с dapp. Часть 2: JavaScript (frontend)

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


Этот материал продолжает цикл о сборке Docker-образов для приложений на различных языках программирования с помощью утилиты dapp. Предыдущая статья была о сборке приложений на Java — теперь же поговорим о приложениях на JavaScript. Для начала это будет frontend-приложение, а в следующей части планируется рассказать о сборке backend'а и запуске всего в Kubernetes.

Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код переписан на Go, а документация значительно улучшена.

В качестве иллюстрации будут использованы приложения nodejs-pool и poolui. Да-да, подготовим к запуску в Kubernetes свой майнинг-пул с блокчейном и выплатами!
Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Просмотры4.3K
Комментарии 2

Дождались: поддержка YAML и Ansible (без коров) в dapp

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

В начале этого года мы посчитали, что наша Open Source-утилита для сопровождения процессов CI/CD — dapp версии 0.25 — обладает достаточным набором функций и была начата работа над нововведениями. В версии 0.26 появился синтаксис YAML, а Ruby DSL был объявлен классическим (далее перестанет поддерживаться вовсе). В следующей версии, 0.27, основным нововведением можно считать появление сборщика с Ansible. Пришло время рассказать об этих новинках подробнее.

Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код переписан на Go, а документация значительно улучшена.

Читать дальше →
Всего голосов 23: ↑22 и ↓1 +21
Просмотры7.7K
Комментарии 4

Сборка проектов с dapp. Часть 1: Java

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


Эта статья — начало цикла о сборке dapp'ом приложений на различных языках, платформах, технологических стеках. Предыдущие статьи про dapp (см. ссылки в конце материала) были больше обзорными, описывали возможности dapp. Теперь же пора поговорить более предметно и поделиться конкретным опытом работы с проектами. В связи с недавним релизом dapp 0.26.2 я заодно покажу, как описывать сборку в YAML-файле.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Просмотры5.6K
Комментарии 2

Сборка и дeплой приложений в Kubernetes с помощью dapp и GitLab CI

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


В предыдущих статьях о dapp было рассказано про сборку приложений и про запуск в Minikube. При этом dapp запускался локально на машине разработчика. Однако инструмент задумывался для поддержки процессов непрерывной интеграции (CI) и сами мы используем его в основном в связке с GitLab. Чем dapp помогает в процессах CI/CD?
Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Просмотры19.8K
Комментарии 4

Сборка проектов с GitLab CI: один .gitlab-ci.yml для сотни приложений

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


В статье решается задача управления описанием сборки для большого количества однотипных приложений. Чтобы в проекте заработал GitLab CI, нужно в репозиторий добавить файл .gitlab-ci.yml. Но что, если в сотне репозиториев это файл с одинаковым содержимым? Даже если разложить его по репозиториям один раз, то как его потом изменять? А что, если одного .gitlab-ci.yml мало для сборки — нужны Dockerfile или Dappfile, разные скрипты и структура YAML-файлов для Helm? Как обновлять их?

С чего начать решение задачи по сборке сотни однотипных приложений? Конечно же, посмотреть, можно ли GitLab CI указать использовать .gitlab-ci.yml из другого репозитория или компоновать .gitlab-ci.yml из файлов в других репозиториях…
Читать дальше →
Всего голосов 37: ↑35 и ↓2 +33
Просмотры55.3K
Комментарии 7

Практика с dapp. Часть 2. Деплой Docker-образов в Kubernetes с помощью Helm

Блог компании ФлантСистемное администрированиеDevOpsKubernetes
dapp — наша Open Source-утилита, помогающая DevOps-инженерам сопровождать процессы CI/CD (Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код полностью переписан на Go, а документация значительно улучшена) (подробнее о ней читайте в анонсе). В документации к ней приведён пример сборки простого приложения, а подробнее этот процесс (с демонстрацией основных возможностей dapp) был представлен в первой части статьи. Теперь, на основе того же простого приложения, покажу, как dapp работает с кластером Kubernetes.

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

Практика с dapp. Часть 1: Сборка простых приложений

Блог компании ФлантАнализ и проектирование системСистемы сборки
Эта статья — ознакомительное руководство по сборке Docker-образов приложений с помощью нашей Open Source-утилиты dapp (подробнее о ней читайте в анонсе. На примере двух простых приложений (с одним образом) рассмотрим, как могут быть задействованы некоторые из основных возможностей dapp и какой результат они дают.

Обновлено 13 августа 2019 г.: в настоящее время проект dapp переименован в werf, его код переписан на Go, а документация значительно улучшена.

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

GitLab CI для непрерывной интеграции и доставки в production. Часть 2: преодолевая трудности

Блог компании ФлантПрограммированиеGitСистемы управления версиямиСистемы сборки

Эта статья продолжает первую часть, содержащую подробное описание нашего пайплайна:

image

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

Итак, я остановился на том, что созданный .gitlab-ci.yml не позволяет реализовать пайплайн в полной мере, поскольку GitLab CI не предоставляет директив для разделения задач по пользователям и для описания зависимостей выполнения задач от статуса выполнения других задач, а также не позволяет разрешить модификацию .gitlab-ci.yml только для отдельных пользователей.
Читать дальше →
Всего голосов 23: ↑23 и ↓0 +23
Просмотры34.5K
Комментарии 14

GitLab CI для непрерывной интеграции и доставки в production. Часть 1: наш пайплайн

Блог компании ФлантOpen sourceGitСистемы управления версиямиСистемы сборки


Итак, GitLab CI: что можно ещё рассказать о нём? На хабре уже есть статьи про установку, про настройку раннеров, про командное использование, про GitLab Flow. Пожалуй, не хватает описаний того, как используется GitLab CI в реальном проекте, где задействовано несколько команд. А в современном мире разработки ПО это действительно так: ведь есть (как минимум) разработчики, тестировщики, DevOps- и релиз-инженеры. С подобным разделением на команды мы работаем уже несколько лет. В этой статье я расскажу о том, как мы, используя и улучшая возможности GitLab CI, реализовали и применяем в production для коллектива из нескольких команд процессы непрерывной интеграции (CI) и отчасти доставки приложений (CD).
Читать дальше →
Всего голосов 44: ↑43 и ↓1 +42
Просмотры103.9K
Комментарии 25

Информация

В рейтинге
3,405-й
Откуда
Россия
Работает в
Зарегистрирован
Активность