Por Que Isso é Importante

Se você já passou horas lidando com Helm charts, roles IAM e dependências manuais para implantar um modelo de ML, sabe o quanto isso atrasa o time. O novo Operador de Inferência do Amazon SageMaker HyperPod resolve isso: agora é um add-on nativo do EKS, com instalação em um clique e atualizações gerenciadas. Resultado? Menos complexidade, mais segurança e deploy em minutos.

Neste tutorial, você vai ver:

  • Três formas de instalar (console SageMaker, CLI do EKS, Terraform)
  • Recursos novos (deploy multi-instância, node affinity)
  • Exemplo real com modelo DeepSeek
  • Migração do Helm para o add-on sem downtime

Fonte: AWS Architecture Blog

AWS SageMaker HyperPod cluster dashboard showing inference operator installation status Algorithm Concept Visual

Métodos de Instalação

Método 1: Console SageMaker (Recomendado)

O caminho mais simples. Vá em HyperPod Clusters → Cluster Management, selecione o cluster, clique na aba Inference e escolha Quick Install ou Custom Install. O console cria automaticamente roles IAM, buckets S3, endpoints VPC e add-ons de dependência (cert-manager, S3 CSI driver, FSx CSI driver, metrics-server).

Verifique a instalação:

kubectl get pods -n hyperpod-inference-system
aws eks describe-addon --cluster-name NOME-DO-CLUSTER --addon-name amazon-sagemaker-hyperpod-inference --region REGIAO

Método 2: CLI do EKS (Para Automação)

Se você prefere linha de comando, instale diretamente via AWS CLI. Atenção: Todos os pré-requisitos (roles IAM, buckets S3, endpoints VPC, add-ons de dependência) precisam ser criados manualmente antes de executar este comando.

aws eks create-addon \
  --cluster-name meu-cluster-hyperpod \
  --addon-name amazon-sagemaker-hyperpod-inference \
  --addon-version v1.0.0-eksbuild.1 \
  --configuration-values '{
    "executionRoleArn": "arn:aws:iam::CONTA-ID:role/SageMakerHyperPodInference-inference-role",
    "tlsCertificateS3Bucket": "hyperpod-tls-certificate-bucket",
    "hyperpodClusterArn": "arn:aws:sagemaker:REGIAO:CONTA-ID:cluster/CLUSTER-ID",
    "alb": {
      "serviceAccount": {
        "create": true,
        "roleArn": "arn:aws:iam::CONTA-ID:role/alb-controller-role"
      }
    },
    "keda": {
      "auth": {
        "aws": {
          "irsa": {
            "roleArn": "arn:aws:iam::CONTA-ID:role/keda-operator-role"
          }
        }
      }
    }
  }' \
  --region us-west-2

Método 3: Terraform (Infraestrutura como Código)

Para quem usa Terraform, o repositório awesome-distributed-training no GitHub tem módulos prontos. Ative a variável create_hyperpod_inference_operator_module = true no seu custom.tfvars:

kubernetes_version = "1.33"
eks_cluster_name = "tf-eks-cluster"
hyperpod_cluster_name = "tf-hp-cluster"
resource_name_prefix = "tf-eks-test"
aws_region = "us-east-1"
instance_groups = [
  {
    name = "accelerated-instance-group-1"
    instance_type = "ml.g5.8xlarge"
    instance_count = 2
    availability_zone_id = "use1-az2"
    ebs_volume_size_in_gb = 100
    threads_per_core = 1
    enable_stress_check = false
    enable_connectivity_check = false
    lifecycle_script = "on_create.sh"
  }
]
create_hyperpod_inference_operator_module = true

Implantando Seu Primeiro Modelo

Com o add-on instalado, use um recurso JumpStartModel para fazer deploy. Exemplo com DeepSeek R1 Distill Qwen 1.5B:

apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: JumpStartModel
metadata:
  name: deepseek-test-endpoint
spec:
  model:
    modelId: "deepseek-llm-r1-distill-qwen-1-5b"
  sageMakerEndpoint:
    name: deepseek-test-endpoint
    server:
      instanceType: "ml.g5.8xlarge"

Aplique:

kubectl apply -f deepseek-endpoint.yaml

Kubernetes pods running inference workloads on SageMaker HyperPod with GPU utilization metrics Programming Illustration

Recursos Avançados

Implantação Multi-Instance Type

Defina uma lista priorizada de tipos de instância. O sistema automaticamente cai para o próximo tipo disponível se o preferido estiver sem capacidade:

apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: InferenceEndpointConfig
metadata:
  name: lmcache-test-1
  namespace: default
spec:
  replicas: 13
  modelName: Llama-3.1-8B-Instruct
  instanceTypes: ["ml.p4d.24xlarge","ml.g5.24xlarge","ml.g5.8xlarge"]

Node Affinity para Agendamento Granular

Use o nodeAffinity nativo do Kubernetes para excluir spot instances, mirar AZs específicas ou fixar em labels customizados:

apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: InferenceEndpointConfig
metadata:
  name: lmcache-test-1
  namespace: default
spec:
  replicas: 15
  modelName: Llama-3.1-8B-Instruct
  nodeAffinity:
    preferredDuringSchedulingIgnoredDuringExecution:
      - weight: 100
        preference:
          matchExpressions:
            - key: node.kubernetes.io/instanceType
              operator: In
              values: ["ml.g5.4xlarge"]
  worker:
    resources:
      limits:
        nvidia.com/gpu: "1"
      requests:
        cpu: "6"
        memory: 30Gi
        nvidia.com/gpu: "1"

Limitações e Cuidados

  • Conflito de dependências: Se você já tem cert-manager ou KEDA no cluster, o add-on pode conflitar. Use a flag --skip-dependencies durante a migração.
  • Limite de roles IAM: A criação automática de roles pode exceder o limite da sua conta se você tiver muitos clusters.
  • Bucket TLS na mesma região: O bucket S3 para certificados TLS precisa estar na mesma região do cluster.

Próximos Passos

Developer configuring Terraform deployment for HyperPod inference operator add-on Technical Structure Concept

Conclusão

O Operador de Inferência do SageMaker HyperPod como add-on do EKS elimina a sobrecarga de infraestrutura que atrasa times de ML. Com instalação em um clique, criação automatizada de recursos e atualizações gerenciadas, você vai do cluster criado ao modelo servindo predições em minutos, não horas. E recursos como implantação multi-instância e node affinity dão controle fino sobre o agendamento.

Comece agora: Crie um novo cluster HyperPod com o operador pré-instalado, ou adicione a um cluster existente com um clique no console SageMaker. Para opções de configuração detalhadas, veja o guia oficial.

Conteúdo Relacionado

Este conteúdo foi elaborado com o auxílio de ferramentas de IA, com base em fontes confiáveis, e revisado pela nossa equipe editorial antes da publicação. Não substitui o aconselhamento de um profissional especializado.