feat: Добавлены пресеты для различных сценариев тестирования (1-20 машин)
- Создано 10 готовых пресетов для разных типов инфраструктуры - Минимальная лаборатория (1-3 машины) - базовое тестирование - Веб-приложение (3-5 машин) - классическая архитектура - Микросервисы (5-8 машин) - современная архитектура - Высокая доступность (6-10 машин) - отказоустойчивость - Kubernetes кластер (8-12 машин) - контейнерная оркестрация - CI/CD пайплайн (10-15 машин) - автоматизация разработки - Big Data кластер (12-18 машин) - обработка больших данных - Service Mesh (15-20 машин) - микросервисная архитектура - Enterprise (18-20 машин) - корпоративная инфраструктура - Максимальный (20 машин) - экстремальные условия Каждый пресет включает: - Подробное описание архитектуры - Различные группы хостов (webservers, databases, monitoring) - Смешанные семейства ОС (debian/rhel) - Настроенные порты и сервисы - Готовые команды для запуска Документация: - README с описанием всех пресетов - Примеры использования - Рекомендации по выбору - Troubleshooting Автор: Сергей Антропов Сайт: https://devops.org.ru
This commit is contained in:
88
molecule/presets/ha.yml
Normal file
88
molecule/presets/ha.yml
Normal file
@@ -0,0 +1,88 @@
|
||||
---
|
||||
# ПРЕСЕТ: Высокая доступность (6-10 машин)
|
||||
#
|
||||
# Описание: Кластер высокой доступности с репликацией и отказоустойчивостью
|
||||
# - 2 веб-сервера (nginx) - активный/резервный
|
||||
# - 2 базы данных (PostgreSQL) - мастер/слейв репликация
|
||||
# - 2 кэш-сервера (Redis) - кластер с репликацией
|
||||
# - 1 балансировщик (HAProxy) - с проверками здоровья
|
||||
# - 1 мониторинг (Prometheus) - контроль состояния
|
||||
# - 1 резервный мониторинг (Grafana) - визуализация
|
||||
#
|
||||
# Использование: make lab-test SCENARIO=universal LAB_SPEC=molecule/presets/ha.yml
|
||||
#
|
||||
# Автор: Сергей Антропов
|
||||
# Сайт: https://devops.org.ru
|
||||
|
||||
docker_network: labnet
|
||||
|
||||
images:
|
||||
debian: "ghcr.io/ansible-community/molecule-ubuntu-systemd:jammy"
|
||||
rhel: "quay.io/centos/centos:stream9-systemd"
|
||||
|
||||
systemd_defaults:
|
||||
privileged: true
|
||||
command: "/sbin/init"
|
||||
volumes:
|
||||
- "/sys/fs/cgroup:/sys/fs/cgroup:ro"
|
||||
tmpfs:
|
||||
- "/run"
|
||||
- "/run/lock"
|
||||
capabilities:
|
||||
- "SYS_ADMIN"
|
||||
|
||||
hosts:
|
||||
- name: haproxy
|
||||
group: loadbalancers
|
||||
family: rhel
|
||||
publish:
|
||||
- "80:80"
|
||||
- "443:443"
|
||||
|
||||
- name: web1
|
||||
group: webservers
|
||||
family: debian
|
||||
publish:
|
||||
- "8081:80"
|
||||
|
||||
- name: web2
|
||||
group: webservers
|
||||
family: rhel
|
||||
publish:
|
||||
- "8082:80"
|
||||
|
||||
- name: db-master
|
||||
group: databases
|
||||
family: debian
|
||||
publish:
|
||||
- "5432:5432"
|
||||
|
||||
- name: db-slave
|
||||
group: databases
|
||||
family: rhel
|
||||
publish:
|
||||
- "5433:5432"
|
||||
|
||||
- name: cache1
|
||||
group: caches
|
||||
family: debian
|
||||
publish:
|
||||
- "6379:6379"
|
||||
|
||||
- name: cache2
|
||||
group: caches
|
||||
family: rhel
|
||||
publish:
|
||||
- "6380:6379"
|
||||
|
||||
- name: monitoring
|
||||
group: monitoring
|
||||
family: debian
|
||||
publish:
|
||||
- "9090:9090"
|
||||
|
||||
- name: grafana
|
||||
group: monitoring
|
||||
family: rhel
|
||||
publish:
|
||||
- "3000:3000"
|
||||
Reference in New Issue
Block a user