Изменение доменного имени установленного экземпляра SIEM
Чтобы изменить доменное имя уже установленного экземпляра SIEM без потери имеющихся в системе данных, выполните следующие действия с кластером Kubernetes:
-
Измените имена хостов для объектов Ingress, входящих в кластер:
-
Получите список объектов Ingress в кластере:
kubectl get ingress -n <namespace>
После ключа
-n
вместо<namespace>
укажите имя пространства имен, в котором установлен кластер.Пример вывода команды
NAME CLASS HOSTS ADDRESS PORTS AGE evo.core.bff-bff <none> dev.siem.local 10.0.0.1 80 131d evo.core.host-app-host-app <none> dev.siem.local 10.0.0.1 80 131d evo.core.mf-feed-files <none> dev.siem.local 10.0.0.1 80 131d evo.core.mf-feed-mf-feed <none> dev.siem.local 10.0.0.1 80 131d evo.siem.bff-bff <none> dev.siem.local 10.0.0.1 80 131d evo.siem.documentation-documentation <none> dev.siem.local 10.0.0.1 80 131d
-
Отредактируйте имя хоста для каждого объекта Ingress в списке, используя команду:
kubectl -n <namespace> edit ingress <ingress-name>
После ключа
-n
вместо<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>
После ключа
-n
вместо<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; новые значения также нужно указывать закодированными.
-
-
Перезагрузите приложения (Deployments) кластера:
-
Получите список Deployments в кластере:
kubectl get deployment -n <namespace>
После ключа
-n
вместо<namespace>
укажите имя пространства имен, в котором установлен кластер.Пример вывода команды
NAME READY UP-TO-DATE AVAILABLE AGE collector-1 1/1 1 1 11d collector-2 1/1 1 1 142m collector-3 1/1 1 1 33m collector-4 1/1 1 1 4h11m collector-audit 1/1 1 1 42m dkron 1/1 1 1 132d evo.core.access 1/1 1 1 132d evo.core.bff 1/1 1 1 132d evo.core.host-app 1/1 1 1 132d evo.core.mf-feed 1/1 1 1 132d evo.siem-event-generator 1/1 1 1 111d evo.siem.active-list-manager 1/1 1 1 132d evo.siem.active-list-record 1/1 1 1 132d evo.siem.alert-manager 1/1 1 1 132d evo.siem.audit-manager 1/1 1 1 132d evo.siem.bff 1/1 1 1 132d evo.siem.collector-manager 1/1 1 1 132d evo.siem.comment-manager 1/1 1 1 132d evo.siem.cron-service 1/1 1 1 132d evo.siem.dashboard-manager 1/1 1 1 132d evo.siem.documentation 1/1 1 1 132d evo.siem.driver-manager 1/1 1 1 132d evo.siem.entity-lookup-manager 1/1 1 1 132d evo.siem.entity-relation-manager 1/1 1 1 132d evo.siem.event-model-manager 1/1 1 1 132d evo.siem.event-storage-manager 1/1 1 1 132d evo.siem.expertise-manager 1/1 1 1 132d evo.siem.file-manager 1/1 1 1 132d evo.siem.integration-manager 1/1 1 1 132d evo.siem.ldap-client 1/1 1 1 132d evo.siem.log-manager 1/1 1 1 132d evo.siem.metric-manager 1/1 1 1 132d evo.siem.pipeline-verification 1/1 1 1 132d evo.siem.query-log-manager 1/1 1 1 47d evo.siem.search 1/1 1 1 132d evo.siem.secret-manager 1/1 1 1 132d evo.siem.settings-manager 1/1 1 1 132d evo.siem.smtp-client 1/1 1 1 132d evo.siem.template-manager 1/1 1 1 132d minio 1/1 1 1 132d nats-box 1/1 1 1 19d pgbouncer 1/1 1 1 132d service-orchestrator 1/1 1 1 132d
-
Перезагрузите те Deployments, для которых менялись настройки Ingress:
kubectl -n <namespace> rollout restart deployment <deployment-name>
После ключа
-n
вместо<namespace>
укажите имя пространства имен, в котором установлен кластер. Вместо<deployment-name>
— имя (NAME
) перезагружаемого Deployment:-
evo.core.bff
-
evo.core.host-app
-
evo.core.mf-feed
-
evo.siem.bff
-
evo.siem.documentation
-
-
Перезагрузите Deployment
kube-prometheus-stack-grafana
, находящийся в пространстве именkube-prometheus-stack
:kubectl -n kube-prometheus-stack rollout restart deployment kube-prometheus-stack-grafana
-
-
Обновите конфигурацию сервиса
evo.siem.frontend
, выполнив следующие команды на машине, на которой запускался инсталлятор SIEM. Вместо<NEW-DOMAIN-NAME>
укажите необходимое доменное имя: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": "configuration_schema,domain,playbook,script" }' > mf_config.json helm upgrade -i evo.siem.frontend /opt/r-vision/common/helm/r-huc -n <siem-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>"]'