Описание

DevOpsLab - это универсальная DevOps платформа для разработки, тестирования и развертывания инфраструктуры. Система объединяет Ansible роли, Docker контейнеры и Kubernetes кластеры в единую среду для автоматизации и управления инфраструктурой.

Ключевые компоненты:

  • Ansible - автоматизация конфигурации и развертывания
  • Docker - контейнеризация для изоляции и переносимости
  • Molecule - тестирование Ansible ролей
  • Kubernetes (Kind) - локальные K8s кластеры для разработки
  • Multi-arch поддержка - сборка для amd64 и arm64 архитектур

Ключевые возможности

Ansible

  • Тестирование ролей через Molecule с Docker
  • Preset система для быстрого выбора окружений тестирования
  • Мультиплатформенное тестирование (Ubuntu, Debian, CentOS, AlmaLinux, RHEL, Alt Linux, Astra Linux и другие)
  • Автоматическая проверка синтаксиса Ansible ролей
  • Управление секретами через Ansible Vault
  • Универсальная роль devops для настройки пользователей и SSH ключей
  • Автоматическое определение ОС и применение соответствующих конфигураций

Docker

  • Готовые Docker образы для разных ОС с поддержкой systemd
  • Multi-arch сборка (amd64, arm64)
  • Автоматическая публикация в Docker Hub
  • Контейнеры для тестирования Ansible ролей

Kubernetes

  • Kind кластеры для локального тестирования
  • Автоматическая установка аддонов (Istio, Prometheus, Grafana, Kiali, Ingress, Metrics Server)
  • Управление через Helm и Kubernetes манифесты
  • Port-forward для доступа к сервисам
  • Детальный мониторинг состояния кластера

Preset система

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

Базовые

  • default - Стандартный preset (2 хоста: Ubuntu + Debian)
  • minimal - Минимальный preset (1 хост: Debian)
  • cod - COD preset (6 хостов: Ubuntu + Debian + Alt + Astra + CentOS + RHEL) - ARM64
  • test - Базовый тест (2 хоста)
  • stable - Стабильные ОС (4 хоста)
  • standart - Стандартный набор (4 хоста)
  • mytest - Кастомный preset (3 хоста)

По ОС

  • Ubuntu: ubuntu20, ubuntu22, ubuntu24, ubuntu-all (все версии)
  • Debian: debian9, debian10, debian11, debian12, debian-all (все версии)
  • CentOS: centos7, centos8, centos9, centos-all (все версии)
  • Российские ОС: alt9, alt10, astra-linux, redos (ARM64 поддержка)

Специализированные

  • all-images - Все образы (16 хостов) - полное покрытие всех ОС
  • multi-os - Multi-OS тестирование (8 хостов разных ОС)
  • docker-full - Docker тестирование (4 хоста)
  • docker-test - Базовое Docker тестирование (2 хоста)
  • etcd-patroni - ETCD + Patroni кластер (4 хоста)
  • performance - Тест производительности (8 хостов)
  • security - Тест безопасности (6 хостов)