Crie uma organização do Gemini

Esta página explica como criar uma nova organização no Google Distributed Cloud (GDC) air-gapped e configurar essa organização para usar o Gemini.

Esta página usa dois termos que se referem a conceitos diferentes: organização do cliente e organização do Gemini. Cada termo é definido da seguinte forma:

  • Organização do cliente: a organização do GDC onde os utilizadores executam as respetivas cargas de trabalho, acedem à infraestrutura da plataforma e usam os serviços do Vertex AI. Para mais informações sobre as organizações de clientes, consulte o artigo Crie uma organização de clientes.
  • Organização do Gemini: o recurso de organização configurado para executar um servidor de modelos do Gemini. Por motivos de segurança, as cargas de trabalho dos utilizadores não podem ser executadas nesta organização. Apenas o código de terceiros aprovado pela Google tem de ser executado na organização do Gemini. A organização do Gemini é uma organização separada da organização do cliente que segue um modelo de multi-single tenancy, em que cada organização do cliente tem a sua própria organização do Gemini correspondente.

Para mais informações sobre as diferenças entre organizações, consulte a Vista geral do operador.

Antes de começar

Para criar uma organização do Gemini, tem de ter o seguinte:

  • Uma organização de cliente em funcionamento.
  • Um navegador no seu sistema.
  • A interface de linhas de comando (CLI) do Git.
  • A CLI kubectl.
  • A CLI gcloud.
  • As ferramentas de CLI jq e yq. Para ver detalhes sobre a configuração do contentor de ferramentas, que contém jq e yq, consulte o manual de instruções OOPS-P0065.
  • As funções de operador de infraestrutura (IO) necessárias. Para mais informações sobre estas funções, consulte o artigo Prepare as autorizações do IAM.

Além disso, certifique-se de que cumpre as verificações pré-implementação.

Crie a organização do Gemini

Siga estes passos para criar uma organização do Gemini:

  1. Siga o guia crie uma organização até concluir a associação do fornecedor de identidade do IO à organização com a IAC. Esta ação cria uma organização separada que funciona como a organização do Gemini numa única zona. Siga estas diretrizes ao criar a organização:

    • Um dos servidores disponíveis tem de ser um servidor Dell XE9680 com uma classe de máquina d3-highgpu1-256-gdc-metal. O primeiro passo das instruções Crie uma organização com IaC fornece um comando para verificar os servidores disponíveis. Se o servidor com a classe de máquina d3-highgpu1-256-gdc-metal não estiver disponível, consulte a vista geral da expansão dinâmica para explorar as opções de expansão do servidor. Em seguida, adicione o novo servidor de carga de trabalho.

    • Quando criar uma organização com a IaC, depois de criar o recurso personalizado Organization, adicione a anotação organizations.resourcemanager.private.gdc.goog/shared-service-cluster-skip-create-cluster: "true" no recurso personalizado para ignorar a criação de um cluster de serviços partilhados e otimizar os recursos.

    • Crie o recurso personalizado OrganizationZonalConfig numa única zona. Esta zona é usada como a zona do Gemini. A organização do cliente tem de estar na mesma zona, mas também pode ser implementada em mais zonas. Para mais informações, consulte o artigo Modelo de implementação em várias zonas para o Gemini.

  2. Adicione a etiqueta lcm.private.gdc.goog/org-tenant="gemini" ao recurso personalizado Organization da organização do Gemini:

    KUBECONFIG=ROOT_ADMIN_KUBECONFIG_PATH
    GEMINI_ORG_NAME=GEMINI_ORGANIZATION_NAME
    
    kubectl label organization -n gpc-system ${GEMINI_ORG_NAME:?} \
      lcm.private.gdc.goog/org-tenant="gemini" --kubeconfig ${KUBECONFIG:?}
    

    Substitua o seguinte:

    • ROOT_ADMIN_KUBECONFIG_PATH: o caminho para o ficheiro kubeconfig do cluster de administrador raiz.
    • GEMINI_ORGANIZATION_NAME: o nome da organização do Gemini.
  3. Verifique se o cluster de infraestrutura da organização do Gemini está em funcionamento:

    kubectl get cluster/${GEMINI_ORG_NAME:?}-admin -n ${GEMINI_ORG_NAME:?}
    

    O resultado seguinte mostra um exemplo para uma organização do Gemini denominada org-1:

    NAMESPACE   NAME          ABM VERSION        DESIRED ABM VERSION   CLUSTER STATE
    org-1       org-1-admin   1.30.500-gke.128   1.30.500-gke.128      Running
    
  4. Encontre todos os nós de trabalho que têm uma GPU H200 configurada no cluster de infraestrutura da organização Gemini:

    KUBECONFIG=GEM_ORG_CP_KUBECONFIG_PATH
    
    kubectl --kubeconfig ${KUBECONFIG:?} get nodes \
      -o json | jq -r \
      '.items[] | select(.status.capacity."nvidia.com/gpu-pod-NVIDIA_H200"=="8") | .metadata.name'
    

    Substitua GEM_ORG_CP_KUBECONFIG_PATH pelo caminho para o ficheiro kubeconfig do cluster de infraestrutura da organização do Gemini.

  5. Aplique a etiqueta gemini.gdc.goog/large-gemini=true a todos os nós de trabalho com GPUs H200 que obteve do comando anterior:

    NODE_NAME=H200_WORKER_NODE_NAME
    
    kubectl label node ${NODE_NAME:?} \
      "gemini.gdc.goog/large-gemini=true" \
      --kubeconfig ${KUBECONFIG:?}
    

    Substitua H200_WORKER_NODE_NAME pelo nome do nó de trabalho com uma GPU H200.

Substitua os Feature Gates para componentes operáveis do Gemini

Quando terminar o aprovisionamento da organização do Gemini e confirmar que tem o estado READY, tem de substituir os Feature Gates para ativar os componentes operáveis na organização do Gemini ou do cliente.

A tabela seguinte resume os manuais de procedimentos que tem de seguir para substituir os gates de funcionalidades e ativar os componentes operáveis:

Componente acionável Organização de destino Referência do runbook
GEMINI Organização do Gemini GEMINI-F0001
AICS Organização do cliente AICS-F0001
GPU Organização do Gemini GPU-F0001

Gere chaves de encriptação

A geração da chave de encriptação para uma organização é uma operação única. Se executar novamente o comando, o sistema já não vai poder desencriptar nenhum modelo carregado. Para gerar a chave, tem de executar uma tarefa na nova organização que acabou de criar.

KUBECONFIG=GEM_ORG_CP_KUBECONFIG_PATH
kubectl --kubeconfig=${KUBECONFIG:?} -n gemini create job --from=cronjob/gemini-weights-transfer-keygen

Quando a tarefa estiver concluída, deve conseguir ler a chave através do seguinte comando

KUBECONFIG=GEM_ORG_CP_KUBECONFIG_PATH
kubectl --kubeconfig=${KUBECONFIG:?} -n gemini-system \
  logs job.batch/gemini-weights-transfer-keygen \
  | grep -oP '<PublicKey.*?</PublicKey>' | head -n 1

O que se segue?