k8s #1
93
README.md
93
README.md
@@ -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
|
||||
- **Preset система** для быстрого выбора окружений тестирования
|
||||
- **Мультиплатформенное тестирование** (Ubuntu, Debian, CentOS, AlmaLinux, RHEL и другие)
|
||||
- **Автоматическая проверка** синтаксиса Ansible ролей
|
||||
- **Управление секретами** через Ansible Vault
|
||||
- **Готовые Docker образы** для разных ОС
|
||||
- **Kubernetes Kind кластеры** для тестирования в среде Kubernetes
|
||||
- **Автоматическая установка аддонов** (Istio, Prometheus, Grafana, Kiali и другие)
|
||||
|
||||
### 🐳 Docker
|
||||
- **Готовые 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
|
||||
```
|
||||
|
||||
### 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
|
||||
@@ -505,7 +544,51 @@ make custom-images # справка по собственным
|
||||
|
||||
### 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 образы
|
||||
|
||||
|
||||
Reference in New Issue
Block a user