As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Migre recursos para os operadores mais recentes
Estamos interrompendo o desenvolvimento e o suporte técnico da versão original do SageMaker Operators for Kubernetes
Se você estiver usando atualmente a versão v1.2.2
ou inferior do SageMaker Operators for Kubernetes
Para obter respostas às perguntas frequentes sobre o fim do suporte da versão original do SageMaker Operators for Kubernetes, consulte Anunciando o fim do suporte da versão original do SageMaker AI Operators for Kubernetes
Use as etapas a seguir para migrar seus recursos e usar o ACK para treinar, ajustar e implantar modelos de aprendizado de máquina com a Amazon SageMaker AI.
nota
Os operadores de SageMaker IA mais recentes para Kubernetes não são compatíveis com versões anteriores.
Conteúdo
Pré-requisitos
Para migrar com sucesso os recursos para os operadores de SageMaker IA mais recentes do Kubernetes, você deve fazer o seguinte:
-
Instale os operadores de SageMaker IA mais recentes para Kubernetes. Consulte Configuração
no Machine Learning com o ACK SageMaker AI Controller para step-by-step obter instruções. -
Se você estiver usando Recursos HostingAutoscalingPolicy, instale o novo Application Auto Scaling Operators. Consulte Configuração
em escala de cargas de trabalho de SageMaker IA com Application Auto Scaling step-by-step para obter instruções. Essa etapa é opcional se você não estiver usando HostingAutoScalingPolicy recursos.
Se as permissões forem configuradas corretamente, o controlador de serviço ACK SageMaker AI poderá determinar a especificação e o status do AWS recurso e reconciliar o recurso como se o controlador ACK o tivesse criado originalmente.
Adote recursos
Os novos operadores de SageMaker IA para Kubernetes oferecem a capacidade de adotar recursos que não foram originalmente criados pelo controlador de serviço ACK. Para obter mais informações, consulte Adotar AWS recursos existentes
As etapas a seguir mostram como os novos operadores de SageMaker IA para Kubernetes podem adotar um endpoint de IA existente SageMaker . Salve o código de amostra a seguir em um arquivo chamado adopt-endpoint-sample.yaml
.
apiVersion: services.k8s.aws/v1alpha1 kind: AdoptedResource metadata: name: adopt-endpoint-sample spec: aws: # resource to adopt, not created by ACK nameOrID: xgboost-endpoint kubernetes: group: sagemaker.services.k8s.aws kind: Endpoint metadata: # target K8s CR name name: xgboost-endpoint
Envie o recurso personalizado (CR) usando kubectl apply
:
kubectl apply -f adopt-endpoint-sample.yaml
Use kubectl describe
para verificar as condições de status do seu recurso adotado.
kubectl describe adoptedresource adopt-endpoint-sample
Verifique se a condição ACK.Adopted
é True
. A saída deve ser semelhante ao seguinte exemplo:
--- kind: AdoptedResource metadata: annotations: kubectl.kubernetes.io/last-applied-configuration: '{"apiVersion":"services.k8s.aws/v1alpha1","kind":"AdoptedResource","metadata":{"annotations":{},"name":"xgboost-endpoint","namespace":"default"},"spec":{"aws":{"nameOrID":"xgboost-endpoint"},"kubernetes":{"group":"sagemaker.services.k8s.aws","kind":"Endpoint","metadata":{"name":"xgboost-endpoint"}}}}' creationTimestamp: '2021-04-27T02:49:14Z' finalizers: - finalizers.services.k8s.aws/AdoptedResource generation: 1 name: adopt-endpoint-sample namespace: default resourceVersion: '12669876' selfLink: "/apis/services.k8s.aws/v1alpha1/namespaces/default/adoptedresources/adopt-endpoint-sample" uid: 35f8fa92-29dd-4040-9d0d-0b07bbd7ca0b spec: aws: nameOrID: xgboost-endpoint kubernetes: group: sagemaker.services.k8s.aws kind: Endpoint metadata: name: xgboost-endpoint status: conditions: - status: 'True' type: ACK.Adopted
Verifique se seu recurso existe em seu cluster:
kubectl describe endpoints.sagemaker xgboost-endpoint
Recursos HostingAutoscalingPolicy
O recurso HostingAutoscalingPolicy
(HAP) consiste em vários recursos do Application Auto Scaling: ScalableTarget
e ScalingPolicy
. Ao adotar um recurso HAP com ACK, primeiro instale o controlador Application Autox ScalingScalableTarget
como o ScalingPolicy
. Você pode encontrar o identificador de recursos para esses recursos no status do HostingAutoscalingPolicy
recurso ()status.ResourceIDList
.
HostingDeployment recursos
O HostingDeployment
recurso consiste em vários recursos de SageMaker IA: Endpoint
EndpointConfig
, e cada umModel
. Se você adotar um endpoint de SageMaker IA no ACK, precisará adotar o Endpoint
EndpointConfig
, e cada um Model
separadamente. Os nomes Endpoint
, EndpointConfig
e Model
, podem ser encontrados no status do recurso HostingDeployment
(status.endpointName
, status.endpointConfigName
estatus.modelNames
).
Para obter uma lista de todos os recursos de SageMaker IA compatíveis, consulte a Referência da API ACK
Limpe os recursos antigos
Depois que os novos operadores de SageMaker IA para Kubernetes adotarem seus recursos, você poderá desinstalar os operadores antigos e limpar os recursos antigos.
Etapa 1: desinstalar o operador antigo
Para desinstalar o operador antigo, consulte Excluir operadores.
Atenção
Desinstale o operador antigo antes de excluir qualquer recurso antigo.
Etapa 2: remover finalizadores e excluir recursos antigos
Atenção
Antes de excluir recursos antigos, certifique-se de ter desinstalado o operador antigo.
Depois de desinstalar o operador antigo, você deve remover explicitamente os finalizadores para excluir os recursos antigos do operador. O exemplo de script a seguir mostra como excluir todos os trabalhos de treinamento gerenciados pelo operador antigo em um determinado namespace. Você pode usar um padrão semelhante para excluir recursos adicionais depois que eles forem adotados pelo novo operador.
nota
Você deve usar nomes completos de recursos para obter recursos. Por exemplo, use kubectl get trainingjobs.sagemaker.aws.amazon.com
em vez de kubectl get trainingjob
.
namespace=
sagemaker_namespace
training_jobs=$(kubectl get trainingjobs.sagemaker.aws.amazon.com -n $namespace -ojson | jq -r '.items | .[] | .metadata.name') for job in $training_jobs do echo "Deleting $job resource in $namespace namespace" kubectl patch trainingjobs.sagemaker.aws.amazon.com $job -n $namespace -p '{"metadata":{"finalizers":null}}' --type=merge kubectl delete trainingjobs.sagemaker.aws.amazon.com $job -n $namespace done
Use os novos operadores de SageMaker IA para Kubernetes
Para obter guias detalhados sobre como usar os novos operadores de SageMaker IA para Kubernetes, consulte Use operadores de SageMaker IA para Kubernetes