O conjunto de IA nativa da cloud pode ser instalado em clusters ACK Pro, ACK Serverless Pro e ACK Edge Pro que executam Kubernetes 1.18 ou posterior. Este tópico explica como instalar o conjunto e configurar os consoles de operações e de desenvolvimento de IA nativa da cloud.
Pré-requisitos
Certifique-se de que:
Um cluster ACK Pro, {{XREF_0}} ou {{XREF_1}} com Kubernetes 1.18 ou posterior foi criado.
(Para o console de operações de IA) As opções Container Monitoring e Log Service foram selecionadas na página Component Configurations durante a criação do cluster, ou os componentes ack-arms-prometheus e loongcollector foram instalados na página Add-ons. Consulte {{XREF_2}} e {{XREF_3}}
Implantar o conjunto
Faça logon no console ACK. No painel de navegação à esquerda, clique em Clusters.
Na página Clusters, clique no nome do seu cluster. No painel à esquerda, escolha Applications > Cloud-native AI Suite.
Na página Cloud-native AI Suite, clique em Deploy.
-
Na página de implantação, selecione os componentes a serem instalados. Consulte {{XREF_4}} para obter detalhes e informações sobre compatibilidade.
Se você selecionar Kube Queue , Console e Kubeflow Pipelines juntos, o componente Arena será obrigatório.
Clique em Deploy Cloud-native AI Suite. O sistema executa uma verificação de ambiente e dependências e, em seguida, implanta os componentes selecionados.
Referência de componentes
A tabela a seguir lista todos os componentes, seus namespaces e os tipos de cluster suportados.
|
Configuração |
Componente |
Namespace |
ACK Pro |
ACK Serverless Pro |
ACK Edge Pro |
|
Elasticity |
ack-alibaba-cloud-metrics-adapter |
kube-system |
Sim |
Não |
Sim |
|
Acceleration (Aceleração de dados Fluid) |
ack-fluid |
fluid-system |
Sim |
Sim |
Sim |
|
Scheduling (agendamento de tarefas em lote, compartilhamento de GPU, agendamento de GPU com reconhecimento de topologia e agendamento de NPU) |
ack-ai-installer |
kube-system |
Sim |
Não |
Sim |
|
Kube Queue |
ack-kube-queue |
kube-queue |
Sim |
Sim |
Sim |
|
Arena (CLI) |
ack-arena |
kube-system |
Sim |
Sim |
Sim |
|
Console (Platform for AI) |
ack-pai |
pai-system |
Sim |
Não |
Sim |
|
Console (AI Dashboard) |
ack-ai-dashboard |
kube-ai |
Sim |
Não |
Sim |
|
Console (AI Developer Console) |
ack-ai-dev-console |
kube-ai |
Sim |
Não |
Sim |
|
Console Data Storage |
ack-mysql |
kube-ai |
Sim |
Não |
Sim |
|
Workflow (Kubeflow Pipelines) |
ack-ai-pipeline |
kube-ai |
Sim |
Não |
Sim |
|
Monitoring |
ack-arena-exporter |
kube-ai |
Sim |
Não |
Sim |
O componente ack-pai integra algoritmos e mecanismos otimizados pelo Platform for AI (PAI), incluindo Data Science Workshop (DSW), Deep Learning Containers (DLC) e Elastic Algorithm Service (EAS), para melhorar a elasticidade e a eficiência no desenvolvimento, treinamento e inferência de IA.
Para configurar parâmetros personalizados nos componentes de Scheduling, clique em Advanced na página de implantação.
Caso tenha selecionado o Arena, configure o cliente Arena separadamente após a instalação.
Consulte também Aceleração de dados Fluid, ack-ai-installer, ack-kube-queue e ack-ai-pipeline.
Configurar o console de IA
A partir de 22 de janeiro de 2025, o console de IA (AI Dashboard e AI Developer Console) está disponível apenas para usuários incluídos na lista de permissões. As implantações existentes não são afetadas. Usuários fora da lista de permissões podem instalar e configurar o console de IA por meio da comunidade open source. Consulte data-on-ack .
Autorizar o console de IA
-
Na seção Ecosystem Tools, selecione Console. Uma caixa de diálogo Note será exibida.
Se o status de autorização exibir Authorized, pule para {{XREF_5}}.
Se o status exibir Unauthorized em vermelho e o botão OK estiver indisponível, conclua a autorização abaixo.
-
Crie uma política personalizada no Resource Access Management (RAM).
Faça logon no console RAM. No painel de navegação à esquerda, escolha Permissions > Policies.
Clique em Create Policy.
-
Na aba JSON, insira a seguinte política e clique em OK. Nomeie a política como
k8sWorkerRolePolicy-{ClusterID}.{ "Version": "1", "Statement": [ { "Effect": "Allow", "Action": [ "cs:*", "log:GetProject", "log:GetLogStore", "log:GetConfig", "log:GetMachineGroup", "log:GetAppliedMachineGroups", "log:GetAppliedConfigs", "log:GetIndex", "log:GetSavedSearch", "log:GetDashboard", "log:GetJob", "ecs:DescribeInstances", "ecs:DescribeSpotPriceHistory", "ecs:DescribePrice", "eci:DescribeContainerGroups", "eci:DescribeContainerGroupPrice", "log:GetLogStoreLogs", "ims:CreateApplication", "ims:UpdateApplication", "ims:GetApplication", "ims:ListApplications", "ims:DeleteApplication", "ims:CreateAppSecret", "ims:GetAppSecret", "ims:ListAppSecretIds", "ims:ListUsers" ], "Resource": "*" } ] }
-
Anexe a política personalizada à função RAM do cluster.
No console RAM, no painel de navegação à esquerda, escolha Identities > Roles.
Pesquise por
KubernetesWorkerRole-{ClusterID}e clique em Grant Permission na coluna Actions.No painel Grant Permission, pesquise por
k8sWorkerRolePolicy-{ClusterID}.Selecione a política e clique em Grant permissions.
Retorne à caixa de diálogo Note e clique em Authorization Check. O status mudará para Authorized e o botão OK ficará disponível.
Selecionar um método de acesso
Na caixa de diálogo Note, selecione um método de acesso e clique em OK.
|
Método de acesso |
Uso recomendado |
Observações |
|
Private IP |
Produção |
Acessa o console pela rede interna |
|
Internal Domain |
Produção |
Utiliza um nome de domínio privado |
|
Public Domain |
Apenas testes |
Mapeie o domínio público para o IP público do SLB do NGINX Ingress no seu arquivo hosts local |
Consulte {{XREF_6}}.
Configurar o armazenamento de dados do console
Após selecionar Console em Interaction Mode, a opção Console Data Storage aparecerá. Escolha um método de armazenamento.
MySQL pré-instalado (apenas testes)
Se você não selecionar ApsaraDB RDS, o cluster usará um banco de dados MySQL integrado por padrão.
Esta opção é recomendada apenas para testes. Em caso de falha no cluster ou perda de armazenamento, os dados poderão ser perdidos.
A implantação cria um disco de 120 GB como PersistentVolumeClaim (PVC) usando a StorageClass. O ACK não gerencia o ciclo de vida do disco. Exclua o disco manualmente quando ele não for mais necessário.
ApsaraDB RDS (produção)
Utilize o ApsaraDB RDS para cargas de trabalho de produção.
Se ocorrer um erro de conexão, consulte {{XREF_7}} .
Para alterar o método de armazenamento, desinstale e reinstale o conjunto. Exclua o Secretkubeai-rdsno namespacekube-aiantes de reinstalar, caso ele exista.
Adquira uma instância ApsaraDB RDS e crie um banco de dados e uma conta. Consulte {{XREF_8}} e Visão geral do faturamento.
Clique em Deploy Cloud-native AI Suite na parte inferior da página de implantação.
No console ACK, clique no nome do cluster. No painel de navegação à esquerda, escolha Configurations > Secrets.
Na lista suspensa Namespace, selecione
kube-ai.Clique em Create from YAML.
-
Insira o seguinte modelo YAML para criar um Secret chamado
kubeai-rdse clique em Create.Parâmetro
Descrição
MYSQL_HOSTO endpoint de conexão do ApsaraDB RDS
MYSQL_DB_NAMEO nome do banco de dados
MYSQL_USERO nome de usuário da conta do banco de dados
MYSQL_PASSWORDA senha da conta do banco de dados
apiVersion: v1 kind: Secret metadata: name: kubeai-rds namespace: kube-ai type: Opaque stringData: MYSQL_HOST: "Your RDS endpoint" MYSQL_DB_NAME: "Database name" MYSQL_USER: "Database username" MYSQL_PASSWORD: "Database password"
Configurar o armazenamento de dados do workflow
Se você selecionar Kubeflow Pipelines como mecanismo de workflow, a opção Workflow Data Storage aparecerá. Escolha um método de armazenamento.
MinIO pré-instalado (apenas testes)
Caso não selecione OSS, o cluster utilizará uma instância integrada do MinIO por padrão.
Esta opção é recomendada apenas para testes. Em caso de falha no cluster ou perda de armazenamento, os dados poderão ser perdidos.
A implantação cria um disco de 20 GB como PVC usando a StorageClass. O ACK não gerencia o ciclo de vida do disco. Exclua o disco manualmente quando ele não for mais necessário.
Object Storage Service (testes e produção)
Utilize o Object Storage Service (OSS) para armazenamento persistente e escalável de dados de workflow.
-
Se o namespace
kube-ainão existir, crie-o:O namespace
kube-aié criado automaticamente durante a implantação do conjunto. Verifique se ele existe antes de tentar criá-lo.kubectl create ns kube-ai No console ACK, clique no nome do cluster. No painel de navegação à esquerda, escolha Configurations > Secrets.
Na lista suspensa Namespace, selecione
kube-ai.Clique em Create from YAML.
-
Insira o seguinte YAML para criar um Secret chamado
kubeai-osse clique em Create.Parâmetro
Descrição
ENDPOINTO endpoint do OSS para sua região. Consulte {{XREF_9}}
ACCESS_KEY_IDO AccessKey ID de um usuário RAM com permissão
AliyunOSSFullAccess. Consulte Criar um par de AccessKeyACCESS_KEY_SECRETO AccessKey secret do usuário RAM
apiVersion: v1 kind: Secret metadata: name: kubeai-oss namespace: kube-ai type: Opaque stringData: ENDPOINT: "https://oss-cn-beijing.aliyuncs.com" ACCESS_KEY_ID: "****" ACCESS_KEY_SECRET: "****" -
Após criar o Secret, verifique se um bucket chamado
mlpipeline-<clusterid>aparece no console OSS. Consulte Visão geral do faturamento para obter informações sobre o faturamento do OSS. Retorne à página de implantação e instale o Kubeflow Pipelines.
Verificar a implantação
Após a implantação, verifique se os componentes estão em execução:
No console ACK, clique no nome do cluster. No painel à esquerda, escolha Applications > Cloud-native AI Suite. A lista de componentes exibe todos os itens instalados com suas respectivas versões.
Confirme se cada componente apresenta um status de implantação bem-sucedida. É possível Deploy ou Uninstall componentes individuais. Caso haja uma versão mais recente disponível, você também pode executar o Upgrade.
Se você instalou os consoles de IA, clique em AI Dashboard ou AI Developer Console no canto superior esquerdo da página Cloud-native AI Suite para verificar o acesso.