• Русский
  • Установка Alauda AI

    Alauda AI теперь предлагает гибкие варианты развертывания. Начиная с Alauda AI 1.4, возможность Knative является необязательной функцией, что позволяет упростить установку, если она не требуется.

    Для начала необходимо развернуть Alauda AI Operator. Это основной механизм для всех продуктов Alauda AI. По умолчанию он использует режим Standard KServe для backend инференса, который особенно рекомендуется для ресурсоемких генеративных нагрузок. Этот режим предоставляет простой способ развертывания моделей и обеспечивает надежные, настраиваемые возможности развертывания за счет использования базовых возможностей Kubernetes.

    Если ваш сценарий использования требует функциональности Knative, которая включает расширенные возможности, такие как масштабирование до нуля по требованию для оптимизации затрат, вы можете дополнительно установить Knative Operator. Этот оператор не входит в установку по умолчанию и может быть добавлен в любое время для включения функциональности Knative.

    INFO

    Рекомендуемый вариант развертывания: для генеративных инференс-нагрузок рекомендуется подход Standard (ранее известный как RawKubernetes Deployment), поскольку он обеспечивает максимальный контроль над распределением ресурсов и масштабированием.

    Загрузка

    Компоненты Operator:

    • Alauda AI Operator

      Alauda AI Operator — это основной механизм, обеспечивающий работу продуктов Alauda AI. Он сосредоточен на двух ключевых функциях: управлении моделями и сервисами инференса, а также предоставляет гибкую платформу, которую можно легко расширять.

      Пакет для загрузки: aml-operator.xxx.tgz

    • Knative Operator

      Knative Operator предоставляет serverless-инференс моделей.

      Пакет для загрузки: knative-operator.ALL.v1.x.x-yymmdd.tgz

    INFO

    Вы можете загрузить приложения с именами 'Alauda AI' и 'Knative Operator' из Marketplace на сайте Customer Portal.

    Загрузка

    Необходимо загрузить как Alauda AI, так и Knative Operator в кластер, где будет использоваться Alauda AI.

    Загрузка инструмента violet

    Сначала необходимо загрузить инструмент violet, если он отсутствует на машине.

    Войдите в Web Console и переключитесь в представление Administrator:

    1. Нажмите Marketplace / Upload Packages.
    2. Нажмите Download Packaging and Listing Tool.
    3. Найдите нужную ОС / архитектуру CPU в разделе Execution Environment.
    4. Нажмите Download, чтобы загрузить инструмент violet.
    5. Выполните chmod +x ${PATH_TO_THE_VIOLET_TOOL}, чтобы сделать инструмент исполняемым.

    Загрузка пакета

    Сначала сохраните следующий скрипт в uploading-ai-cluster-packages.sh, затем прочитайте комментарии ниже и обновите переменные окружения для настройки в этом скрипте.

    uploading-ai-cluster-packages.sh
    #!/usr/bin/env bash
    export PLATFORM_ADDRESS=https://platform-address  
    export PLATFORM_ADMIN_USER=<admin>
    export PLATFORM_ADMIN_PASSWORD=<admin-password>
    export CLUSTER=<cluster-name>
    
    export AI_CLUSTER_OPERATOR_NAME=<path-to-aml-operator-tarball>
    export KNATIVE_OPERATOR_PKG_NAME=<path-to-knative-operator-tarball>
    
    VIOLET_EXTRA_ARGS=()
    IS_EXTERNAL_REGISTRY=
    
    # If the image registry type of destination cluster is not platform built-in (external private or public repository).
    # Additional configuration is required (uncomment following line):
    # IS_EXTERNAL_REGISTRY=true
    if [[ "${IS_EXTERNAL_REGISTRY}" == "true" ]]; then
        REGISTRY_ADDRESS=<external-registry-url>
        REGISTRY_USERNAME=<registry-username>
        REGISTRY_PASSWORD=<registry-password>
    
        VIOLET_EXTRA_ARGS+=(
            --dst-repo "${REGISTRY_ADDRESS}"
            --username "${REGISTRY_USERNAME}"
            --password "${REGISTRY_PASSWORD}"
        )
    fi
    
    # Push **Alauda AI Cluster** operator package to destination cluster
    violet push \
        ${AI_CLUSTER_OPERATOR_NAME} \
        --platform-address=${PLATFORM_ADDRESS} \
        --platform-username=${PLATFORM_ADMIN_USER} \
        --platform-password=${PLATFORM_ADMIN_PASSWORD} \
        --clusters=${CLUSTER} \
        ${VIOLET_EXTRA_ARGS[@]}
    
    # Push **Knative Operator** package to destination cluster
    violet push \
        ${KNATIVE_OPERATOR_PKG_NAME} \
        --platform-address=${PLATFORM_ADDRESS} \
        --platform-username=${PLATFORM_ADMIN_USER} \
        --platform-password=${PLATFORM_ADMIN_PASSWORD} \
        --clusters=${CLUSTER} \
        ${VIOLET_EXTRA_ARGS[@]}
    1. ${PLATFORM_ADDRESS} — это адрес вашей платформы ACP.
    2. ${PLATFORM_ADMIN_USER} — это имя пользователя администратора платформы ACP.
    3. ${PLATFORM_ADMIN_PASSWORD} — это пароль администратора платформы ACP.
    4. ${CLUSTER} — это имя кластера, в который будут установлены компоненты Alauda AI.
    5. ${AI_CLUSTER_OPERATOR_NAME} — это путь к архиву пакета Alauda AI Cluster Operator.
    6. ${KNATIVE_OPERATOR_PKG_NAME} — это путь к архиву пакета Knative Operator.
    7. ${REGISTRY_ADDRESS} — это адрес внешнего реестра.
    8. ${REGISTRY_USERNAME} — это имя пользователя внешнего реестра.
    9. ${REGISTRY_PASSWORD} — это пароль внешнего реестра.

    После настройки выполните файл скрипта с помощью bash ./uploading-ai-cluster-packages.sh, чтобы загрузить как Alauda AI, так и Knative Operator.

    Установка Alauda AI Operator

    Процедура

    В представлении Administrator:

    1. Нажмите Marketplace / OperatorHub.

    2. В верхней части консоли в выпадающем списке Cluster выберите целевой кластер, в который вы хотите установить Alauda AI.

    3. Выберите Alauda AI, затем нажмите Install.

      Откроется окно Install Alauda AI.

    4. Затем в окне Install Alauda AI.

    5. Оставьте Channel без изменений.

    6. Проверьте, соответствует ли Version версии Alauda AI, которую вы хотите установить.

    7. Оставьте Installation Location без изменений; по умолчанию должно быть aml-operator.

    8. Для Upgrade Strategy выберите Manual.

    9. Нажмите Install.

    Проверка

    Убедитесь, что плитка Alauda AI показывает одно из следующих состояний:

    • Installing: установка выполняется; дождитесь, пока состояние изменится на Installed.
    • Installed: установка завершена.

    Установка Alauda Build of KServe Operator

    Подробные шаги установки см. в Install KServe в Alauda Build of KServe.

    Включение функциональности Knative

    Функциональность Knative является дополнительной возможностью, для которой требуется развернуть дополнительный оператор и экземпляр.

    WARNING

    Если вы планируете использовать функциональность Knative, вы ДОЛЖНЫ установить Knative Operator и создать экземпляр Knative Serving ДО создания экземпляра Alauda AI, чтобы гарантировать наличие необходимых CRD в кластере.

    1. Установка Knative Operator

    INFO

    Начиная с Knative Operator, сетевой уровень Knative переключается на Kourier, поэтому установка Istio больше не требуется.

    Процедура

    В представлении Administrator:

    1. Нажмите Marketplace / OperatorHub.

    2. В верхней части консоли в выпадающем списке Cluster выберите целевой кластер, в который вы хотите установить.

    3. Найдите и выберите Knative Operator, затем нажмите Install.

      Откроется окно Install Knative Operator.

    4. Затем в окне Install Knative Operator.

    5. Оставьте Channel без изменений.

    6. Проверьте, соответствует ли Version версии Knative Operator, которую вы хотите установить.

    7. Оставьте Installation Location без изменений.

    8. Для Upgrade Strategy выберите Manual.

    9. Нажмите Install.

    Проверка

    Убедитесь, что плитка Knative Operator показывает одно из следующих состояний:

    • Installing: установка выполняется; дождитесь, пока состояние изменится на Installed.
    • Installed: установка завершена.

    2. Создание экземпляра Knative Serving

    После установки Knative Operator необходимо вручную создать экземпляр KnativeServing.

    Процедура

    1. Создайте namespace knative-serving.

      kubectl create ns knative-serving
    2. В представлении Administrator перейдите в Operators -> Installed Operators.

    3. Выберите Knative Operator.

    4. В разделе Provided APIs найдите KnativeServing и нажмите Create Instance.

    5. Переключитесь в YAML view.

    6. Замените содержимое следующим YAML:

    7. Нажмите Create.

      apiVersion: operator.knative.dev/v1beta1
      kind: KnativeServing
      metadata:
        name: knative-serving
        namespace: knative-serving
      spec:
        # For ACP 4.0, use version 1.18.1
        # For ACP 4.1 and above, use version 1.19.6
        version: "1.18.1"
        config:
          deployment:
            registries-skipping-tag-resolving: kind.local,ko.local,dev.local,private-registry
          domain:
            example.com: ""
          features:
            kubernetes.podspec-affinity: enabled
            kubernetes.podspec-hostipc: enabled
            kubernetes.podspec-hostnetwork: enabled
            kubernetes.podspec-init-containers: enabled
            kubernetes.podspec-nodeselector: enabled
            kubernetes.podspec-persistent-volume-claim: enabled
            kubernetes.podspec-persistent-volume-write: enabled
            kubernetes.podspec-securitycontext: enabled
            kubernetes.podspec-tolerations: enabled
            kubernetes.podspec-volumes-emptydir: enabled
            queueproxy.resource-defaults: enabled
          network:
            domain-template: '{{.Name}}.{{.Namespace}}.{{.Domain}}'
            ingress-class: kourier.ingress.networking.knative.dev
        ingress:
          kourier:
            enabled: true
    WARNING
    • Для ACP 4.0 используйте версию 1.18.1
    • Для ACP 4.1 и выше используйте версию 1.19.6
    1. Укажите версию Knative Serving, которую необходимо развернуть.

    2. private-registry — это заглушка для адреса вашего private registry. Вы можете найти его в представлении Administrator, затем нажать Clusters, выбрать your cluster и проверить значение Private Registry в разделе Basic Info.

    Создание экземпляра Alauda AI

    После установки Alauda AI Operator (и, при необходимости, Knative Operator) вы можете создать экземпляр Alauda AI.

    Процедура

    В представлении Administrator:

    1. Нажмите Marketplace / OperatorHub.

    2. В верхней части консоли в выпадающем списке Cluster выберите целевой кластер, в который вы хотите установить Alauda AI Operator.

    3. Выберите Alauda AI, затем нажмите Click.

    4. На странице Alauda AI нажмите All Instances на вкладке.

    5. Нажмите Create.

      Откроется окно Select Instance Type.

    6. Найдите плитку AmlCluster в окне Select Instance Type, затем нажмите Create.

      Отобразится форма Create AmlCluster.

    7. Для Name оставьте default без изменений.

    8. В выпадающем списке Deploy Flavor выберите:

      1. single-node для развертываний без HA.
      2. ha-cluster для HA-кластеров (рекомендуется для production).
    9. Установите для KServe Mode значение Managed.

    10. Введите допустимый домен в поле Domain.

      INFO

      Этот домен используется ingress gateway для публикации сервисов модели. Скорее всего, вам потребуется использовать wildcard-имя, например *.example.com.

      Вы можете указать следующие типы сертификатов, обновив поле Domain Certificate Type:

      • Provided
      • SelfSigned
      • ACPDefaultIngress

      По умолчанию конфигурация использует тип сертификата SelfSigned для защиты ingress-трафика к вашему кластеру; сертификат хранится в секрете knative-serving-cert, указанном в поле Domain Certificate Secret.

    11. (Необязательно) Если вы хотите включить функциональность Knative, в разделе Serverless Configuration установите для Knative Serving Provider значение Operator.

      INFO

      Если вы установили Knative Operator для включения функциональности Serverless в предыдущих шагах, укажите следующие параметры для его интеграции:

      • APIVersion: operator.knative.dev/v1beta1
      • Kind: KnativeServing
      • Name: knative-serving
      • Namespace: knative-serving

      Если вы не используете функциональность Knative, оставьте для Knative Serving Provider значение Removed (или пустым), а остальные параметры — пустыми.

    12. В разделе Gitlab:

      1. Введите URL самостоятелно размещенного Gitlab в поле Base URL.
      2. Введите cpaas-system для Admin Token Secret Namespace.
      3. Введите aml-gitlab-admin-token для Admin Token Secret Name.
    13. Проверьте указанные выше настройки, затем нажмите Create.

    Проверка

    Проверьте поле статуса ресурса AmlCluster с именем default:

    kubectl get amlcluster default

    Должно вернуть Ready:

    NAME      READY   REASON
    default   True    Succeeded

    Теперь основные возможности Alauda AI успешно развернуты. Если вы хотите быстро ознакомиться с продуктом, обратитесь к Quick Start.

    FAQ

    1. Настройка каталога вывода аудита для aml-skipper

    Путь вывода аудита по умолчанию — /cpaas/audit на хосте. Однако в некоторых операционных системах (например, MicroOS) корневой путь хоста доступен только для чтения, и каталог /cpaas не может быть создан. В этом случае пользователям необходимо изменить путь вывода аудита.

    Чтобы изменить путь вывода аудита, обновите ресурс AmlCluster по умолчанию и добавьте конфигурацию amlSkipper.auditLogHostPath.path в раздел spec.values. Например:

    apiVersion: amlclusters.aml.dev/v1alpha2
    kind: AmlCluster
    metadata:
      name: default
      ...
    spec:
      ...
      values:
        amlSkipper:
          auditLogHostPath:
            path: /var/lib/audit
    NOTE

    Конкретный путь должен соответствовать настройкам сбора Alauda Container Platform Log Collector.