Установка Neuvector в конфигурации по умолчанию
1. Предварительные условия
-
Вы ознакомились с архитектурой и концепциями Neuvector в Nova Container Platform.
-
Вы ознакомились с документацией по планированию установки и системным требованиям Neuvector.
-
У вас есть доступ к кластеру с учетной записью, имеющей роль
cluster-adminв Kubernetes. -
Вы установили утилиту
kubectlдля работы с Kubernetes.
2. Установка
2.1. Установка с помощью kubectl
-
Установите оператор nova-neuvector-operator. Для этого сохраните представленный ниже манифест в файл, например
NeuvectorOperator.yaml.Пример манифеста для установки nova-neuvector-operator
apiVersion: operators.coreos.com/v1alpha1 kind: Subscription metadata: name: nova-neuvector-operator namespace: nova-operators spec: channel: stable installPlanApproval: Automatic name: nova-neuvector-operator source: nova-catalog sourceNamespace: nova-operatorhub startingCSV: nova-neuvector-operator.v1.0.0 -
Установите манифест в кластер Kubernetes, выполнив команду:
kubectl apply -f NeuvectorOperator.yaml -
Проверьте состояние оператора после установки.
kubectl get pods -n nova-operatorsПример вывода:NAME READY STATUS RESTARTS AGE nova-neuvector-operator-7cd868bf67-5czvq 1/1 Running 1 (44h ago) 9dУбедитесь, что оператор находится в статусе
Running. В столбцеREADYдолжно быть1/1. -
Сохраните один из представленных ниже манифестов в файл, например,
neuvector.yaml.Для кластера в минимальной конфигурации
apiVersion: neuvector.nova-platform.io/v1alpha1 kind: NeuvectorCluster metadata: name: neuvector-cluster spec: cluster: controller: replicas: 1 policySync: interval: 60 policy: network: icmpPolicyEnabled: false packetCapture: true security: customChecks: disable autoBenchmark: true secretScanning: true profiling: autoProfileCollection: false systemProfilesEnabled: trueДля кластера в высокодоступной конфигурации
apiVersion: neuvector.nova-platform.io/v1alpha1 kind: NeuvectorCluster metadata: name: neuvector-cluster spec: cluster: controller: replicas: 3 policySync: interval: 60 policy: network: icmpPolicyEnabled: false packetCapture: true security: customChecks: disable autoBenchmark: true secretScanning: true profiling: autoProfileCollection: false systemProfilesEnabled: true -
Установите манифест в кластер Kubernetes, выполнив команду:
kubectl apply -f neuvector.yaml -
Проверьте состояние запущенных компонентов Neuvector, выполнив команду:
kubectl get pods -n nova-neuvector -
Проверьте состояние Cluster Kustomizations, выполнив команду:
kubectl get ks -l nova-application-group=cluster-security -n nova-gitops
2.2. Установка с помощью Nova Console
Модуль NeuVector управляется оператором через Custom Resource NeuvectorCluster. Оператор автоматически создает и поддерживает необходимые Flux Kustomization-объекты (nova-release-neuvector-pre, nova-release-neuvector-main, nova-release-neuvector-post) — создавать их вручную не требуется.
Установите модуль NeuVector через Nova Console OperatorHUB. Для этого выполните следующие шаги.
-
Установите оператор Nova NeuVector Operator. В Nova Console в главном меню выберите Operators → OperatorHUB. Выберите Nova NeuVector Operator. Нажмите кнопку Установить.
Заполните поля формы по примеру, представленному на скриншоте.
Подтвердите установку, нажав Установить.
-
Перейдите в раздел Operators → Установленные операторы. Выберите Nova NeuVector Operator или сразу после установки нажмите Открыть оператор.
-
Перейдите ко вкладке NeuvectorCluster и нажмите на кнопку Создать NeuvectorCluster.
-
Заполнить настройки NeuVector можно двумя способами:
-
С помощью формы
-
С помощью манифеста
Для кластера в минимальной конфигурации
apiVersion: neuvector.nova-platform.io/v1alpha1 kind: NeuvectorCluster metadata: name: neuvector-cluster spec: cluster: controller: replicas: 1 (1) policySync: interval: 60 (2) policy: network: icmpPolicyEnabled: false (3) packetCapture: true (4) security: customChecks: disable (5) autoBenchmark: true (6) secretScanning: true (7) profiling: autoProfileCollection: false (8) systemProfilesEnabled: true (9)1 spec.cluster.controller.replicas(тип: int) - количество реплик контроллера NeuVector. Допустимые значения: 1 или 3. Не может превышать количество инфраструктурных узлов кластера.2 spec.cluster.policySync.interval(тип: int) - интервал синхронизации сетевых политик (в секундах). Минимальное значение:0.3 spec.policy.network.icmpPolicyEnabled(тип: bool) - включение обработки и применения политик для ICMP-трафика. По умолчаниюfalse.4 spec.policy.network.packetCapture(тип: bool) - разрешение захвата сетевых пакетов для анализа инцидентов безопасности. По умолчаниюtrue.5 spec.security.customChecks(тип: string) - режим пользовательских проверок безопасности. Допустимые значения:disable— выключено,strict— строгий режим (ошибка при несоответствии),loose— мягкий режим (предупреждение при несоответствии)6 spec.security.autoBenchmark(тип: bool) - автоматический запуск CIS Benchmark проверки узлов и контейнеров.7 spec.security.secretScanning(тип: bool) - сканирование контейнеров на наличие секретов (токены, ключи, пароли).8 spec.profiling.autoProfileCollection(тип: bool) - автоматическая сборка профилей поведения приложений. По умолчаниюfalse.9 spec.profiling.systemProfilesEnabled(тип: bool) - включение системных профилей для анализа обнаружения аномалий. По умолчаниюtrue.Для кластера в высокодоступной конфигурации
apiVersion: neuvector.nova-platform.io/v1alpha1 kind: NeuvectorCluster metadata: name: neuvector-cluster spec: cluster: controller: replicas: 3 (1) policySync: interval: 60 (2) policy: network: icmpPolicyEnabled: false (3) packetCapture: true (4) security: customChecks: disable (5) autoBenchmark: true (6) secretScanning: true (7) profiling: autoProfileCollection: false (8) systemProfilesEnabled: true (9)1 spec.cluster.controller.replicas(тип: int) - количество реплик контроллера NeuVector. Допустимые значения: 1 или 3. Не может превышать количество инфраструктурных узлов кластера.2 spec.cluster.policySync.interval(тип: int) - интервал синхронизации сетевых политик (в секундах). Минимальное значение:0.3 spec.policy.network.icmpPolicyEnabled(тип: bool) - включение обработки и применения политик для ICMP-трафика. По умолчаниюfalse.4 spec.policy.network.packetCapture(тип: bool) - разрешение захвата сетевых пакетов для анализа инцидентов безопасности. По умолчаниюtrue.5 spec.security.customChecks(тип: string) - режим пользовательских проверок безопасности. Допустимые значения:disable— выключено,strict— строгий режим (ошибка при несоответствии),loose— мягкий режим (предупреждение при несоответствии)6 spec.security.autoBenchmark(тип: bool) - автоматический запуск CIS Benchmark проверки узлов и контейнеров.7 spec.security.secretScanning(тип: bool) - сканирование контейнеров на наличие секретов (токены, ключи, пароли).8 spec.profiling.autoProfileCollection(тип: bool) - автоматическая сборка профилей поведения приложений. По умолчаниюfalse.9 spec.profiling.systemProfilesEnabled(тип: bool) - включение системных профилей для анализа обнаружения аномалий. По умолчаниюtrue.При создании кластера имеются следующие ограничения:
-
имя ресурса должно быть строго neuvector-cluster.
-
spec.cluster.controller.replicasдопускает только значения 1 или 3. -
количество реплик не может превышать число инфраструктурных узлов в кластере.
-
-
-
Нажмите Создать. Отслеживайте статус на вкладке NeuvectorCluster на странице оператора.
3. Удаление модуля Neuvector
3.1. Удаление с помощью kubectl
Для удаления модуля Neuvector выполните следующую команду:
kubectl delete kustomization nova-release-neuvector-pre -n nova-gitops
kubectl delete kustomization nova-release-neuvector-post -n nova-gitops
kubectl delete kustomization nova-release-neuvector-main -n nova-gitops