Ansible структура сервера Olimp
Go to file
Administrator 91795e141b Update 2 files
- /roles/npm/tasks/main.yml
- /roles/heimdall/tasks/main.yml
2025-10-15 11:08:32 +00:00
group_vars Update 9 files 2025-10-15 08:33:51 +00:00
inventories Update file hosts 2025-10-14 12:56:24 +00:00
roles Update 2 files 2025-10-15 11:08:32 +00:00
olimp-deploy.yml Update file olimp-deploy.yml 2025-10-15 08:35:03 +00:00
README.md Update 12 files 2025-10-10 10:56:09 +00:00
vault.yml Update file vault.yml 2025-10-10 15:40:56 +00:00

Деплой инфраструктуры Olimp

Структура проекта

Infra/ ├── inventories/ # Конфигурация хостов ├── group_vars/ # Переменные по группам ├── roles/ # Ansible роли ├── olimp-deploy.yml # Основной плейбук ├── vault.yml # Секреты (зашифровано) └── README.md # Документация

Infra/ ├── inventories/ │ └── hosts.yml ├── group_vars/ │ ├── all.yml │ └── gateway.yml ├── roles/ │ ├── proxmox_lxc/ │ │ └── tasks/ │ │ └── main.yml │ ├── base_setup/ │ │ ├── tasks/ │ │ │ ├── main.yml │ │ │ └── ssh.yml │ │ └── handlers/ │ │ └── main.yml │ ├── docker/ │ │ └── tasks/ │ │ └── main.yml │ ├── heimdall/ │ │ └── tasks/ │ │ └── main.yml │ └── npm/ │ └── tasks/ │ └── main.yml ├── olimp-deploy.yml ├── vault.yml └── README.md

Использование

Запуск полного деплоя:

ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --ask-vault-pass

Запуск отдельных компонентов:
bash
# Только создание контейнера
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --tags create_lxc --ask-vault-pass
# Только базовая настройка
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --tags base_setup
# Только установка Docker
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --tags docker
# Только Heimdall
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --tags heimdall

Роли

proxmox_lxc - Создание LXC контейнеров в Proxmox

base_setup - Базовая настройка ОС

docker - Установка Docker

heimdall - Развертывание Heimdall

Порядок развертывания
Создание LXC контейнеров

Базовая настройка ОС

Установка Docker

Развертывание сервисов

text

## 🚀 КАК ЗАПУСТИТЬ:

1. **Создайте структуру каталогов** в GitLab репозитории
2. **Добавьте все файлы** в соответствующие каталоги
3. **Зашифруйте vault.yml:**
   ```bash
   ansible-vault encrypt vault.yml
Запустите тестовый прогон:

bash
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --ask-vault-pass --check
Запустите деплой:

bash
ansible-playbook -i inventories/hosts.yml olimp-deploy.yml --ask-vault-pass