Настройка
Распакуйте предоставленный архив Security Gate.
В корне находятся образы с расширением .tar.
В директории sg-helm-template находятся данные helm-чарта Security Gate.
-
В файле
sg-helm-template/Makefileзамените значение переменнойNAMESPACEна пространство имен, созданное для Security Gate на этапе подготовки. -
Загрузите образы в реестр, последовательно выполнив команды:
$ docker load < <ИМЯ_ОБРАЗА>.tar$ docker tag <ИМЯ_ОБРАЗА> <АДРЕС_РЕЕСТРА_ОБРАЗОВ>/<ИМЯ_ОБРАЗА>$ docker push <АДРЕС_РЕЕСТРА_ОБРАЗОВ>/<ИМЯ_ОБРАЗА> -
Повторите загрузку для каждого образа.
-
Заполните параметры компонентов в файлах:
sg-helm-template/values/0-common-values.yaml— нечувствительные данные, общие для большинства или всех компонентов (адреса, порты и другое);sg-helm-template/values/0-common-secrets.yaml— чувствительные данные, общие для большинства или всех компонентов (логины, пароли, ключи доступа и другое);sg-helm-template/values/sg/<КОМПОНЕНТ>.yamlиsg-helm-template/values/scan/<КОМПОНЕНТ>.yaml— параметры конкретного компонента (ресурсы, Ingress и другое).
-
При необходимости заполните переменные компонентов в файлах:
sg-helm-template/files/<КОМПОНЕНТ>/<КОМПОНЕНТ>-configmap.yaml— нечувствительные данные для конкретного компонента (уровень логирования, включение функциональности и другое).sg-helm-template/files/<КОМПОНЕНТ>/<КОМПОНЕНТ>-secret.yaml— чувствительные данные для конкретного компонента. Редактировать эти файлы не рекомендуется, так как большая часть значений этих переменных указана вsg-helm-template/values/0-common-secrets.yaml.
Для балансировки трафика Security Gate использует NGINX Ingress Controller.
Необходимые аннотации предварительно заданы в файлах конфигурации компонентов:
sg-helm-template/values/sg/sg-frontend.yaml— для фронтенда;sg-helm-template/values/sg/sg-admin-backend.yamlиsg-helm-template/values/sg/sg-user-backend.yaml— для бэкенда;sg-helm-template/values/sg/sg-orchestrator.yaml— для оркестратора.
Аннотации можно изменить в блоке ingress каждого файла:
ingress:enabled: trueannotations:nginx.ingress.kubernetes.io/some-annotation: "some-value"
Чтобы проверить корректность работы балансировщика, последовательно выполните:
$ curl -v https://<ДОМЕН_ФРОНТЕНДА>/health
$ curl -v https://<ДОМЕН_ФРОНТЕНДА>/backend/health
$ curl -v https://<ДОМЕН_ОРКЕСТРАТОРА>/health