docs: обновлено описание проекта DevOpsLab с учетом K8s
Some checks failed
Ansible Testing / lint (push) Has been cancelled
Ansible Testing / test (default) (push) Has been cancelled
Ansible Testing / test (minimal) (push) Has been cancelled
Ansible Testing / test (performance) (push) Has been cancelled
Ansible Testing / deploy-check (push) Has been cancelled

- Расширено описание проекта - теперь это DevOps платформа
- Добавлены ключевые компоненты: Ansible, Docker, Kubernetes
- Структурированы возможности по категориям:
  * Ansible (автоматизация)
  * Docker (контейнеризация)
  * Kubernetes (оркестрация)
- Добавлен раздел быстрого старта для K8s
- Расширен раздел Kubernetes с:
  * Основными командами
  * Доступными аддонами
  * Путями доступа к сервисам
This commit is contained in:
Сергей Антропов
2025-10-26 12:44:20 +03:00
parent d8e1052e7b
commit a56de6183a

View File

@@ -6,18 +6,36 @@
## 📋 Описание ## 📋 Описание
DevOpsLab - это универсальная система для разработки, тестирования и развертывания Ansible ролей с использованием Docker, Molecule и preset конфигураций. Система поддерживает тестирование на различных ОС через Docker контейнеры. DevOpsLab - это универсальная DevOps платформа для разработки, тестирования и развертывания инфраструктуры. Система объединяет Ansible роли, Docker контейнеры и Kubernetes кластеры в единую среду для автоматизации и управления инфраструктурой.
**Ключевые компоненты:**
- **Ansible** - автоматизация конфигурации и развертывания
- **Docker** - контейнеризация для изоляции и переносимости
- **Molecule** - тестирование Ansible ролей
- **Kubernetes (Kind)** - локальные K8s кластеры для разработки
- **Multi-arch поддержка** - сборка для amd64 и arm64 архитектур
## ✨ Ключевые возможности ## ✨ Ключевые возможности
### 🔧 Ansible
- **Тестирование ролей** через Molecule с Docker - **Тестирование ролей** через Molecule с Docker
- **Preset система** для быстрого выбора окружений тестирования - **Preset система** для быстрого выбора окружений тестирования
- **Мультиплатформенное тестирование** (Ubuntu, Debian, CentOS, AlmaLinux, RHEL и другие) - **Мультиплатформенное тестирование** (Ubuntu, Debian, CentOS, AlmaLinux, RHEL и другие)
- **Автоматическая проверка** синтаксиса Ansible ролей - **Автоматическая проверка** синтаксиса Ansible ролей
- **Управление секретами** через Ansible Vault - **Управление секретами** через Ansible Vault
- **Готовые Docker образы** для разных ОС
- **Kubernetes Kind кластеры** для тестирования в среде Kubernetes ### 🐳 Docker
- **Автоматическая установка аддонов** (Istio, Prometheus, Grafana, Kiali и другие) - **Готовые Docker образы** для разных ОС с поддержкой systemd
- **Multi-arch сборка** (amd64, arm64)
- **Автоматическая публикация** в Docker Hub
- **Контейнеры для тестирования** Ansible ролей
### ☸️ Kubernetes
- **Kind кластеры** для локального тестирования
- **Автоматическая установка аддонов** (Istio, Prometheus, Grafana, Kiali, Ingress, Metrics Server)
- **Управление через Helm** и Kubernetes манифесты
- **Port-forward** для доступа к сервисам
- **Детальный мониторинг** состояния кластера
## 📁 Структура проекта ## 📁 Структура проекта
@@ -111,6 +129,27 @@ make role lint docker
make role lint ping make role lint ping
``` ```
### 4. Работа с Kubernetes
```bash
# Создание Kind кластера с аддонами
make k8s create kubernetes
# Статус кластера (детальный отчет)
make k8s status kubernetes
# Создание port-forward для доступа к сервисам
make k8s portforward create
# Установка Helm чарта
make k8s helm apply kubernetes nginx bitnami/nginx
# Удаление кластера
make k8s destroy kubernetes
```
**Подробная документация:** [docs/kubernetes-kind.md](docs/kubernetes-kind.md)
## 📚 Доступные роли ## 📚 Доступные роли
### Docker ### Docker
@@ -505,7 +544,51 @@ make custom-images # справка по собственным
### Kubernetes ### Kubernetes
- **[docs/kubernetes-kind.md](docs/kubernetes-kind.md)** - Документация по работе с Kind кластерами **Полная документация:** [docs/kubernetes-kind.md](docs/kubernetes-kind.md)
DevOpsLab предоставляет полную поддержку локальных Kubernetes кластеров на базе Kind:
#### Основные команды
```bash
# Создание кластера с аддонами
make k8s create kubernetes
# Детальный статус кластера
make k8s status kubernetes
# Управление port-forward
make k8s portforward create
make k8s portforward list
make k8s portforward clear
# Работа с Helm
make k8s helm apply kubernetes nginx bitnami/nginx
make k8s helm list kubernetes
make k8s helm delete kubernetes nginx
# Работа с манифестами
make k8s manifest apply kubernetes https://example.com/app.yaml
# Удаление кластера
make k8s destroy kubernetes
```
#### Доступные аддоны
- **Ingress NGINX** - маршрутизация трафика
- **Metrics Server** - сбор метрик
- **Istio** - Service Mesh
- **Prometheus Stack** - мониторинг (Prometheus + Grafana)
- **Kiali** - визуализация Service Mesh
#### Доступ к сервисам
- **Grafana**: http://localhost:3000 (admin/admin)
- **Prometheus**: http://localhost:9090
- **Kiali**: http://localhost:20001
- **Ingress HTTP**: http://localhost:8081
- **Ingress HTTPS**: https://localhost:8443
## 🐳 Docker образы ## 🐳 Docker образы