Требования к инфраструктуре
Требования к аппаратному обеспечению
Серверные компоненты AppSec.Sting должны быть установлены на выделенном сервере, предназначенном исключительно для эксплуатации серверных компонент AppSec.Sting.
Для работы системы обязательно наличие поддержки виртуализации, а именно необходим процессор с поддержкой технологии виртуализации Intel Virtualization Technology (VT, VT-x, vmx) или AMD Virtualization (AMD-V, SVM).
Минимальные технические характеристики серверного оборудования
- 8-ядерный CPU 2 ГГц.
- Оперативная память: 24 Гб.
- Свободное дисковое пространство 100 GB (+ пространство для размещения прикладных систем и баз данных).
Рекомендуемые технические характеристики серверного оборудования
- 16-ядерный CPU 3 ГГц.
- Оперативная память: 32 Гб.
- Свободное дисковое пространство 500 GB (+ пространство для размещения прикладных систем и баз данных).
Для развертывания платформы AppSec.Sting на базе клиентской инфраструктуры требуется следующая минимальная аппаратная или виртуальная конфигурация оборудования:
Наименование | CPU | RAM, Гб | HDD, Гб |
---|---|---|---|
AppSec.Sting (минимальная конфигурация) | 8-ядерный процессор (2 ГГц) с поддержкой технологии виртуализации Intel Virtualization Technology (VT, VT-x, vmx) или AMD Virtualization (AMD-V, SVM) | 24 | 200 |
AppSec.Sting (рекомендуемая конфигурация) | 16-ядерный процессор (3 ГГц) с поддержкой технологии виртуализации Intel Virtualization Technology (VT, VT-x, vmx) или AMD Virtualization (AMD-V, SVM) | 32 | 500 |
Минимальная конфигурация рассчитана из следующего количества сканирующих агентов:
- Два сканирующих агента Android.
- Два сканирующих агента iOS.
При увеличении количества сканирующих агентов необходимо пересмотреть конфигурацию оборудования из расчета 1 ядро и 4 Гб ОЗУ на каждого дополнительного сканирующего агента при их параллельной работе. Также можно исходить из таблицы ниже.
Количество сканирующих агентов | Ядер процессора (физических) | Общее количество потоков | RAM, Гб |
---|---|---|---|
2 Android, 2 iOS | 8* | 16 | 24 |
4 Android, 4 iOS | 12* | 24 | 24 |
6 Android, 6 iOS | 16* | 32 | 32 |
* При виртуализации количество виртуальных процессоров (vCPU) должно соответствовать общему количеству потоков.
Архитектура и ОС
Система поддерживает следующие типы ОС и ПО для полноценного функционирования.
Операционная система | Архитектура | Платформа |
---|---|---|
Linux | 64-bit | Ubuntu 22.04 LTS x64 |
Linux | 64-bit | Centos / RHEL 8.9 и выше |
Требования к инфраструктуре для Kubernetes
Инфраструктура для Kubernetes включает в себя:
- Сервисы AppSec.Sting.
- Инфраструктурные сервисы.
Сервисы AppSec.Sting
Ресурсы контейнеров (требования и лимиты):
Apricot
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
migration | 50 | 128 | 100 | 256 |
async | 50 | 512 | 300 | 2200 |
rest | 50 | 128 | 100 | 256 |
Итого | 150 | 768 | 500 | 2712 |
Calypso
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
migration | 50 | 128 | 100 | 256 |
async | 300 | 6144 | 5500 | 22528 |
rest | 300 | 1024 | 1500 | 4096 |
Итого | 650 | 7296 | 7100 | 26880 |
Marivanna
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
rest | 300 | 1024 | 1500 | 4096 |
async | 300 | 6144 | 5500 | 22528 |
Итого | 600 | 7168 | 7000 | 26624 |
Dittany
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
migration | 50 | 128 | 100 | 256 |
seed | 50 | 128 | 100 | 256 |
async | 50 | 128 | 100 | 256 |
rest | 50 | 128 | 100 | 256 |
listen | 50 | 128 | 100 | 256 |
Итого | 250 | 640 | 500 | 1280 |
Umbrella
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
migration | 50 | 128 | 100 | 256 |
async | 50 | 128 | 100 | 256 |
rest | 50 | 128 | 100 | 256 |
listen | 50 | 128 | 100 | 256 |
Итого | 200 | 512 | 400 | 1024 |
Camellia
Контейнер | CPU REQ (m) | RAM REQ (Mi) | CPU LIM (m) | RAM LIM (Mi) |
---|---|---|---|---|
migration | 50 | 128 | 100 | 256 |
seed | 50 | 128 | 100 | 256 |
async | 50 | 128 | 100 | 256 |
rest | 50 | 128 | 100 | 256 |
listen | 50 | 128 | 100 | 256 |
Итого | 250 | 640 | 500 | 1280 |
Сервисы AppSec.Sting - общий итог: 16000 mCPU (16 CPU), 59800 Mi RAM (60 RAM)
Инфраструктурные сервисы
AppSec.Sting может использовать всю перечисленную ниже инфраструктуру как сервис.
В случае необходимости, например, при отсутствии каких-либо компонентов в среде и возможности подключения к ним как к внешним сервисам, возможно их самостоятельное развертывание в следующих параметрах:
Инфраструктура | Реплики | CPU на реплику (cores) | RAM на реплику (GiB) | SSD на реплику | Итого CPU (cores) | Итого RAM (GiB) | Итого SSD |
---|---|---|---|---|---|---|---|
Keycloak | 1 | 1 | 2 | 10 | 1 | 2 | 10 |
PostgreSQL | 2 | 2 | 4 | 50 | 4 | 8 | 100 |
Redis | 2 | 0,5 | 1 | 5 | 1 | 2 | 10 |
Minio | 4 | 1,5 | 3 | 100 | 6 | 12 | 400 |
Kafka (3) / zookeeper (3) | 6 | 2 | 6 | 200 | 12 | 36 | 1200 |
DeepTrack | 1 | 4,5 | 7 | 100 | 4,5 | 7 | 100 |
OAuth2 | 1 | 1 | 2 | 10 | 1 | 2 | 10 |
Итого: | 29,5 | 69 | 1830 | ||||
Итого округлено: | 30 CPU | 70 RAM | 2 TB SSD |
Сетевой доступ
Установленные для эксплуатации AppSec.Sting технические средства должны быть совместимы между собой и поддерживать сетевой протокол TCP/IP. Для первоначальной настройки и установки платформы AppSec.Sting и сопутствующих пакетов желателен доступ к следующим ресурсам:
№ | Адрес источника | Адрес приемника | Тип подключения | Порты | Назначение |
---|---|---|---|---|---|
1 | Сетевой адрес AppSec.Sting | https://download.docker.com | Внешний | 80, 443 | Установка docker |
2 | Сетевой адрес AppSec.Sting | http://archive.ubuntu.com http://security.ubuntu.com |
Внешний | 80, 443 | Установка сопутствующих пакетов |
3 | Сетевой адрес AppSec.Sting | https://cr.yandex/ | Внешний | 80, 443 | Авторизация в хранилище docker и загрузка docker-образов |
4 | Сетевой адрес AppSec.Sting | https://container-registry.api.cloud.yandex.net | Внешний | 80, 443 | Авторизация в хранилище docker и загрузка docker-образов |
5 | Сетевой адрес AppSec.Sting | https://storage.yandexcloud.net | Внешний | 80, 443 | Авторизация в хранилище docker и загрузка docker-образов |
6 | CI/CD система, в которой осуществляется процесс сборки приложения | Сетевой адрес AppSec.Sting | Внутренний | 80, 443 | Загрузка артефакта сборки (мобильного приложения) для анализа в AppSec.Sting |
7 | Сетевой адрес системы AppSec.Sting | Backend мобильного приложения | Внутренний | 80, 443 | Сетевая доступность backend для корректной работы мобильного приложения |
8 | Рабочее место пользователя AppSec.Sting | Сетевой адрес AppSec.Sting | Внутренний | 80, 443 | Работа пользователей с графическим интерфейсом системы |
9 | Рабочее место администратора AppSec.Sting | Сетевой адрес AppSec.Sting | Внутренний | 80, 443, 22 | Администрирование системы AppSec.Sting |