Перейти к содержанию

ShivaVPN Infrastructure Wiki

Документация по инфраструктуре, эксплуатации и разработке ShivaVPN.

URL: wiki.shiva-app.io | GitLab: devops/documentation


Архитектура (одна строка)

Пользователи → 212.70.189.60 (Nginx) → 10.99.87.249 (Backend + VCS) → 10.99.87.62 (MySQL) + VPN серверы (~55 XUI + 14 WL)

Подробнее: Обзор инфраструктуры


Быстрые ссылки по роли

  1. Онбординг DevOps — с чего начать
  2. Доступ и SSH — ключи, jump host, скрипты
  3. Ansible — плейбуки, vault
  4. Runbooks — аварийные процедуры
  5. Мониторинг — Grafana, алерты
  6. Основные задачи — ежедневные и еженедельные процедуры
  1. Онбординг разработчика — доступы, репозитории, стек
  2. Архитектура бэкенда — Spring Boot, компоненты
  3. VPN Config Service — Python FastAPI, worker
  4. Config Delivery Flow — путь конфигов
  5. Маппинг аккаунтов — account → VPN client
  6. Backend Deploy — blue-green CI/CD
  1. Онбординг саппорта — с чего начать
  2. База знаний — ответы на частые вопросы
  3. Шаблоны ответов — готовые тексты
  4. Алгоритмы решения — диагностика проблем
  5. Инструменты — инструменты саппорта

Онбординг (чеклист для новых участников)

День 1 — Доступы

  • Зарегистрироваться в Vaultwarden и получить подтверждение от zardes
  • Получить доступ к GitLab — написать zardes с email
  • Добавить SSH-ключ в GitLab: ~/.ssh/id_ed25519 (или отдельный ключ)
  • Клонировать репозитории (см. Онбординг DevOps или Developer Guide)
  • Проверить доступ: ./scripts/ssh-internal.sh 10.99.87.249 "docker ps"

День 2 — Понять систему

День 3 — Практика

  • Проверить состояние системы через Runbooks
  • Запустить любой Ansible playbook с --check
  • Выполнить тестовый MySQL-запрос через ssh-internal.sh

Разделы документации

Раздел Содержание
Онбординг Quickstart для DevOps и разработчиков
Администрирование Ежедневные задачи, БД, бэкапы
Инфраструктура Архитектура, сервисы, серверы
Эксплуатация SSH, Ansible, секреты, деплой, мониторинг
Поддержка База знаний, шаблоны, инструменты
Среды Dev и Prod окружения
Решение проблем Известные проблемы и решения
ADR Архитектурные решения

Ключевые ресурсы

Ресурс URL / путь
Grafana (мониторинг) https://monitor.karmann.tech
Vaultwarden (пароли) https://vault.shivavpn.io
GitLab https://git.karmann.tech
Admin Panel http://10.99.87.64 (внутренний)
API Health http://10.99.87.249:8080/actuator/health
VCS API http://10.99.87.249:8000/docs
Инвентарь серверов servers.ini в shiva-ansible