配置 Alauda AI 入口和品牌

从 Alauda AI 2.6 开始,Alauda AI 以单集群应用的形式部署。全局资源(OIDC client 和产品入口)不再作为集群插件交付,而是通过 global-install.sh 脚本进行配置。

WARNING

如果在早期版本中安装了 Alauda AI Essentials 集群插件,则在升级到 Alauda AI 2.6 或更高版本后必须将其卸载。在 管理员 视图中,导航到 Marketplace / Cluster Plugin,选择 global 集群,找到 Alauda AI Essentials,然后单击 Uninstall

该脚本会在 global 集群上创建以下资源:

  • OAuth2Client:通过平台的 Dex Identity Provider 为 Alauda AI 启用 SSO 认证。
  • Secret:存储 OIDC client 凭据。
  • ProductEntry:将 Alauda AI 注册为平台控制台中的产品入口,使其显示在左侧导航菜单中。

前提条件

  • 已安装并配置 kubectl,可用于访问 global 集群。
  • global 集群中存在 productbase.product.alauda.io/base 资源(脚本会从中读取平台 URL 和版本)。

操作步骤

下载脚本

下载 global-install.sh 脚本。

运行脚本

以目标集群名称作为参数运行脚本:

bash global-install.sh \
    <cluster-name>
  1. <cluster-name> 是安装 Alauda AI 的集群名称,或者将要安装 Alauda AI 的集群名称。

脚本会从 global 集群上的 productbase.product.alauda.io/base 中读取平台 URL 和版本,然后创建所需的 OIDC 和产品入口资源。如果已存在同名 OAuth2Client,则会安全地跳过。

重要说明

OIDC 配置:global 集群中的 OAuth2Client 资源与目标集群中的 AmlCluster 之间必须匹配 OIDC client 凭据。OAuth2Clientcpaas-system 命名空间下命名为 aml。其 secret(或 secretRef)必须与 AmlCluster spec.oidc.clientSecretName 所引用的 Secret 中的 data.client-secret 保持一致(位于 kubeflow 命名空间下)。如果需要自定义,请同时更新两端。一旦 OAuth2Client 存在,脚本会跳过它——后续更改应直接在该资源上进行。

多个 Alauda AI 安装:ProductEntry 资源命名为 aml-<cluster-name>。如果在不同集群中部署了多个 Alauda AI 实例,它们都会拥有一个单独的 ProductEntry,但显示名称相同,均为 “Alauda AI”。要在平台控制台导航菜单中区分它们,请编辑对应 ProductEntry 的 spec.displayName 字段。例如:

kubectl patch productentry aml-<cluster-name> --type=merge -p '{"spec":{"displayName":{"en":"Alauda AI (Prod)","zh":"Alauda AI (Prod)"}}}'

产品内品牌设置:此设置应用于安装 Alauda AI 的集群,而不是上面资源所使用的 global 集群。在运行命令之前,请将 kubectl 上下文切换到 Alauda AI 安装集群。要自定义 Alauda AI 内部显示的产品名称、logo 和浏览器 favicon,请更新 kubeflow 命名空间中的 ui-config ConfigMap。将 data.override 设置为 "true",然后配置 data.productNamedata.logodata.faviconlogofavicon 的值必须是完整的 data URI 值,例如 data:image/svg+xml;base64,<base64-encoded-svg>data:image/png;base64,<base64-encoded-png>

kubectl patch configmap ui-config -n kubeflow --type=merge -p '{
  "data": {
    "override": "true",
    "productName": "My AI Platform",
    "logo": "data:image/svg+xml;base64,<base64-encoded-logo>",
    "favicon": "data:image/svg+xml;base64,<base64-encoded-favicon>"
  }
}'

验证

运行脚本后,确认已创建这些资源:

# Check the OAuth2Client
kubectl get oauth2client -n cpaas-system

# Check the ProductEntry
kubectl get productentry

经过短暂延迟后,Alauda AI 入口应出现在平台控制台左侧导航菜单中。