Изменение доменного имени установленного экземпляра SIEM
Чтобы изменить доменное имя уже установленного экземпляра SIEM без потери имеющихся в системе данных, выполните следующие действия с кластером Kubernetes:
-
Измените имена хостов для объектов Ingress, входящих в кластер:
-
Получите список объектов Ingress в кластере:
kubectl -n <namespace> get ingress
Здесь:
-
<namespace>
— имя пространства имен, в котором установлен кластер.
-
-
Отредактируйте имя хоста для каждого объекта Ingress в списке, используя команду:
kubectl -n <namespace> edit ingress <ingress_name>
Здесь:
-
<namespace>
— имя пространства имен, в котором установлен кластер. -
<ingress_name>
— имя объекта Ingress, для которого вы редактируете конфигурацию.
В открывшемся файле укажите новое доменное имя (вставьте вместо
<NEW_DOMAIN_NAME>
) как значение ключей:-
metadata → annotations → nginx.ingress.kubernetes.io/configuration-snippet → more_set_headers → Access-Control-Allow-Origin
; -
spec → rules → host
.
Если на объекте Ingress установлен TLS-сертификат, также отредактируйте значение ключа spec → tls → hosts
.apiVersion: networking.k8s.io/v1 kind: Ingress metadata: annotations: nginx.ingress.kubernetes.io/configuration-snippet: | # Отредактируйте значение этого ключа. more_set_headers "Access-Control-Allow-Origin: https://<NEW_DOMAIN_NAME>"; # ... spec: rules: # Отредактируйте значение этого ключа. - host: <NEW_DOMAIN_NAME> # ... tls: - hosts: # Если на объекте Ingress установлен TLS-сертификат, отредактируйте значение этого ключа. - <NEW_DOMAIN_NAME> # ...
-
-
В пространстве имен
kube-prometheus-stack
находится объект Ingresskube-prometheus-stack-grafana
, для которого аналогичным образом следует отредактировать значения ключей:-
spec → rules → host
; -
spec → tls → hosts
(если он существует).
kubectl -n kube-prometheus-stack edit ingress kube-prometheus-stack-grafana
Ключ metadata → annotations → nginx.ingress.kubernetes.io/configuration-snippet → more_set_headers → Access-Control-Allow-Origin
для объектаkube-prometheus-stack-grafana
отсутствует, добавлять его не нужно. -
-
-
Отредактируйте значения секретов
evo.siem.global
иevo.core.global
, используя команду:kubectl -n <namespace> edit secret <secret>
Здесь:
-
<namespace>
— имя пространства имен, в котором установлен кластер. -
<secret>
— сначалаevo.siem.global
, затемevo.core.global
.В обоих секретах нужно изменить значения ключей:
-
MODULE_DOMAIN
; -
WEB_URL_HTTP
; -
WEB_URL_HTTPS
; -
WEB_URL_WS
.
Пример фрагмента файла секрета, который необходимо отредактировать
apiVersion: v1 data: MODULE_DOMAIN: dGVzdF9kb21haW4= WEB_URL_HTTP: SFRUUDovL1dFQl9VUkxfSFRUUA== WEB_URL_HTTPS: SFRUUFM6Ly9XRUJfVVJMX0hUVFA= WEB_URL_WS: V1M6Ly9XRUJfVVJMX0hUVFA= # ...
Значения секретов закодированы с помощью base64; новые значения также нужно указывать закодированными. -
-
-
Перезагрузите деплойменты кластера, для которых менялись настройки Ingress:
kubectl -n <namespace> rollout restart deployment <deployment_name>
Здесь:
-
<namespace>
— имя пространства имен, в котором установлен кластер. -
<deployment_name>
— имя (NAME
) перезагружаемого деплоймента:-
evo.core.bff
; -
evo.core.host-app
; -
evo.core.mf-feed
; -
evo.siem.bff
; -
evo.siem.documentation
.
-
-
-
Перезагрузите деплоймент
kube-prometheus-stack-grafana
, находящийся в пространстве именkube-prometheus-stack
:kubectl -n kube-prometheus-stack rollout restart deployment kube-prometheus-stack-grafana
-
Обновите конфигурацию сервиса
evo.siem.frontend
, выполнив следующие команды на машине, на которой запускался инсталлятор SIEM:echo '{ "API_WS_URL": "wss://<NEW_DOMAIN_NAME>/api/graphql", "API_URL": "https://<NEW_DOMAIN_NAME>/api/graphql", "GRAFANA_DASHBOARD_URL": "https://<NEW_DOMAIN_NAME>/grafana/public-dashboards/35077e7f648d4fc79e448eaddf2d0ff5?orgId=1", "NOT_ALLOWED_EXPERTISE_TYPES": "calculation_schema,configuration_schema,domain,playbook,script" }' > mf_config.json helm upgrade -i evo.siem.frontend /opt/r-vision/common/helm/r-huc -n <namepsace> --values /opt/r-vision/siem/helm/evo.siem.frontend/values.yaml --set-file extraVars.CONFIG=mf_config.json --set-json='global.ingress.hosts=["<NEW_DOMAIN_NAME>"]'
Здесь:
-
<namespace>
— имя пространства имен, в котором установлен кластер. -
<NEW_DOMAIN_NAME>
— новое доменное имя.
-