Как стать автором
Обновить
141.15

Kubernetes *

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

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

Как быстрее и эффективнее расширять облачные ресурсы при пиковых нагрузках? Расскажем на бесплатном вебинаре.

📆 Когда: 13 мая в 11:00 мск

📍 Где: онлайн

Когда автомасштабирования кластера Kubernetes и масштабирования подов становится недостаточно, кластер необходимо расширять по событиям от внешних систем. На вебинаре вы узнаете, что делать, если триггер масштабирования кластера не утилизация, а события от внешних систем, например, сообщений Kafka или платформы CI/CD.

Эксперт покажет, как запустить приложение с учетом внешних систем, расскажет о классических подходах автомасштабирования, а также как масштабировать кластер по событиям с помощью KEDA (Kubernetes-based Event Driven Autoscaler).

Вебинар будет полезен разработчикам, DevOps-инженерам и архитекторам облачных решений.

Зарегистрироваться 👈

Теги:
+1
Комментарии0

Приглашаем на второй Cloud․ru Tech Lab: DevOps — митап для DevOps- и SRE-инженеров 🎙️

📅 Дата: 22 мая в 18:00
📍 Место: Москва, Goelro Loft, Большая Почтовая улица, 40с4

Мы продолжаем серию технических митапов Cloud․ru Tech Lab — в этот раз обсудим сложности DevOps-процессов и разберем DevOps-практики на реальных кейсах.

Темы докладов:

  • ClusterAPI как цель, Terraform как мост: управляем жизненным циклом платформы — Олег Одинцов, Старший инженер платформы App.Farm, РСХБ-Интех.

  • Автомасштабирование K8s в ноль: от базы до хардкора — Илья Смирнов, Архитектор решений, Cloud․ru.

  • Calico CNI: жизнь после запуска — Александр Качмашев, Инженер, Точка.

  • Как организовать сетевую связность Bare C kubernetes — Антон Паус, DevOps-инженер, Cloud․ru.

Также в программе afterparty c нетворкингом, легкими напитками и закусками.

Мы предусмотрели два формата участия:

  • офлайн — для тех, кто планирует лично посетить площадку,

  • онлайн — для тех, кто хочет посмотреть доклады в записи.

Зарегистрироваться на митап 👈

Теги:
+1
Комментарии0
Контейнерум
Контейнерум

Есть один отличный инструмент – это container-structure-test. Используется для функционального тестирования образов Docker и отлично интегрируется с container-tools, который я никогда не устану пиарить :).

То есть пишется скрипт-обертка, который запускает для нужного образа тесты:

./scripts/test.py --image <IMAGE ID> --config test/debian11-nodejs-23.11.0.yaml

То есть сначала собираем базовый образ, а затем сразу его тестируем.

Usage: make <target>

  help               - Display this help message
  all                - Build all Debian images
  check-dependencies - Verify required tools are installed
  clean              - Remove all build artifacts and downloads
  list-vars          - List all Makefile variables and their origins
  shellcheck         - Validate all bash scripts
  package   	     - Create tar.gz archive of the directory
  release            - Create Git tag and GitHub release
  archive            - Create git archive of HEAD
  bundle             - Create git bundle of repository
  test               - Run structure tests on built container images

 ============================
  ** Debian Linux targets **
 ============================

|all|

|debian11|
|debian11-java|
|debian11-java-slim|
|debian11-corretto|
|debian11-graal|
|debian11-graal-slim|
|debian11-java-slim-maven|
|debian11-java-slim-gradle|
|debian11-graal-slim-maven|
|debian11-graal-slim-gradle|

|debian11-java-kafka|
|debian11-java-slim-kafka|

|debian11-nodejs-23.11.0|

|debian11-python-3.9.18|

И никаких проблем и хлопот.

Что такое container-structure-test

Теги:
+2
Комментарии0
Домик
Домик

container-tools

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

Когда вы подписываете контейнер, вы подтверждаете его целостность. Если кто-то заменит образ на поддельный с вредоносным кодом, подпись позволит это обнаружить. Без подписи вы рискуете запустить что-то небезопасное, даже не зная об этом.

Конечно, есть и другие инструменты, например cosign, которые тоже полезны, особенно в облачных средах. Но GPG остаётся надёжным базовым решением, которое работает везде и не требует дополнительной настройки. Проще говоря, это как печать на документе: если её нет, вы не можете быть уверены, что всё чисто.

Как это делать с помощью container-tools

container-tools % make

Usage: make <target>

  help               - Display this help message
  all                - Build all Debian images
  check-dependencies - Verify required tools are installed
  clean              - Remove all build artifacts and downloads
  list-vars          - List all Makefile variables and their origins
  shellcheck         - Validate all bash scripts
  package   	     - Create tar.gz archive of the directory
  release            - Create Git tag and GitHub release
  archive            - Create git archive of HEAD
  bundle             - Create git bundle of repository

 ============================
  ** Debian Linux targets **
 ============================

|all|

|debian11|
|debian11-java|
|debian11-java-slim|
|debian11-corretto|
|debian11-graal|
|debian11-graal-slim|
|debian11-java-slim-maven|
|debian11-java-slim-gradle|
|debian11-graal-slim-maven|
|debian11-graal-slim-gradle|

|debian11-java-kafka|
|debian11-java-slim-kafka|

|debian11-nodejs-23.11.0|

|debian11-python-3.9.18|

Собираем базовый образ для NodeJS

make debian11-nodejs-23.11.0

После завершения сборки:

[Image was built successfully]
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::

Artifact location: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar

Artifact size: 93M

Для подписи используем gpg.py в составе container-tools:

./scripts/gpg.py --directory /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar --gpg-key-id 4795A07D0372203EFDDA0BF0C465AD00090932DB
2025-04-25 13:39:41,269 [INFO] Signing tarball: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar -> Signature: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar.asc
2025-04-25 13:39:41,752 [INFO] Successfully signed tarball: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar
2025-04-25 13:39:41,752 [INFO] Signature saved to: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar.asc
2025-04-25 13:39:41,752 [INFO] All tarballs have been processed successfully.

Подтверждаем:

./scripts/gpg.py --directory /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar --gpg-key-id 4795A07D0372203EFDDA0BF0C465AD00090932DB --verify
2025-04-25 13:40:19,734 [INFO] Verifying tarball: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar against signature: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar.asc
2025-04-25 13:40:20,192 [INFO] Verification successful: /srv/container-tools/debian/dist/debian11-nodejs-23.11.0/debian11-nodejs-23.11.0.tar
2025-04-25 13:40:20,193 [INFO] All tarballs have bee
Теги:
+2
Комментарии0

Настоятельно советую перечитать Helm это анти-паттерн
Об этом треде будут слагать легенды.

Эту концепцию можно назвать «Назад в будущее».

Для того, чтобы заскаффолдить (scaffolding – сделать заготовку) такой интерфейс для Nginx контроллера требуется несколько часов времени:

make nginx-help
Nginx Management System
=======================

Core Operations:
  reload-config         - Reload Nginx configuration without downtime
  test-config           - Test Nginx configuration for syntax errors
  get-nginx-config      - View current Nginx configuration
  exec                  - Open interactive shell in Nginx pod
  logs                  - View Nginx logs in real-time

Feature Management:
  enable-module         - Enable specific Nginx module
  disable-module        - Disable specific Nginx module
  enable-ssl            - Configure SSL/TLS termination
  enable-gzip           - Enable Gzip compression
  enable-cache          - Configure caching
  enable-auth           - Enable basic authentication
  enable-rate-limiting  - Configure rate limiting
  enable-geo-routing    - Enable GeoIP-based routing

Advanced Features:
  optimize-config       - AI-powered configuration optimization
  blue-green-switch     - Zero-downtime traffic switching
  chaos-test            - Resilience testing with chaos engineering
  update-waf-rules      - Dynamic WAF rule updates
  renew-certs           - Automated SSL certificate renewal
  inject-lua            - Hot-patch LUA scripts

Monitoring & Analysis:
  live-metrics          - Real-time performance dashboard
  canary-analysis       - Compare canary vs production metrics
  profile-ebpf          - Kernel-level performance profiling
  check-drift           - Detect configuration drift

LLM сделали код дешевле, а дебаггинг непростительно дорогим.

Теги:
0
Комментарии0

Вебинар: как устроена совместная работа виртуальных машин и контейнеров в Deckhouse

Завтра, 23 апреля, мы проведём вебинар о виртуализации в экосистеме Deckhouse. Расскажем, почему разрабатываем своё решение, и покажем, как запускать виртуальные машины рядом с контейнерами, чтобы управлять ими в рамках одной платформы оркестрации. 

Будет полезно, если вы ищете альтернативу классической виртуализации или хотите начать использовать Kubernetes для оркестрации ВМ. Регистрируйтесь и подключайтесь с 12:00 по Москве. Ссылка для подключения придёт вам на почту. 

Вы узнаете:

  • Какие возможности по управлению ВМ уже есть в Deckhouse.

  • Что мы вкладываем в понятие Cloud Native-виртуализации.

  • Для чего может быть нужна совместная работа ВМ и контейнеров.

На демо покажем возможности Deckhouse Kubernetes Platform по администрированию и мониторингу ВМ и контейнеров, конфигурации балансировщиков и микросегментации на основе сетевых политик.

Спикеры вебинара:

  • Георгий Дауман, менеджер продукта Deckhouse Virtualization Platform

  • Кирилл Салеев, архитектор инфраструктурных решений Deckhouse

Теги:
+3
Комментарии0

Запустили Kubernetes в SpaceWeb

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

Kubernetes поможет с созданием и поддержкой микросервисных архитектур, управлением контейнерами и оркестрацией приложений. Сервис упрощает процесс развертывания, масштабирования и управления облачными инфраструктурами.

Можно выбрать следующие конфигурации: Control Plane и Worker Nodes — в зависимости от ваших задач и нагрузки. Стоимость Kubernetes начинается от 2 545 руб./месяц за стандартную мастер + 1 рабочую ноду 1 vCPU, 2 RAM, 40 Гб.

Теги:
+3
Комментарии0

Leaquor.jl: Secret Scanning with Julia

Доверяем, но проверяем

Если делать веб-приложение вроде SonarQube, то не мешало бы разделить образности на бэкенде:

  1. Выделить сканер секретов в одтельную программу на Go. Это worker.

  2. Сервис FastAPI предоставляет JSON API, клонирует репозиторий Git и возвращает результаты сканирования для фронтенда в JSON. Это сервис.

  3. На бэк отправляется запрос REST API, который передает URL репозитория для сканирования:

curl -X POST "http://I<IPADDRESS>:8000/scan-secrets" -H "Content-Type: application/json" -d '{"repo_url": "https://github.com/Plazmaz/leaky-repo"}' | jq .
Skanner
Skanner

К чему это я все? DevOps инструментарий – это полный шлак. На попытку заставить на бэке работать эту чудо-поделку под названием GitLeaks, ушло больше времени чем на то, чтобы переписать ее с нуля, добавив еще и возможность кастомизировать паттерны для проверки.

Теги:
0
Комментарии0

Из треда про Helm

Пока не услышал ни одного реального аргумента в пользу Helm.

Кстати, для того, чтобы сделать канареечные релизы/blue-green развертывание, тоже не нужны сторонние инструменты, только K8s и Istio:

https://github.com/avkcode/vault/blob/main/CANARY.md

Мы «завязываемся» на сторонние инструменты, которые легко заменить и готовим специалистов по установке Vault-of-Banks и Helm. А на реальные задачи ни укого не хватает времени и ресурсов.

Теги:
-1
Комментарии0

В продолжение бурной дискуссии в Helm это анти-паттерн.

Если необходимо заниматься дистрибуцией именно чартов Helm, то реализовать такую функциональность не составит особого труда.

С помощью директивы include в любой Makefile подключается еще один Makefile – helm.mk
Оказывается variable scoping – это давно решенная проблема и для этого не нужен ни YAML ни cuelang.

Пишется скрипт на Python который генерирует чарт Helm:

define GENERATE_HELM_SCRIPT
import os
import yaml
import sys
from pathlib import Path

def make_helm_compatible(value):
    """Convert values to Helm template syntax where appropriate"""
    if isinstance(value, dict):
        return {k: make_helm_compatible(v) for k, v in value.items()}
    elif isinstance(value, list):
        return [make_helm_compatible(v) for v in value]
    elif isinstance(value, str) and value.isdigit():
        return f"{{{{ .Values.{value} }}}"
    return value

И он может заодно сгенерировать еще и схему для values файла.

Вызываем нужный таргет:

make generate-chart

Получаем Helm чарт:

tree vault-chart
vault-chart
├── Chart.yaml
├── templates
│   ├── clusterrolebinding-vault-server-binding.yaml
│   ├── configmap-vault-config.yaml
│   ├── service-vault-internal.yaml
│   ├── service-vault-service.yaml
│   ├── serviceaccount-vault-service-account.yaml
│   └── statefulset-vault.yaml
└── values.yaml

2 directories, 8 files

Правда заключается в том, что задачи которые решает DevOps успешно решались задолго до DevOps.

gen_helm_chart.py

LLM сделали код дешевле, но зато дебажить стало непростительно дорого.

Теги:
0
Комментарии0

Окно обслуживания в Kubernetes 🔍

Теперь при создании нового кластера и в настройках текущего можно указать, когда устанавливать патчи и обновлять серты.

🚫 По дефолту в поле «Окно обслуживания» у всех кластеров стоит тег «Никогда», — то есть никаких им автообновлений.

Можно выбрать «В любое время» или задать конкретный интервал (например, с 2:00 до 5:00 по вашему часовому поясу). Минимальный интервал — 3 часа, обслуживание стартанет в этот период и продлится до двух часов.

Пример: допустим, у вас production-кластер для интернет-магазина (пиковый трафик с 9:00 до 21:00) и тестовый стенд. Вы можете:

😴 Для прода выставить окно с 3:00 до 6:00, когда трафик почти нулевой.

😊 Для тестового выбрать «В любое время», пусть обновляется сразу как выходит новая версия.

Отправить кластер на техобслуживание →

Теги:
+9
Комментарии0

Проблемы традиционного подхода с Docker-образами

При использовании стандартных Dockerfiles каждый слой кастомизации приводит к :

  • Не эффективному использованию хранилища – Каждая команда RUN apt-get install создаёт новый слой, расходуя место дублирующими зависимостями

  • Не эффективному использованию сети – Одинаковые пакеты скачиваются многократно для разных образов

  • Медленным итерациям – Пересборка требует повторного выполнения всех предыдущих шагов

Этот проект предлагает более эффективный подход:

  • Создание минимальных базовых образов с нуля через debootstrap

  • Точечное включение только необходимых компонентов в изначальную сборку

  • Формирование специализированных вариаций (Java, Kafka и др.) на общих основаниях

Теги:
+4
Комментарии4

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

Рассказываем, какие вебинары проведем для вас в апреле 🎧

Регистрируйтесь на бесплатные вебинары, чтобы сделать работу с приложениями и инфраструктурой еще безопаснее:

📆 Когда: 15 апреля в 11:00 мск

Веб-ресурсы, мобильные приложения и API ежедневно подвергаются DDoS- и бот-атакам. В 2024 году число заблокированных запросов ботов выросло на 30% по сравнению с предыдущим годом — об этом говорит отчет компании Curator «DDoS-атаки, боты и BGP-инциденты в 2024 году: статистика и тренды». 

На вебинаре расскажем, почему защита от ботов — это отдельная задача, которая требует особых методов и которую не заменить решениями классов Anti-DDoS и WAF. Покажем методы эффективной защиты публичных веб-ресурсов и типовые схемы подключения для максимальной безопасности ресурса.

📆 Когда: 24 апреля в 11:00 мск.

Управление уязвимостями (vulnerability management) — один из ключевых аспектов в поддержании информационной безопасности IT-инфраструктуры. На вебинаре обсудим базовые меры профилактики и защиты от киберрисков на уровне микросервисов, контейнеров и окружений под управлением Kubernetes.

Будем ждать вас!

Теги:
Рейтинг0
Комментарии0

Привет, Хабр! Меня зовут Станислав Егоркин, я инженер юнита IaaS департамента разработки Infrastructure в AvitoTech.

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

За основу я взял наш дашборд Node Status, который показывал в предыдущей статье. Напомню, он служит для того, чтобы быстро понять, все ли в порядке с нодой в Kubernetes-кластере. В своей основе она содержит множество небольших панелек, которые единообразно подсвечиваются при возникновении аномалий: оранжевый значит «обрати внимание», красный - явно что-то не так. При необходимости по клику можно получить расширенную информацию по каждой метрике.

Я очистил наш внутренний вариант от специфики. Это позволяет использовать дашборд в любых окружениях, в которых развернуты нужные экспортеры:

  • node-exporter (лейбл «node» должен содержать имя Kubernetes-ноды);

  • kube-state-metrics;

  • node-problem-detector (опционально).

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

Я полагаю, что ценность Node Status для комьюнити состоит не в том, какие именно метрики на ней собраны, а в том, на каких принципах она основана. Эти принципы зарекомендовали себя у нас, и вероятно будут также полезны и вам.

Если вы у вас возникнут сложности при использовании дашборда или предложения по его улучшению, пожалуйста, оставляйте свои комментарии! 

Теги:
Всего голосов 19: ↑19 и ↓0+20
Комментарии0

Код с ИИ стал «дешевле», а вот архитектура дороже.

Генеративный ИИ позволяет быстрее проверять идеи и проводить эксперименты, но без умения задавать правильные вопросы и опыта в выстраивании SDLC, это всего лишь позволит вам генерировать больше кода низкого качества.

Вот например пришла идея посчитать косты и спрогнозировать расходы на K8s в облаке и on-prem. Конечно есть много (в основном платных) проектов типа Kubecost, но они не достаточно гибкие для решения такого рода задач.

Если об этом попросить ИИ то он поможет сгенерировать почти работающий скрипт, который нужно будет поправить. Но выберет самое наивное решение, забрать метрики через metrics API:

# Fetch pod metrics for a specific namespace
def get_pod_metrics(namespace):
    try:
        result = subprocess.run(
            ["kubectl", "get", "--raw", f"/apis/metrics.k8s.io/v1beta1/namespaces/{namespace}/pods"],
            capture_output=True,
            text=True,
            check=True
        )
        return json.loads(result.stdout)
    except subprocess.CalledProcessError as e:
        print(f"Error fetching pod metrics for namespace {namespace}: {e}")
        return {}

В данном случае мы используем гипотетический AWS.
python3 kost.py --plot
Namespace Costs:
Namespace: default
Hourly Cost: $0.04
Daily Cost: $1.00
Monthly Cost: $30.00
6-Month Cost: $180.01
Namespace: kube-system
Hourly Cost: $0.07
Daily Cost: $1.77
Monthly Cost: $53.17
6-Month Cost: $319.04

И получаем график с прогнозом расходов:

Plot
Plot

Но это слишком простое решение, для реальной инфры, нужна будет мультитенантность и гарантии доставки. Если ИИ попросить очень настойчего, то он может быть расскажет вам, что нужно забрать метрики из Prometheus, но он никогда не предложит использовать kubernetes API для передачи событий в NATS. Как показано в этом примере.

Такое, я вам скажу, под силу лишь человеку.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

Какие доклады посетить на конференции GoCloud 2025 ☁️

Трек: Инфраструктура и сервисы — про новые и популярные инструменты платформы Cloud.ru Evolution и то, как они помогают в решении задач.

Тема: Путь героя, который победил: разворачиваем Redis поверх K8s.

На выступлении вы узнаете:

  1. Про ключевые этапы развертывания Redis поверх Kubernetes. 

  2. Как настроить Redis с HA и масштабировать решение. 

  3. Как то же самое сделать в облаке и почему этот вариант удобнее и эффективнее. 

📅 Когда: 10 апреля в 16:50 мск, онлайн и офлайн

👉 Зарегистрироваться

Что еще интересного будет на GoCloud 2025, смотрите в программе конференции.

Теги:
Рейтинг0
Комментарии0

13 марта 16:00 CET (18:00 Мск) Андрей Квапил, более известный в инженерном сообществе как @kvaps будет травить байки о том, как правильно готовить LINSTOR и Talos Linux — на этот раз на комьюнити-мите LINBIT (создатели LINSTOR и DRBD). Основано на реальных событиях, приключившихся в Cozystack:)

Программа комьюнити-мита:

  • Andrei Kvapil: LINSTOR on Talos Linux: A robust base for Cozystack

  • Joel Colledge: DRBD resync without replication

  • Johannes Khoshnazar-Thoma: WinDRBD 1.2 news

Присоединяйтесь к трансляции:

Кроме того, будем транслировать встречу в телеграм-чате @drbd_ru.

Теги:
Рейтинг0
Комментарии0

На самом деле IaC или инфраструктура-как-код – это не оптимальный уровень абстракции. Эта концепция в конечном, счете создает больше проблем чем позволяет решить. На самом деле инфраструктура – это артефакт. Это может быть AMI, ISO, rpm, OVA\OVF, бинарный файл или, sqlite blob – любой атомарный объект который содержит код и метаданные необходимы для развертывания. Когда индустрия свернула не туда и ушла от этой концепции это стало ошибкой.

То что 83% компаний в корпоративном секторе планируют мигрировать обратно on-prem является подтверждением этого.

wordpress
wordpress

Это образцовая облачная архитектура для сайта на Wordpress, если верить Amazon.
Я сначала подумал что это прикол, xkcd комикс, пародия, но нет – это реальные рекомендации и у Google, или Microsoft будет все примерно похоже.

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

Большинству разработчиков от облака нужно ровно три вещи: объектное хранилище (s3), хостинг для ВМ (AMI) и DBaaS (RDS). Но облачным провайдерам важно, чтобы вы по максимуму использовали все сервисы и чем больше – тем лучше.

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

Просто так развернуть что-то серьезное в облаке не получится. Для IaC есть – terraform, но кроме terraform у каждого провайдера есть еще свои инструменты. Но terraform не очень подходит для настройки приклада в VM, его обычно используют в связке с Packer, Ansible и скриптами. И здесь нужны будут cloud-инженеры с опытом работы на конкретном стеке.

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

А для Enterpise ни один из современных IaC инструментов не решает проблемы «Day2» – что делать с инфраструктурой, после того, как вы ее развернули. Terraform ничего знает об ITSM, CMDB, комплаенсе и лицензировании.

На самом деле все гораздо проще, те инструменты которые мы используем сейчас, просто недостаточно хороши. У меня есть для вас другие инструменты.

Теги:
Всего голосов 9: ↑7 и ↓2+6
Комментарии4

Приглашаем на первый Cloud․ru Tech Lab: Golang — митап для Go-разработчиков и технических лидеров 🎙️

📅 Дата: 13 марта, 19:00
📍 Место: Москва, Большая Почтовая улица, 40с7, Гоэлро Лофт

В программе четыре доклада от разработчиков Cloud․ru и приглашенного гостя. А еще — нетворкинг и afterparty с диджеем, музыкой и ужином.

Темы докладов:

  • Как устроена Go-разработка в Cloud․ru — Александр Шакмаев и Андрей Рацеров, технические лидеры;

  • Балансировка gRPC в Kubernetes — Михаил Абраш, старший Go-разработчик;

  • Как мы бутстрапим пользовательское окружение с Go, Temporal и Kubernetes — Евгений Третьяков, ведущий Go-разработчик;

  • Осторожно unsafe! Практические примеры и ошибки использования — Владимир Балун, основатель balun․courses.

👉 Зарегистрироваться

А еще заглядывайте в наши статьи и делитесь размышлениями в комментариях:

Теги:
Рейтинг0
Комментарии0

Визуализация: Алгоритм планировщика Kubernetes

k8s
k8s

Камера медленно приближается к темному переулку, где в тумане маячит силуэт. Голос за кадром, с легким лондонским акцентом, начинает рассказ:

"Значит, слушай сюда, дружок. У тебя есть куча подонков — подонков, которые зовутся подами. Они все хотят своего кусочка ресурсов: CPU, память, сеть — всё, что угодно. Но тут, понимаешь, появляется Он. Планировщик. Хладнокровный, расчетливый, с алгоритмом, который знает, кто, где и когда получит свой удар. Он как тот парень в баре, который всегда знает, кто за кем стоит, и кто кому должен.

Он берет эти поды, смотрит на их запросы, на узлы, которые свободны, и решает, кто куда пойдет. Round Robin, Least Requested, Priority Queue — это всё его инструменты, как у Шерлока. Никаких эмоций, только холодная логика. И если ты думаешь, что можешь его обмануть, то, дружок, ты ошибаешься. Он всегда на шаг впереди.

Так что, если ты вдруг решишь запустить свой под в этом городе, помни: Планировщик уже знает, где ты будешь жить. И если ты не вписываешься в его план, то, увы, тебя ждет только одно — Eviction. И это, друг мой, не шутки."

Камера отъезжает, показывая огромный кластер узлов, где каждый под занимает свое место, как в идеально спланированной афере.

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

Теги:
Всего голосов 4: ↑0 и ↓4-4
Комментарии2

Время собирать k8s

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

Чтобы решить эту проблему, я решил создать переиспользуемый шаблон для сборки Kubernetes, используя сам Kubernetes в качестве фермы для сборки.
Этот шаблон, описанный в документации kube-buildx-farm.md, предоставляет структурированный способ настройки и управления фермой для сборки на основе Kubernetes.

Как всегда все лампово, модульно и удобно:

tool
tool

Быстрые сборки ускоряют разработку и обратную связь, а герметичные — обеспечивают воспроизводимость и надежность, исключая ошибки из-за внешних зависимостей. Это один из ключевых моментов при конструировании CI/CD.

Теги:
Рейтинг0
Комментарии0

Bazel и Gradle используют Directed Acyclic Graph (DAG, направленный ациклический граф) для управления задачами сборки и зависимостями между ними. Вот краткое описание того, как каждый из этих инструментов использует DAG:

DAG
DAG

Визуализация работы DAG в стиле 3blue1brown feat Eurodance

Bazel

Bazel строит граф зависимостей, где узлы представляют собой цели (targets), такие как исходные файлы, библиотеки или бинарные файлы, а ребра обозначают зависимости между ними. Этот граф используется для:

  1. Определения порядка выполнения задач: Bazel анализирует граф, чтобы понять, какие задачи могут быть выполнены параллельно, а какие должны ждать завершения других.

  2. Инкрементальной сборки: Bazel использует граф для определения измененных частей кода и пересборки только тех компонентов, которые зависят от этих изменений.

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

Gradle

Gradle также использует DAG для управления задачами сборки. В Gradle:

  1. Задачи (tasks) представляют собой узлы графа, а зависимости между задачами — ребра.

  2. Планирование выполнения: Gradle анализирует граф, чтобы определить порядок выполнения задач, учитывая их зависимости.

  3. Инкрементальная сборка: Gradle использует граф для отслеживания изменений и выполнения только тех задач, которые зависят от измененных входных данных.

  4. Параллельное выполнение: Gradle может выполнять независимые задачи параллельно, основываясь на структуре графа.

Общее

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

Такие сложные инструменты как Bazel и Gradle можно как в биологии отнести к «инвазивным видам». Особенно если речь идет о Bazel.

То есть он решает несколько очень важных проблем, но при этом все проекты в которых он используется необходимо реструктуризовать под требования Bazel.

Если проводить аналогию с ERP, то Bazel это как SAP. Мощная система, которая позволяет решить большое количество проблем бизнеса, но при этом все бизнес-процессы в компании нужно будет адаптировать под требования SAP.

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

Главные фичи которые есть у Bazel это удаленное кэширование и распределенные сборки, можно реализовать своими силами и лучше чем это реализовано в Bazel.

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Для Kubernetes есть несколько инструментов для непрерывного развертывания (Сontinuous Deployment): ArgoCD, FluxCD и Spinnaker. Все не будем перечислять, хотя проектов enterprise не так много. И есть, конечно DIYs

Spinnaker – это как дредноут из «Звездных Войн» – там есть все под любые use-кейсы требования. Для канареечных релизов ему не нужен service mesh или Flagger. Spinnaker работает с AWS, GCP, Azure, OpenStack, Kubernetes.

Spinnaker
Spinnaker

ArgoCD  – гораздо легче и маневренее, как легкий крейсер, который проще в установке и обслуживании, но при этом имеет ряд ограничений:

Ориентация на Kubernetes: Argo CD заточен исключительно под Kubernetes и не поддерживает развертывание ресурсов за его пределами (например, облачные сервисы AWS, GCP или базы данных). Для управления такими ресурсами требуется интеграция с дополнительными инструментами, такими как Terraform или Crossplane.

Отсутствие встроенных стратегий развертывания: Argo CD не предоставляет встроенных механизмов для сложных стратегий развертывания, таких как canary или blue/green. Для их реализации необходимо использовать сторонние инструменты, например, Istio или Flagger.

Сложность управления большим количеством приложений: При работе с сотнями или тысячами приложений управление через Argo CD может стать сложным. Хотя ApplicationSets помогают решить эту проблему, они требуют дополнительной настройки и могут усложнить конфигурацию.

То же самое касается Flagger:

Ориентация на Kubernetes: Flux CD, как и Argo CD, ориентирован исключительно на Kubernetes и не поддерживает управление ресурсами вне кластера (например, облачные сервисы AWS или базы данных). Для таких задач требуется интеграция с дополнительными инструментами, такими как Terraform или Crossplane.
Отсутствие встроенного UI: Flux CD не предоставляет графического интерфейса (UI) для управления развертываниями, что может усложнить мониторинг и отладку для команд, привыкших к визуальным инструментам. В отличие от Argo CD, Flux CD полагается на CLI и логи.
Ограниченная поддержка сложных стратегий развертывания: Flux CD не имеет встроенных механизмов для сложных стратегий развертывания, таких как canary или blue/green. Для их реализации требуется интеграция с дополнительными инструментами, например, Flagger или Istio.

Ну и есть еще конечно DIY – делаем все сами. Есть ряд крупных организаций с особенными требованиями, для которых этот подход является оптимальным. Не обязательно для этого быть Google или Meta – любая организация со сложной внутренней структурой требует особого подхода, плясать нужно от требований бизнеса, а не от возможностей продукта. Только делать DIY для решения таких сложных задач, нужно не на Ansible и Groovy – но об это как-нибудь в следующий раз.

Теги:
Всего голосов 1: ↑1 и ↓0+2
Комментарии0

Добавили новую версию Kubernetes v1.32.1

Все актуальное в нашем managed Kubernetes. Обновили прошлые версии и добавили две новые — v1.32.1+k0s.0 и v1.31.5+k0s.0. Главное:

Kubernetes v1.32.1

Эта версия значительно апгрейднула управление ресурсами на уровне подов. Теперь там можно отправлять запросы и задавать лимиты ресурсов, что помогает динамически балансировать нагрузку во всем пуле. Полезно для проектов, где запросы мощностей постоянно меняются.

Также теперь в статусе подов можно отслеживать состояние аппаратных ресурсов. Мониторинг на раз-два + быстрое устранение неполадок.

Kubernetes v1.31.5

А тут у нас полезный патч-релиз, — с фиксом ошибок и улучшением стабильности.

Бонус-трек

Доработали Куб и выкатили еще несколько прикольных релизов. Во-первых, в список кластеров вшили ссылки на доку, а на виджет в дашборде вывели отображение лимита воркер-нод.

А еще — теперь можно скачивать файл с конфигом прямо со страницы со списком кластеров.

Затестить новую версию Куба →

Теги:
Всего голосов 7: ↑7 и ↓0+9
Комментарии0

Подключайтесь к воркшопу по Kubernetes

Через 10 минут, в 16:00 мск, начинаем воркшоп «Как развернуть приложение в кластере Managed Kubernetes на выделенном сервере». Узнайте, как повысить производительность сервиса и сократить расходы на IT-инфраструктуру до 40%.

Смотреть на YouTube →

Смотреть во ВКонтакте →

На эфире дадим пошаговый план действий, который позволит сделать выделенные серверы частью экосистемы облачной платформы.

  • Создадим кластер Managed Kubernetes на выделенных серверах через личный кабинет.

  • Настроим кластер и ресурсы, выберем подходящую конфигурацию выделенного сервера.

  • Покажем, как управлять кластером через панель управления.

  • Развернем в кластере тестовое приложение.

  • Опубликуем его и посмотрим, как облачный балансировщик будет работать вместе с выделенными серверами.

  • Создадим облачную базу данных DBaaS и покажем, как она связана с приложением, которое работает на выделенных серверах.

Подключиться к трансляции →

Теги:
Всего голосов 7: ↑7 и ↓0+11
Комментарии0

Если использовать в CI/CD (Jenkins, GitLab), воркеры с GraalVM (Вместо JRE) и Maven/Gradle, то можно ускорить сборку и тестирование Java приложений, примерно на 40%.

Я написал «фреймворк» специально для автоматизации создания базовых образов Docker под различные рантаймы.

https://github.com/avkcode/container-tools

Spring и Graal кстати отлично подходят друг для друга.

Теги:
Рейтинг0
Комментарии0

Усиливаем Kubernetes новыми дополнениями

Добавили еще два новых приложения в маркетплейсе Kubernetes — Velero и Fluent Operator. Рассказываем о пользе каждого:

1. Velero — мощный инструмент для резервного копирования и восстановления кластеров Kubernetes. С этим допом можно легко создавать бэкапы и восстанавливать данные в случае сбоя или при миграции.

Кстати, у нас в доке описан отличный кейс связки Velero c бакетами S3 для хранения резервных копий. Вот, попробуйте настроить →

2. Fluent Operator, в свою очередь, упрощает сбор, обработку и отправку логов с помощью Fluent Bit и Fluentd. А это дает вашим проектам больше гибкости и масштабирования для работы с большими объемами данных.

А еще Fluent Operator упрощает интеграцию с Elasticsearch, Loki, Kafka, Prometheus и другими инструментами.

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

Поставить допы на свой кластер →

Теги:
Всего голосов 6: ↑6 и ↓0+8
Комментарии0

Это задачка для DevOps-инженера: почему ArgoCD не расшифровывал секреты из Vault

Нашему DevOps-специалисту Антону нужно было развернуть helm-чарт для Airflow с использованием ArgoCD. Как известно, ArgoCD реализует концепцию GitOps и подразумевает хранение манифестов в репозитории. Но часть данных в values чувствительна, например пароль от базы данных PostgreSQL. Поэтому неплохо было бы вынести эти данные в хранилище секретов (в этом случае — HashiCorp Vault), чтобы скрыть информацию от лишних глаз.

Есть несколько способов подтянуть секреты из Vault в поды. Наиболее предпочтительный по ряду причин — vault-injector. В обычной ситуации Антон бы воспользовался им, но в случае с helm-чартом Airflow задача показалась непростой. Поэтому он решил воспользоваться менее предпочтительным, но точно рабочим (как думал Антон) вариантом с ArgoCD Vault Plugin.

Какая вылезла проблема

Когда секреты были добавлены в хранилище, а ArgoCD Application написан, Антон попытался развернуть его для теста. Вот примерный Application, с которым это делалось (весомая часть пропущена для компактности):

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
 name: airflow
 labels:
   app.kubernetes.io/name: airflow
   app.kubernetes.io/component: airflow
 namespace: argocd
 finalizers:
   - resources-finalizer.argocd.argoproj.io
spec:
 project: default
 destination:
   namespace: some-namespace
   name: cluster
 source:
   repoURL: "airflow_repo_url"
   targetRevision: "revision"
   chart: airflow
   plugin:
     name: argocd-vault-plugin-helm
     env:
       - name: HELM_VALUES
         value: |
             ...
             metadataConnection:
               user: user
               pass: <path:path/to/airflow/secrets#postgres_password>
               protocol: postgresql
               host: postgres.db.url
               port: 5432
               db: airflow_db
               sslmode: prefer
             ...
   
 syncPolicy:
   automated:
     prune: true
     selfHeal: true
   syncOptions:
     - Validate=true
     - CreateNamespace=true

Ничего необычного, за исключением прокидывания values прямо из Application и того самого секрета. А еще — компонент webserver отказался запускаться, ссылаясь на невозможность подключиться к базе данных. Хотя данные были абсолютно точно правильными.

В чем итоге была проблем и как Антон с ней справился, читайте в статье →

Теги:
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Как сэкономить на IT-инфраструктуре? Дадим план действий на вебинаре

Привет, Хабр! 29 января в 12:00 проведем вебинар «Cloud или Bare Metal: где лучше запускать кластеры Kubernetes?». Обсудим, как сократить расходы на инфраструктуру до 40%. Присоединяйтесь!

Участвовать →

О чем вебинар

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

«Что получится, если совместить мощность и безопасность выделенных серверов с гибкостью Kubernetes? Поговорим про производительность, эффективное управление ресурсами и снижение расходов у клиентов нового продукта Selectel Kubernetes on Bare Metal. До встречи!»

Сергей Ковалёв, спикер вебинара и менеджер выделенных серверов в Selectel

Кому будет особенно полезно?

  • DevOps-инженерам и SRE-инженерам;

  • Разработчикам и руководителям IT-проектов;

  • Системным администраторам и архитекторам;

  • Всем, кто работает с орекстраторами.

Ключевые темы

Managed Kubernetes на Bare Metal

Поговорим о преимуществах использования нового сервиса Selectel. Расскажем, для каких задач он подойдет.

Выделенные серверы, их особенности и преимущества

Раскроем карты и покажем самые популярные и выгодные конфигурации серверов для развертывания кластеров Kubernetes.

Пошаговое создание кластера Managed Kubernetes на выделенных серверах

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

Задавайте вопросы — спикеры ответят на них в прямом эфире. За лучший вопрос подарим подарок от Selectel!

До встречи 29 января в 12:00.

Регистрация →

Теги:
Всего голосов 8: ↑8 и ↓0+11
Комментарии0

Skypilot - над облаками

Ребята из UC Berkeley с 2009 года развивают фреймворк «Sky computing», который обеспечивает устойчивое и экономически эффективное обучение AI/ML в облачных средах и разных регионах.

Концептуально все расписано в статье:
The Sky Above The Clouds

Но на самом деле все это сводится к простой максиме:

Есть бюджет сложности и бюджет ошибок. Можно израсходовать ресурс на инфраструктуру, и тогда на разработку и продукт ничего не останется.

Современная облачная инфраструктура, зачастую непростительно расточительна на ресурсы (не только аппаратные, но и человеческие) и , совершенно, без нужды переусложнена.

Для обычного веб-приложения или AI/ML пайплайна, может понадобится стек технологий состоящий из тысяч различных компонентов, которые постоянно меняются и обновляются.

На месте этой подпорки мог бы быть xz или OpenSSL...
На месте этой подпорки мог бы быть xz или OpenSSL...

Skypilot это прослойка (облачный брокер как называют его авторы) которая абстрагирует разницу между API различных облачных провайдеров, Kubernetes, VMware vSphere API.

На самом деле, достаточно простое приложение написанное на Python, которое позволяет быстро разворачивать и мигрировать AI/ML пайплайны на различных платформах.

Можно без лишних хлопот развернуть одну из последних моделей на своей инфраструктуре.

x3 Control Plane
Процессор
Intel Core i3-12100
3.3 ГГц, 4 ядра
Память
32 ГБ DDR4 ECC

x3 Worker
Процессор
Intel Core i9-14900KS
3.2 ГГц, 24 ядра
Видеокарта
RTX 4090 24 ГБ VRAM
Память
128 ГБ DDR5 non-ECC

Qwen2.5-72b-instruct это одна из лучших открытых моделей для генерации кода. Для нормальной работы понадобится по крайней мере 96Gb VRAM.

Для работы skypilot необходим socat:

sudo apt install socat

Skypilot так же прост в установке и настройке, как и в использовании:

git clone https://github.com/skypilot-org/skypilot.git
cd skypilot

pip install -e ".[kubernetes]"

Проверяем установку:

sky check

![[Pasted image 20250117214832.png]]

qwen25-72b.yaml:

cat << 'EOF' | sky launch -c qwen -
envs:
  MODEL_NAME: Qwen/Qwen2.5-72B-Instruct

service:
  readiness_probe:
    path: /v1/chat/completions
    post_data:
      model: $MODEL_NAME
      messages:
        - role: user
          content: Hello! What is your name?
      max_tokens: 1
    initial_delay_seconds: 1200
  replicas: 3

resources:
  disk_size: 1024
  disk_tier: best
  memory: 32+
  ports: 8000

setup: |
  pip install vllm==0.6.1.post2
  pip install vllm-flash-attn

run: |
  export PATH=$PATH:/sbin
  vllm serve $MODEL_NAME \
    --host 0.0.0.0 \
    --tensor-parallel-size $SKYPILOT_NUM_GPUS_PER_NODE \
    --max-model-len 1024 | tee ~/openai_api_server.log
EOF
sky serve up -n qwen ./serve-72b.yaml

Можно установить GUI:

sky launch -c qwen-gui ./gui.yaml --env ENDPOINT=$(sky serve status --endpoint qwen)

Skypilot далек от идеала, но он построен на правильных принципах:

Простой CLI интерфейс и DSL скрывают от инженеров сложность позволяя быстро вводить в работу ML команды.

Разработчики не должны знать ничего о Helm чартах, модулях Terraform, плейбуках Ansible. Deploy должен происходить «по кнопке», причем не имеет значения будет это «merge» в SCM или «ручка» в CI, потому что GitOps не является целью, главное – это результат. А если это необходимо можно заменить любой из этих инструментов кастомной автоматизацией.

Теги:
Рейтинг0
Комментарии0

Приглашаем на бесплатные вебинары, посвященные K8s🎓 

1. «Быстрое погружение в основы Kubernetes» — для тех, кто хочет понять технологию контейнерных приложений и начать с ней работать. На встрече разберемся с теорией: что такое контейнеры, какие основные компоненты есть у Kubernetes и для чего они нужны. Знаний будет достаточно, чтобы начать развиваться в направлении DevOps.

Программа вебинара:

  • чем микросервисная архитектура отличается от монолитной;

  • контейнеры — основа микросервисной архитектуры;

  • зачем нужен Kubernetes;

  • как устроен кластер Kubernetes.

Будет полезно тем, кто задумывается о переезде в облако и планирует узнать о нем больше. А также тем, кто планирует начать погружаться в DevOps в общем или в Kubernetes в частности.

📅 Когда: 21 января в 11:00 мск

📍 Где: онлайн

👉 Зарегистрироваться

2. «Как развернуть кластер Kubernetes за несколько кликов» — в прямом эфире покажем, как развернуть простое приложение в кластере Kubernetes в облаке Cloud.ru Evolution и сэкономить ресурсы, используя K8s как PaaS-сервис.

Программа вебинара:

  • обзор сервиса Evolution Managed Kubernetes;

  • демо развертывания кластера;

  • подключение к кластеру с помощью kubectl;

  • развертывание WordPress в кластере;

  • разбор нюансов управления кластером, развернутым как PaaS-сервис.

Будет интересно разработчикам, DevOps-инженерам, архитекторам облачных решений и всем, кто работает с Kubernetes (K8s).

📅 Когда: 23 января в 11:00 мск

📍 Где: онлайн

👉 Зарегистрироваться

Если у вас есть вопросы по теме, их можно оставить в комментариях под этим постом или задать в процессе встречи. Спикер вебинаров Илья Смирнов — архитектор решений, ответит на них в прямом эфире.

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Подборка вебинаров про работу с Kubernetes 🗃️

Всем привет! Мы начинаем подводить итоги 2024 года 🎄. 

В этом году в Cloud.ru прошло целых 40 бесплатных вебинаров про эффективную миграцию в облако, создание облачной инфраструктуры, настройку сервисов, работу с данными и снижение затрат на обслуживание. Дальше — больше!

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

А в комментариях пишите 👇 — вебинары по каким темам вам будет интересно посмотреть в следующем году? 

Теги:
Рейтинг0
Комментарии0

Ежемесячный дайджест: новое за ноябрь🌥️

📺 Провели вебинары:

🛍️ Добавили универсальные решения для мониторинга и визуализации данных на Маркетплейсе Cloud.ru: Grafana, Kibana и Prometheus. Их совместное использование поможет быстро реагировать на любые изменения и неполадки в IT-инфраструктуре.

⚙️ Поделились обновлениями сервисов на наших облачных платформах в дайджесте на сайте. Например, в Evolution Managed Kubernetes теперь можно выбрать: 

💼 В новых кейсах рассказали, как:

💸 Предлагаем зарабатывать вместе с Cloud.ru: присоединяйтесь к реферальной программе, рекомендуйте наши облачные сервисы клиентам, коллегам или друзьям и получайте вознаграждение 15%. Участвовать могут не только юридические лица и ИП, но и физические лица, а также самозанятые.

До встречи в следующем году!

Теги:
Всего голосов 1: ↑1 и ↓0+3
Комментарии0

🖖Привет, Хабр! Наша команда готовит видео о развёртывании Kubernetes на базе физического сервера. Стремимся выжать из темы максимум пользы, поэтому нам нужна ваша помощь: хотим узнать, что вам было бы интересно послушать по этой теме. 

Будем рады, если вы напишите свои вопросы либо в комментариях под этим постом, либо в этой гугл-форме

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

Большое спасибо! 

Теги:
Всего голосов 2: ↑2 и ↓0+2
Комментарии0

Подключайтесь к вебинару «Автомасштабирование K8s в ноль: от базы до хардкора».

📅 Когда: 12 декабря в 11:00 мск

📍 Где: онлайн

Автомасштабирование кластера Kubernetes и масштабирование подов помогают быстро расширить облачные ресурсы при пиковых нагрузках. Но иногда классических подходов недостаточно, и кластер необходимо масштабировать по событиям от внешних систем. 

На вебинаре вы узнаете, что делать, если триггер масштабирования кластера не утилизация, а события от внешних систем, например, сообщений Kafka или платформы CI/CD. Архитектор решений Илья Смирнов покажет, как запустить приложение с учетом внешних систем, расскажет о классических подходах автомасштабирования, а также, как масштабировать кластер по событиям с помощью KEDA (Kubernetes-based Event Driven Autoscaler).

Будет интересно разработчикам, DevOps-инженерам и архитекторам облачных решений.

👉 Зарегистрироваться

Если у вас есть вопросы по теме, их можно оставить в комментариях под этим постом или задать на самом вебинаре — спикер ответит на них в прямом эфире. 

Теги:
Рейтинг0
Комментарии0

Чем больше знаний о Kubernetes — тем громче оркестр: Orion soft запустил спецпроект с ИИ-генерацией музыки

Привет! Наша команда Nova Container Platform запустила спецпроект, в котором можно проверить свои знания о Kubernetes. Мы создали виртуальный оркестр, который играет разные мелодии в зависимости от вашего количества правильных ответов.

Уникальные композиции нам помог сгенерировать ИИ. Музыкальные партии можно услышать в разных комбинациях — от соло до совместной игры всех «участников» оркестра. Каждый правильный ответ о Kubernetes открывает новый инструмент и дает возможность получить звание «гуру дирижирования ИТ-инфраструктурой».

Услышать виртуальный оркестр могут все, кто участвует в проекте Nova Container Platform по проверке знаний. Все участники получат полезные чек-листы по работе с кубером. А победителей ждут крутые призы: электрогитара, эксклюзивный мерч и книга «Внедрять нельзя откладывать. Карта рынка ИТ-инфраструктуры».

Теги:
Всего голосов 6: ↑6 и ↓0+10
Комментарии0

Обновили KaaS: теперь с Kubernetes 1.31

Мы обновили KaaS от Рег.ру и добавили поддержку Kubernetes 1.31. Публикуем мини-обзор ключевых преимуществ новой версии.

Собственные профили в kubectl debug

Теперь пользователи могут создавать собственные профили для дебага. Это ускоряет процесс отладки и делает его более удобным.

Случайный выбор подов при даунскейлинге ReplicaSet’а

В этом релизе добавили алгоритм случайного выбора Pod’а при уменьшении количества реплик в ReplicaSet. Это способствует более равномерному распределению нагрузки.

VolumeAttributesClass ModifyVolume

API VolumeAttributesClass даёт возможность изменять динамические параметры томов — например, I/O. Это позволяет приложениям увеличивать размеры томов онлайн, что помогает лучше сбалансировать затраты и производительность.

Поддержка использования образов в качестве вольюмов

Внедрили поддержку образов и артефактов, совместимых с Open Container Initiative (OCI), в качестве источников для вольюмов. Пользователи могут указывать ссылку на образ в Pod и монтировать его как том в контейнерах.

Более точное управление SupplementalGroups

Добавлено новое поле SupplementalGroupsPolicy в API для контроля дополнительных групп, назначаемых первому процессу в контейнере. Это позволит администраторам точнее настраивать политики безопасности и избежать неожиданного обхода SupplementalGroups, а пользователи смогут определять фактические группы, назначенные процессам в контейнерах.

Протестировать KaaS от Рег.ру и заказать услугу можно на сайте.

Теги:
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Ежемесячный дайджест: главные новости за октябрь☂️

🦾 Провели хардкорную IT-конференцию про внутрянку облачных решений и русского AI — GoCloud Tech. Как это было и что говорили участники читайте в статье и смотрите доклады в записи.

🌾 Развернули IT-инфраструктуру в полях… в нашем новом ролике! Как широки просторы для ваших идей в Сloud.ru смотрите на YouTube, на RuTube или в VK.

🔥 Предлагаем Evolution Managed Kubernetes по специальной цене — подключите сервис до 30 ноября 2024 года и используйте со скидкой 60% до конца 2025 года.

⚙️ Увеличили бесплатный объем хранилища Evolution Object Storage — его хватит, чтобы загрузить медиафайлы, бэкапы или архивы. А про опыт тех, кто уже запустил проект в облаке с помощью бесплатных ресурсов Evolution free tier, читайте в статье.

📺 Приглашаем на вебинары:

🔎 Поделились обновлениями наших облачных платформ в дайджесте на сайте. Анонсировали сервисы Evolution Bare Metal, Evolution Artifact Registry, Evolution Managed PostgreSQL и не только — заглядывайте.

🎓 На вебинаре рассказали про новые бесплатные курсы по основам облачных технологий и сертификацию. Обсудили, зачем изучать облачные сервисы, как устроено обучение на курсах Cloud.ru, что дает электронный бейдж и как может помочь в построении карьеры. 

До встречи в декабре!

Теги:
Рейтинг0
Комментарии0

Подключайтесь к вебинару «Быстрое погружение в основы Kubernetes на практике».

📅 Когда: 12 ноября в 11:00 мск

📍 Где: онлайн

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

Программа вебинара:

  • зачем нужен Kubernetes;

  • как устроен кластер Kubernetes;

  • развернем приложение в кластере.

Будет полезно тем, кто задумывается о переезде в облако и планирует узнать о нем больше. А также тем, кто планирует начать погружаться в DevOps в общем или в Kubernetes в частности или уже использует облачные технологии и хочет задать вопрос эксперту по своей задаче.

👉 Зарегистрироваться

А еще сейчас вы можете подключить Evolution Managed Kubernetes и пользоваться сервисом со скидкой 60% до конца 2025 года.

Оставляйте вопросы по теме в комментариях под этим постом 👇 — спикеры ответят на них в процессе встречи. 

Теги:
Рейтинг0
Комментарии0

Работа

DevOps инженер
27 вакансий