Обновить
0
0

Пользователь

Отправить сообщение

Деплоим проект на Kubernetes в Mail.ru Cloud Solutions. Часть 3: мониторинг приложения, CI/CD и собственный Helm-чарт

Время на прочтение16 мин
Охват и читатели9.6K

Это продолжение практикума по развертыванию Kubernetes-кластера на базе облака Mail.ru Cloud Solutions и созданию MVP для реального приложения, выполняющего транскрибацию видеофайлов из YouTube. 

Читать далее

Миграция с Docker на CRI-O в Kubernetes

Время на прочтение4 мин
Охват и читатели8.7K

Для запуска контейнеров платформа Kubernetes использует Container runtime, т. е. движок для контейнеров. Долгое время основным движком считался Docker, но им не ограничивался — Kubernetes также поддерживает такие движки, как CRI-O и containerd. Однако начиная с версии Kubernetes 1.20, было объявлено, что в будущих версиях поддержка Docker (а если быть точнее, то dockershim) будет полностью прекращена. Начиная с версии Kubernetes 1.24, Docker был полностью удален из Kubernetes. Одной из причин такого решения было то, что в Docker отсутствует поддержка интерфейса CRI (Container Runtime Interface). В качестве замены можно перейти на CRI-O, который позиционирует себя как легковесную исполняемую среду для контейнеров в Kubernetes. В данной статье мы рассмотрим миграцию с движка Docker на CRI-O.

Читать далее

HTTPS для сайта в Kubernetes-кластере с помощью NGINX Ingress Controller, cert-manager и Let’s Encrypt

Время на прочтение13 мин
Охват и читатели35K

Я продолжаю цикл статей по приручению домашнего сервера разработчика, который хочет уметь в DevOps. В первой своей статье я рассказал о развёртывании Xen Project гипервизора и миграции Windows-виртуалок из Hyper-V. Во второй о развёртывании на базе виртуалок этого сервера Kubernetes-кластера. Перед написанием данной я ставил перед собой следующие цели:

1. Развернуть тестовый сайт, состоящий из статических ресурсов и front-end API в vanila Kubernetes-кластере.

2. Обеспечить доступ к этому сайту с использованием NGINX Ingress Controller.

3. Сайт должен быть доступен по HTTPS-протоколу с автоматически обновляемым TLS-сертификатом Let’s Encrypt.

Читать далее

System Design для начинающих: всё, что вам нужно. Часть 2

Уровень сложностиПростой
Время на прочтение11 мин
Охват и читатели17K

Вам не нужно изучать какую‑либо теорию, кроме этой статьи, чтобы начать собеседоваться. После прочтения смело приступайте к решению типовых System Design задач.

Изучая System Design, вы часто видите только теоретические материалы. В этой статье я постарался показать в том числе практическую реализацию многих вещей, чтобы вы не просто готовились к собеседованиям, но и знали, как эти вещи используются в реальном мире.

Читать далее

System Design для начинающих: всё, что вам нужно. Часть 1

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

Вам не нужно изучать какую‑либо теорию, кроме этой статьи, чтобы начать собеседоваться. После прочтения смело приступайте к решению типовых System Design задач.

Изучая System Design, вы часто видите только теоретические материалы. В этой статье я постарался показать в том числе практическую реализацию многих вещей, чтобы вы не просто готовились к собеседованиям, но и знали, как эти вещи используются в реальном мире.

Читать далее

Kubernetes the hard way

Время на прочтение36 мин
Охват и читатели44K

Всем привет. Меня зовут Добрый Кот Telegram.

В этой статье расскажем, как развернуть кластер чистыми бинарями и парочкой конфигов.

Вошли и вышли, приключение на 20 минут)

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей о K8S.

Начать приключение

Сертификаты K8S или как распутать вермишель Часть 1

Время на прочтение5 мин
Охват и читатели14K

Всем привет. Меня зовут Добрый Кот Telegram.

От коллектива FR-Solutions и при поддержке @irbgeo Telegram : Продолжаем серию статей по сертификатам k8s.

Хочу поделиться с вами некоторым мыслями на тему сертификатов в кубе.

Читать далее

Три уровня Kubernetes in Kubernetes

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели11K

Всем привет. Меня зовут Путилин Дмитрий (Добрый Кот) Telegram.

От коллектива FR-Solutions : Продолжаем серию статей о K8S.

В этой статье расскажем об архитектурных концептах развертывания kubernetes кластеров.

Затронем как легаси методы так и новые практики, такие как cluster-api и k8s in k8s.

Начать путешествие

Как создавать Kubernetes секреты из Vault, используя external-secrets-operator

Время на прочтение6 мин
Охват и читатели21K

Бывают случаи, когда инженеры хранят секретные данные, ключи, токены в открытом виде или в переменных Gitlab. В Kubernetes для хранения данных, которые нежелательно показывать широкому кругу лиц, предусмотрены секреты.

В этой статье предлагаю рассмотреть безопасный способ передавать, синхронизировать, интегрировать секреты напрямую из Vault в Kubernetes – с помощью метода аутентификации AppRole, используя external-secrets-operator.

Читать далее

Ломаем и чиним Kubernetes

Время на прочтение6 мин
Охват и читатели33K

Kubernetes отличная платформа как для оркестрации контейнеров так и для всего остального. За последнее время Kubernetes ушёл далеко вперёд как по части функциональности так и по вопросам безопасности и отказоустойчивости. Архитектура Kubernetes позволяет с лёгкостью переживать сбои различного характера и всегда оставаться на плаву.

Сегодня мы будем ломать кластер, удалять сертификаты, вживую реджойнить ноды и всё это, по возможности, без даунтайма для уже запущенных сервисов.

Поехали! (╯°□°)╯︵ ┻━┻

Kubernetes: продолжаем говорить о контейнерах и архитектуре

Уровень сложностиСредний
Время на прочтение18 мин
Охват и читатели8.3K

Каждый раз залипаю на анимацию работы Raft-протокола

В прошлый раз мы говорили о контейнерах, механизмах Namespace и о том, как это всё работает.

Сегодня мы пойдём дальше — к системам оркестрации, так как нам мало просто иметь контейнер. Нам нужно управлять сетью, распределять нагрузку и вовремя поднимать упавшие контейнеры и свои собственные компоненты.

Попробуем немного отойти от классического «yaml-программирования» и заглянуть под капот.

Коснёмся CAP-теоремы, важности ETCD и причинах его устойчивости к split-brain-проблеме. А ещё посмотрим, почему Kubernetes API можно распределить на кучу инстансов, работающих одновременно, а Controller Manager может работать только в одном экземпляре за раз.

Вот о том, как всё это работает в Kubernetes, кто и зачем тыкает в API, мы сегодня и поговорим.
Читать дальше →

Как мы строили платформу на базе Kubernetes и старались не скатиться в «Кубер с аутентификацией»

Время на прочтение11 мин
Охват и читатели3K

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

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

Если вы тоже поняли, что большие монолиты и сложные релизы не дают вам меняться с нужной скоростью, то наша история может оказаться полезной. Я попробую рассказать, на каком стеке мы выстраивали нашу платформу, про боль и унижение Open Source и о том, как работали с командой.

Читать далее

Создание образа в Cloud-init

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели5.8K

Всем привет! Это первая моя статья на Хабре, поэтому судите по всей строгости! Я рыскал по просторам интернетов и не нашел простой информации по созданию своими руками образа cloud-init, поэтому своими глазами изучал официальные маны и методом проб и ошибок теперь имею представление о том, как всё же запустить этот интересный и полезный инструмент!

Читать далее

33+ инструмента для безопасности Kubernetes

Время на прочтение15 мин
Охват и читатели26K
Прим. перев.: Если вы задаётесь вопросами безопасности в инфраструктуре, основанной на Kubernetes, этот замечательный обзор от компании Sysdig станет отличной отправной точкой для беглого знакомства с актуальными на сегодняшний день решениями. В него включены и комплексные системы от известных игроков рынка, и значительно более скромные утилиты, закрывающие ту или иную проблему. А в комментариях мы как всегда будем рады узнать о вашем опыте использования этих инструментов и увидеть ссылки на другие проекты.


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

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

Из 2024 в 2025: вспоминаем лучшие практики CI/CD

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

Развитие методологий CI и CD не стоит на месте. Тем не менее, проверенные практики, вероятно, останутся актуальными и в 2025 году. В этой статье покажем некоторые из таких в действии.

Вспомнить лучшие практики CI/CD

Как pod в Kubernetes получает IP-адрес

Время на прочтение7 мин
Охват и читатели31K
Прим. перев.: эта статья, написанная SRE-инженером из LinkedIn, в деталях рассказывает о той «внутренней магии» в Kubernetes — точнее, взаимодействии CRI, CNI и kube-apiserver, — что происходит, когда очередному pod'у требуется назначить IP-адрес.

Одно из базовых требований сетевой модели Kubernetes состоит в том, что у каждого pod'а должен быть свой собственный IP-адрес и любой другой pod в кластере должен иметь возможность связаться с ним по этому адресу. Есть множество сетевых «провайдеров» (Flannel, Calico, Canal и т.п.), которые помогают реализовать данную сетевую модель.

Когда я только начинал работать с Kubernetes, мне было не совсем ясно, как именно pod'ы получают свои IP-адреса. Даже с пониманием, как функционируют отдельные компоненты, было сложно представить их совместную работу. Например, я знал, для чего нужны плагины CNI, но не представлял, как именно они вызываются. Поэтому решил написать эту статью, чтобы поделиться знаниями о различных сетевых компонентах и их совместной работе в кластере Kubernetes, которые и позволяют каждому pod'у получить свой уникальный IP-адрес.
Читать дальше →

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

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

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

Читать далее

Чек-лист по разработке облачных приложений. Часть 1

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели4.6K

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

Посмотреть чек-лист

CPU-лимиты и агрессивный троттлинг в Kubernetes

Время на прочтение8 мин
Охват и читатели62K
Прим. перев.: эта поучительная история Omio — европейского агрегатора путешествий — проводит читателей от базовой теории до увлекательных практических тонкостей в конфигурации Kubernetes. Знакомство с такими случаями помогает не только расширять кругозор, но и предотвращать нетривиальные проблемы.



Доводилось ли вам сталкиваться с тем, что приложение «застревало» на месте, переставало отвечать на запросы о проверке состояния (health check'и) и вы не могли понять причину такого поведения? Одно из возможных объяснений связано с лимитом квот на ресурсы CPU. О нем и пойдет речь в этой статье.

TL;DR:
Мы настоятельно рекомендуем отказаться от CPU limit'ов в Kubernetes (или отключить квоты CFS в Kubelet), если используется версия ядра Linux с ошибкой CFS-квот. В ядре имеется серьезный и хорошо известный баг, который приводит к избыточному троттлингу и задержкам
.
Читать дальше →

Изучаем Docker, часть 3: файлы Dockerfile

Время на прочтение12 мин
Охват и читатели1.1M
В переводе третьей части серии материалов, посвящённых Docker, мы продолжим вдохновляться выпечкой, а именно — бубликами. Нашей сегодняшней основной темой будет работа с файлами Dockerfile. Мы разберём инструкции, которые используются в этих файлах.

Часть 1: основы
Часть 2: термины и концепции
Часть 3: файлы Dockerfile
Часть 4: уменьшение размеров образов и ускорение их сборки
Часть 5: команды
Часть 6: работа с данными


Бублики — это инструкции в файле Dockerfile
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Санкт-Петербург, Санкт-Петербург и область, Россия
Дата рождения
Зарегистрирован
Активность