--- # ПРЕСЕТ: Service Mesh (15-20 машин) # # Описание: Полноценный service mesh с Istio и множественными сервисами # - 1 Istio Control Plane - управление mesh # - 1 Istio Ingress Gateway - входная точка # - 1 Istio Egress Gateway - выходная точка # - 3 Frontend сервиса - пользовательский интерфейс # - 3 Backend API сервиса - бизнес-логика # - 2 Database сервиса - хранение данных # - 1 Cache сервис - кэширование # - 1 Message Queue - асинхронная обработка # - 1 Monitoring (Prometheus) - метрики mesh # - 1 Tracing (Jaeger) - трассировка запросов # - 1 Visualization (Kiali) - визуализация mesh # # Использование: make lab-test SCENARIO=universal LAB_SPEC=molecule/presets/servicemesh.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: istio-control group: istio family: debian publish: - "15010:15010" - name: istio-ingress group: istio family: rhel publish: - "80:80" - "443:443" - name: istio-egress group: istio family: debian publish: - "15443:15443" - name: frontend1 group: frontend family: rhel publish: - "3001:3000" - name: frontend2 group: frontend family: debian publish: - "3002:3000" - name: frontend3 group: frontend family: rhel publish: - "3003:3000" - name: api1 group: backend family: debian publish: - "8001:8000" - name: api2 group: backend family: rhel publish: - "8002:8000" - name: api3 group: backend family: debian publish: - "8003:8000" - name: database1 group: databases family: rhel publish: - "5432:5432" - name: database2 group: databases family: debian publish: - "5433:5432" - name: cache group: caches family: rhel publish: - "6379:6379" - name: message-queue group: queues family: debian publish: - "5672:5672" - name: monitoring group: monitoring family: rhel publish: - "9090:9090" - name: tracing group: tracing family: debian publish: - "16686:16686" - name: kiali group: visualization family: rhel publish: - "20001:20001"