👀 Обзор
Сервисы
Ниже приведена таблица с описанием возможностей сервисов. Каждый сервис может управляться либо через API, либо UI (браузер), либо CLI (command line interface), либо Terraform. Некоторые сервисы, напр. MultiPath, могут работать только через UI. Некоторый функционал может быть доступен в одних случаях(напр. CLI) и не доступен в других (напр. Terraform).

| Код | Сервис | Сектор | Назначение | Доступность |
|---|---|---|---|---|
| FLU | Flugger | Трафик | Регистрация DNS имен в ICCA и управление доменами | UI, CLI |
| ELB | Elastic Load Balancer | Трафик | Управление и балансировка трафика между AZ, создание записей URI | API, CLI, Terraform |
| PES | Pes Service | CI/CD | Пайплайны CI/CD | API, CLI |
| KMS | Key Management Service | Криптография | Создание, хранение, контроль доступа и безопасный обмен ключами шифрования. Шифрование данных | API, CLI |
| MP | MultiPath | Пользователи | Регистрация и управление пользователями. Генерация Oauth2 токенов | UI, CLI |
| IAM | Identity and Access Management | Пользователи | Авторизация. Создание групп. Права и контроль доступа к ресурсам | UI, API, CLI, Terraform |
| EKS | Extensible Kubernetes Service | Инфраструктура | Деплой приложений в Kubernetes кластер | API, CLI |
| ECR | Elastic Container Registry | Инфраструктура | Публикация, хранение и обмен Docker контейнеров | API, CLI |
| EAR | Elastic Artifact Registry | Инфраструктура | Публикация, хранение и обмен NPM артифактов | API, CLI |
| TFR | Terraform Registry | Инфраструктура | Публикация, хранение и обмен модулями и провайдерами для Terraform. Аналог Terraform Registry | UI, API, CLI |
| S3 | Simple Storage Service | Данные | AWS S3 совместимое хранилище | API, CLI, Terraform |
| API, CLI |
Инфраструктура
На вершине сервисов NWS является сервис Flugger, который отвечает за создание и управление DNS записями. Flugger перенаправляет трафик на глобальный геораспределенный сервис ELB, который подключается к корневым маршрутизарторам Availability Zones (AZ), или Points of Presence (POP).
Каждая AZ представляет собой датацентр, а POP - уменьшенная версия датацентра, которая может состоять из нескольких подсетей на collocation или датацентрах партнера.
Каждая AZ является самодостаточной единицей, которая работает независимо от других AZ или сервисов. Единственным требованием является перенаправление трафика на нее, за что отвечают сервисы Flugger и ELB.
Каждая AZ состоит из нескольких VPC, в которых развернуты кластеры Extensible Kubernetes Service (EKS), отдельный кластер S3, SpinDB, EBS и EFS.
Кластеры S3, SpinDB, EBS и EFS предоставляют хранилища для каждого локальныого кластера EKS. При этом, данные реплицируются между AZ через собственные независимые механизмы Cross Region Replication (CRR).
Каждая AZ или POP реализует внутреннюю репликацию данных Same Region Replication (SRR), а также мониторинг и логирование, доступные глобально из консоли UI.
