Облачная платформаEvolution

Подключить AI-агента

Эта статья полезна?

В Container Security можно создавать политики контроля допуска с помощью AI-агента. Агент генерирует политики на основе описания на естественном языке и помогает тестировать политики до их применения в кластере.

Чтобы в Container Security создавать политики с помощью AI-агента, нужно передать Key Secret сервисного аккаунта в кластер Managed Kubernetes. Key Secret необходим для авторизации агента при обращении к Foundation Models.

Чтобы передать Key Secret в кластер, достаточно создать Kubernetes Secret с Key Secret.

Внимание

Secret с Key Secret необходимо создать до установки Container Security.

Перед началом работы

  1. Создайте сервисный аккаунт уровня «Проект» с названием evocs-llm-sa.

  2. Для сервисного аккаунта создайте API-ключ.

    При создании в поле Сервисы выберите Foundation Models, а полученный Key Secret сохраните — он понадобится позже.

  3. В кластере Managed Kubernetes создайте пространство имен evocs.

    Если ранее в кластер был установлен Container Security, пространство имен уже создано.

    Управлять ресурсами кластера Managed Kubernetes можно в личном кабинете без подключения к кластеру.

    Чтобы создать пространство имен, в кластере перейдите в раздел Cluster → Namespaces и примените конфигурацию:

    apiVersion: v1
    kind: Namespace
    metadata:
    name: evocs

    Также вы можете подключиться к кластеру и развертывать ресурсы через kubectl.

Передайте ключ для работы с Foundation Models

Key Secret можно указать напрямую в Kubernetes Secret или хранить в Secret Management и для передачи использовать External Secrets Operator.

Способ с указанием Key Secret напрямую в Kubernetes Secret подходит для тестовых сред. Для production-сред рекомендуется использовать Secret Management и External Secrets Operator.

Внимание

Название секрета должно быть llm-key.

Через Kubernetes Secret

В кластере перейдите в раздел Configuration → Secrets и примените манифест:

apiVersion: v1
kind: Secret
metadata:
name: llm-key
namespace: evocs
type: Opaque
data:
api-key: <key_secret>

Где <key_secret> — закодированный в Base64 Key Secret для API-ключа, созданный перед началом работы.

В результате llm-key появится в списке секретов в разделе Configuration → Secrets.

После создания секрета установите Container Security и активируйте агента.

С помощью External Secrets Operator

  1. Установите в кластер Managed Kubernetes плагин External Secrets Operator с конфигурацией по умолчанию.

    Дождитесь, когда статус плагина изменится на «Установлен».

  2. Создайте секрет в Secret Management со следующими параметрами:

    • Путь — eso-llm/llm-key.

    • Значение секрета — выберите JSON-редактор и укажите:

      {
      "key": "<key_secret>"
      }

      Где <key_secret> — Key Secret для API-ключа, созданный перед началом работы.

  3. Нажмите Создать.

    Каталог eso-llm с секретом llm-key в статусе «Включен» появится в списке.

  4. Создайте сервисный аккаунт eso-llm-sa уровня «Проект».

  5. Для сервисного аккаунта eso-llm-sa создайте ключ доступа.

    Сохраните значения Key ID (логин) и Key Secret (пароль).

  6. Назначьте сервисному аккаунту eso-llm-sa роль scsm.user.

  7. Чтобы создать Secret с ключом доступа сервисного аккаунта eso-llm-sa, в кластере перейдите в раздел Configuration → Secrets и примените манифест:

    apiVersion: v1
    kind: Secret
    metadata:
    name: llm-key
    namespace: evocs
    type: Opaque
    stringData:
    key_id: <key_id>
    key_secret: <key_secret>

    Где:

    • <key_id> — Key ID ключа доступа сервисного аккаунта eso-llm-sa;

    • <key_secret> — Key Secret ключа доступа сервисного аккаунта eso-llm-sa.

  8. Чтобы создать SecretStore, перейдите в раздел Configuration → Secrets и примените манифест:

    apiVersion: external-secrets.io/v1
    kind: SecretStore
    metadata:
    name: cloudru-sm
    namespace: evocs
    spec:
    provider:
    cloudrusm:
    auth:
    secretRef:
    accessKeyIDSecretRef:
    name: llm-key
    key: key_id
    accessKeySecretSecretRef:
    name: llm-key
    key: key_secret
    projectID: <project_id>

    Где <project_id> — идентификатор проекта, в котором создан секрет.

    SecretStore доступен только в своем пространстве имен. Ключ сервисного аккаунта не будет доступен ресурсам из других пространств имен.

  9. Чтобы синхронизировать секрет, перейдите в раздел Configuration → Secrets и примените манифест:

    apiVersion: external-secrets.io/v1
    kind: ExternalSecret
    metadata:
    name: llm-key
    namespace: evocs
    spec:
    refreshInterval: 1m
    secretStoreRef:
    name: cloudru-sm
    kind: SecretStore
    target:
    name: llm-key
    creationPolicy: Owner
    dataFrom:
    - extract:
    key: eso-llm/llm-key

После создания и настройки синхронизации секрета установите Container Security и активируйте агента.

Активируйте агента

Активировать агента можно при установке Container Security или при редактировании его параметров:

  1. В форме установки или редактирования Container Security выберите YAML и укажите:

    ...
    global:
    useAgent: enabled
    evocs-agent:
    globalSettings:
    useLlm: enabled
    ...
  2. Сохраните настройки.

    AI-агент будет доступен для использования.