Преминете към основното съдържание

Мрежова топология

Инфраструктурата на Dictaro е разпределена между локална мрежа (DGX Spark), Azure cloud (VM + PostgreSQL + ACR) и Cloudflare (Pages + Tunnels + DNS).

Обща мрежова диаграма

Cloudflare Tunnels

Системата използва три Cloudflare Tunnels за сигурен достъп до вътрешни услуги без отваряне на портове:

Tunnel имеПубличен URLВътрешна целПредназначение
dictaro-progx10-804f.dictaro.aiDGX Spark :8765 (Nginx)ASR WebSocket за клиенти
dictaro-monitoringmonitoring.dictaro.aiAzure VM :3000 (Grafana)Мониторинг дашборд
dictaro-lokiloki.dictaro.aiAzure VM :3100 (Loki)Централизирано събиране на логове

Всеки tunnel се управлява от cloudflared контейнер в съответния docker-compose стек, стартиран с token от environment variable.

Cloudflare Pages

ПроектURLСъдържание
dictaro-websitedictaro.aiМаркетинг сайт (Astro)
dictaro-docsdocs.dictaro.aiВътрешна документация (Docusaurus)

Prometheus Scrape конфигурация

Prometheus на Azure VM scrape-ва метрики от няколко целеви системи:

Scrape интервал: 15 секунди за всички targets.

Targets

JobTargetМетрики
licensing-apiapi:9090/metricsGin HTTP метрики, auth counters, billing counters
node-licensingnode-exporter:9100CPU, RAM, disk, network на Azure VM
asr-gx10-804fgx10-804f.dictaro.ai/metrics/asrASR request latency, queue size, model load
node-gx10-804fgx10-804f.dictaro.ai/metrics/nodeCPU, RAM, disk на DGX Spark
gpu-gx10-804fgx10-804f.dictaro.ai/metrics/gpuNVIDIA DCGM -- GPU utilization, температура, памет
prometheuslocalhost:9090Self-monitoring на Prometheus

Azure ресурси

РесурсТипРегионПредназначение
dictaro-vmVirtual MachineNorth EuropeLicensing API + Monitoring стек
dictaro-db-serverAzure PostgreSQL (B1ms)North EuropeПотребителска БД
dictaroacrContainer RegistryWest EuropeDocker образи
dictaro-kvKey VaultWest EuropeСекрети (db-password, JWT keys)
dictaro-identityManaged IdentityWest EuropeАвтентикация към Azure ресурси
dictaro-envContainer Apps EnvironmentNorth Europe(Резервен, не се ползва активно)

DNS записи (Cloudflare)

Всички DNS записи се управляват в Cloudflare DNS зоната dictaro.ai (Zone ID: e949d0c303c70b77ff85eb1c7fe1262f):

ЗаписТипСтойностProxy
dictaro.aiCNAMECloudflare PagesYes
docs.dictaro.aiCNAMECloudflare PagesYes
gx10-804f.dictaro.aiCNAMECloudflare TunnelYes
monitoring.dictaro.aiCNAMECloudflare TunnelYes
loki.dictaro.aiCNAMECloudflare TunnelYes
api.dictaro.aiCNAMEContainer App FQDNPending

Портове (вътрешни)

DGX Spark (10.42.9.37)

ПортУслугаЕкспонирана
8765Nginx (ASR proxy)Да, чрез Cloudflare Tunnel
8000vLLMСамо вътрешно (Docker network)
8766DashboardСамо през Nginx
8767Data CollectorСамо вътрешно (Docker network)
9100Node ExporterСамо през Nginx (/metrics/node)
9400DCGM ExporterСамо през Nginx (/metrics/gpu)

Azure VM (dictaro-vm)

ПортУслугаЕкспонирана
8000Licensing API (Gin)Да, публично (HTTPS)
9090Prometheus MetricsСамо вътрешно (Docker network)
3000GrafanaДа, чрез Cloudflare Tunnel
3100LokiДа, чрез Cloudflare Tunnel