Kubernetes объявил Docker устаревшим и планирует прекратить его использование примерно через год, в версии 1.22 или 1.23. Эта новость вызвала много вопросов и непонимания. В блоге Kubernetes появилось целых две статьи, разъясняющих смысл записи в Changelog (раз и два). Если все обобщить, то для разработчиков (те, которые Dev) ничего не меняется — они все так же могут продолжать использовать docker build для сборки своих контейнеров, а вот для инженеров, ответственных за эксплуатацию кластера (OpsЧитать полностью »
Рубрика «devops» - 36
Docker is deprecated — и как теперь быть?
2020-12-08 в 9:52, admin, рубрики: containerd, CRI, crictl, crio, CTR, deprecated, devops, docker, k8s, kubernetes, kubernetesdocker, Блог компании Southbridge, Серверное администрирование, системное администрированиеПушим метрики Prometheus с помощью pushgateway
2020-12-06 в 0:13, admin, рубрики: devops, Faust, metrics, monitoring, prometheus, pushgateway, python
Предисловие
Данная заметка в целом о пуше метрик в pushgateway, однако, предупрежу и признаюсь сразу, что в тексте будет пример — анти-паттерна пуша метрик, так как использование pushgateway рекомендуется в случае, когда сервис работает не постоянно (или у сервиса/запускаемого задания вообще нет никакого интерфейса), а значит и prometheus'у лучше в закрытые двери постоянно не стучать и не заниматься лишней работой.
Haproxy — программирование и конфигурирование средствами Lua
2020-12-05 в 18:37, admin, рубрики: api, devops, haproxy, jwt, Lua, Серверная оптимизацияСервер Haproxy имеет встроенные средства для выполнения скриптов Lua.Язык программирования Lua для расширения возможностей различных серверов используется очень широко. Например, на Lua можно программировать для серверов Redis, Nginx (nginx-extras, openresty), Envoy. Это вполне закономерно, так как язык программирования Lua как раз и был разработан для удобства встраивания в приложения в качестве скриптового языка.В этом сообщении я рассмотрю варианты использования Lua для расширения возможностей Haproxy.Читать полностью »
10 антипаттернов деплоя в Kubernetes: распространенные практики, для которых есть другие решения
2020-12-03 в 10:00, admin, рубрики: devops, k8s, kubernetes, Блог компании Mail.Ru Group, контейнеризация, Облачные вычисления
Команда Kubernetes aaS от Mail.ru Group продолжает серию переводов о правильном использовании Kubernetes. В этот раз — об антипаттернах разработки на Kubernetes с рекомендациями, как сделать по-другому.
Не паникуйте: Kubernetes и Docker
2020-12-03 в 9:45, admin, рубрики: container runtime, CRI, devops, docker, kubernetes, open source, Блог компании ФлантПрим. перев.: свежая публикация в блоге Kubernetes — оперативный ответ на ту шумиху, что поднялась вокруг грядущего релиза K8s, в котором поддержка Docker будет объявлена устаревшей. Представляем вашему вниманию её перевод.

Начиная с версии v1.20, Kubernetes отказывается от Docker как от исполняемой среды контейнеров.
Но не паникуйте. Не все так страшно, как представляется на первый взгляд.
TL;DR. Kubernetes отказывается от Docker в пользу сред выполнения на базе Container Runtime Interface (CRI), разработанного специально для Kubernetes. Образы для Docker продолжат работать во всех средах выполнения как обычно.Читать полностью »
Продвинутая Helm-шаблонизация: выжимаем максимум
2020-12-02 в 9:51, admin, рубрики: devops, go-templates, helm, kubernetes, yaml, Блог компании Флант, системное администрирование
Стандартной Helm-библиотеки и привычных подходов к написанию Helm-чартов обычно хватает для автоматизации несложных приложений. Но когда количество и сложность Helm-чартов растут, то минималистичных Go-шаблонов и неоднозначной стандартной Helm-библиотеки быстро перестаёт хватать. В этой статье речь пойдет о том, как сделать ваши Helm-шаблоны гораздо более гибкими и динамичными, реализуя свои собственные «функции» в Helm, а также эксплуатируя tpl.
NB. Всё описанное было проверено с werf, но так как шаблоны в этой утилите практически идентичны Helm-шаблонам, то и всё нижеприведенное будет полностью или почти полностью совместимо с обычным Helm обеих версий (v2 и v3).
А теперь разберем, как получить от Helm-шаблонов всё, что можно… и даже всё, что нельзя!Читать полностью »
Обзор инструментов для chaos engineering в Kubernetes. Часть 2: Litmus Chaos, Chaos Toolkit, KubeInvaders и другие
2020-11-27 в 6:25, admin, рубрики: chaos engineering, Chaos Toolkit, devops, kubernetes, Litmus Chaos, open source, Блог компании Флант, системное администрирование
Это вторая и заключительная часть знакомства с доступными сегодня Open Source-утилитами для организации хаос-инжиниринга в Kubernetes-кластерах. В первой статье было вкратце рассказано о появлении самой дисциплины — chaos engineering, — а также рассмотрены kube-monkey, chaoskube и Chaos Mesh. Теперь этот список пополнится обзором Litmus Chaos, Chaos Toolkit, мини-подборкой из хаос-игр и перечислением пяти других вариантов, заслуживающих внимания инженеров, заинтересованных в разовой или постоянной проверке своей инфраструктуры на устойчивость.Читать полностью »
Разработка должна ориентироваться на продакшен, всё остальное — чушь
2020-11-26 в 9:35, admin, рубрики: development, devops, production, Программирование, разработка, управление разработкой
За мою карьеру у меня выработались определённые мнения. Некоторые из них оставили особенно глубокий след, подкреплённый годами опыта. Я попытался сформулировать, что же у них есть общего. Общее заключается в мысли о том, что единственное, что важно — это код в продакшене. Обкатка не важна, код на твоём ноутбуке не важен, QA не важен, важен только продакшен. Всё остальное — это технический долг.
Такая точка зрения, вероятно, возникла из-за долгих годов работы между отделами эксплуатации и разработки продуктов. Я уверен, что эти отделы должны стремиться к оптимизации, позволяющей как можно скорее вывести код в продакшен, а также реагировать на инциденты в продакшене.
Эта мысль, а также все связанные с ней подразумеваемые действия, может показаться контринтуитивной или спорной, поэтому я хочу раскрыть её немного глубже. Ниже представлен перечень практик и принципов, которые я считаю правильными, исходя из моего мнения о том, что единственное, что важно — это код в продакшене.
Читать полностью »
Обзор инструментов для chaos engineering в Kubernetes. Часть 1: kube-monkey, chaoskube, Chaos Mesh
2020-11-23 в 9:18, admin, рубрики: chaos engineering, Chaos Mesh, chaoskube, devops, kube-monkey, kubernetes, open source, Блог компании Флант, системное администрирование
Хаос-инжиниринг для Kubernetes становится всё популярнее, и это закономерно: ведь такая инфраструктура создавалась быть готовой к тому, чтобы в любой момент что-нибудь «отстрелило». А значит — это замечательное свойство надо проверять в реальных проектах.
Благо, уже сегодня можно найти не одно Open Source-решение, помогающее в подобных экспериментах. Представляем вашему вниманию их обзор. Он получился весьма объёмным, поэтому был разбит на две части: в этой мы рассмотрим три популярных проекта.Читать полностью »
CrowdSec — современная альтернатива Fail2Ban и коллективный иммунитет для Интернета
2020-11-16 в 8:30, admin, рубрики: CrowdSec, ddos, devops, fail2ban, Go, open source, SSHGuard, yaml, Блог компании VDSina.ru, информационная безопасность, коллективный иммунитет, Серверное администрирование, Софт
CrowdSec
Инструмент Fail2Ban хорошо известен админам. Программа анализирует логи на сервере и подсчитывает количество попыток доступа с конкретных IP-адресов по указанным протоколам. В случае нарушения правила данный IP-адрес блокируется на заданный отрезок времени. Например, джейл для авторизации по SSH включён с дефолтными настройками 5 попыток авторизации за 10 минут, после чего происходит бан IP-адреса на 10 минут. Отличный способ отфильтровать мусорный трафик от разных сканеров и защита от DDoS.
Fail2Ban и SSHGuard — лучшие инструменты в своей области. Однако новый опенсорсный проект CrowdSec представляется интересной альтернативой. Это локальная замена Fail2Ban, а потенциально нечто большее — глобальная база репутации IP-адресов типа иммунной системы интернета.
Читать полностью »
