View a markdown version of this page

Acessando seus nós SageMaker HyperPod de cluster - SageMaker IA da Amazon

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á.

Acessando seus nós SageMaker HyperPod de cluster

Você pode acessar seu InService cluster por meio de AWS Systems Manager (SSM) executando o AWS CLI comando aws ssm start-session com o nome do host do SageMaker HyperPod cluster no formato desagemaker-cluster:[cluster-id]_[instance-group-name]-[instance-id]. Você pode recuperar o ID do cluster, o ID da instância e o nome do grupo de instâncias no SageMaker HyperPod console ou executando describe-cluster e a list-cluster-nodes partir dos AWS CLI comandos para SageMaker HyperPod. Por exemplo, se o ID do cluster for aa11bbbbb222, o nome do nó do cluster for controller-group e o ID do nó do cluster for i-111222333444555aa, o comando SSM start-session deverá ser o seguinte:

nota

Conceder aos usuários acesso aos nós HyperPod do cluster permite que eles instalem e operem software gerenciado pelo usuário nos nós. Mantenha o princípio de permissões de privilégio mínimo para os usuários.

Se você não tiver configurado AWS Systems Manager, siga as instruções fornecidas emConfigurar AWS Systems Manager e Run As para controle de acesso de usuários do cluster.

$ aws ssm start-session \ --target sagemaker-cluster:aa11bbbbb222_controller-group-i-111222333444555aa \ --region us-west-2 Starting session with SessionId: s0011223344aabbccdd root@ip-111-22-333-444:/usr/bin#

Observe que isso inicialmente conecta você como usuário-raiz. Antes de executar os trabalhos, alterne para o usuário ubuntu executando o seguinte comando:

root@ip-111-22-333-444:/usr/bin# sudo su - ubuntu ubuntu@ip-111-22-333-444:/usr/bin#

Para configurações avançadas para uso prático de HyperPod clusters, consulte os tópicos a seguir.

Dicas adicionais para acessar seus nós SageMaker HyperPod de cluster

Use o easy-ssh.sh script fornecido pelo HyperPod para simplificar o processo de conexão

Para transformar o processo anterior em um comando de linha única, a HyperPod equipe fornece o easy-ssh.sh script que recupera as informações do cluster, as agrega ao comando SSM e se conecta ao nó de computação. Você não precisa procurar manualmente as informações de HyperPod cluster necessárias, pois esse script é executado, list-cluster-nodes comanda describe-cluster e analisa as informações necessárias para concluir o comando SSM. Os comandos de exemplo a seguir mostram como executar o script easy-ssh.sh. Se for executado com êxito, você será conectado ao cluster como usuário-raiz. Ele também imprime um trecho de código para configurar o SSH adicionando o HyperPod cluster como um host remoto por meio de um proxy SSM. Ao configurar o SSH, você pode conectar seu ambiente de desenvolvimento local, como o Visual Studio Code, ao HyperPod cluster.

$ chmod +x easy-ssh.sh $ ./easy-ssh.sh -c <node-group> <cluster-name> Cluster id: <cluster_id> Instance id: <instance_id> Node Group: <node-group> Add the following to your ~/.ssh/config to easily connect: $ cat <<EOF >> ~/.ssh/config Host <cluster-name> User ubuntu ProxyCommand sh -c "aws ssm start-session --target sagemaker-cluster:<cluster_id>_<node-group>-<instance_id> --document-name AWS-StartSSHSession --parameters 'portNumber=%p'" EOF Add your ssh keypair and then you can do: $ ssh <cluster-name> aws ssm start-session --target sagemaker-cluster:<cluster_id>_<node-group>-<instance_id> Starting session with SessionId: s0011223344aabbccdd root@ip-111-22-333-444:/usr/bin#

Observe que isso inicialmente conecta você como usuário-raiz. Antes de executar os trabalhos, alterne para o usuário ubuntu executando o seguinte comando:

root@ip-111-22-333-444:/usr/bin# sudo su - ubuntu ubuntu@ip-111-22-333-444:/usr/bin#

Configure para facilitar o acesso com SSH usando o nó de HyperPod computação como um host remoto

Para simplificar ainda mais o acesso ao nó de computação usando SSH de uma máquina local, o easy-ssh.sh script gera um trecho de código da configuração do HyperPod cluster como um host remoto, conforme mostrado na seção anterior. O trecho de código é gerado automaticamente para ajudar você a adicioná-lo diretamente ao ~/.ssh/config arquivo em seu dispositivo local. O procedimento a seguir mostra como configurar o acesso fácil usando SSH por meio do proxy SSM, para que você ou os usuários do cluster possam executar diretamente ssh <cluster-name> para se conectar ao nó do HyperPod cluster.

  1. Em seu dispositivo local, adicione o nó de HyperPod computação com um nome de usuário como host remoto ao ~/.ssh/config arquivo. O comando a seguir mostra como anexar o trecho de código gerado automaticamente do script easy-ssh.sh ao arquivo~/.ssh/config. Verifique se você o copiou da saída gerada automaticamente do script easy-ssh.sh que tem as informações corretas do cluster.

    $ cat <<EOF >> ~/.ssh/config Host <cluster-name> User ubuntu ProxyCommand sh -c "aws ssm start-session --target sagemaker-cluster:<cluster_id>_<node-group>-<instance_id> --document-name AWS-StartSSHSession --parameters 'portNumber=%p'" EOF
  2. No nó do HyperPod cluster, adicione a chave pública do seu dispositivo local ao ~/.ssh/authorized_keys arquivo no nó do HyperPod cluster.

    1. Imprima o arquivo de chave pública na sua máquina local.

      $ cat ~/.ssh/id_rsa.pub

      Ela retornará sua chave. Copie a saída desse comando.

      (Opcional) Se você ainda não tem uma chave pública, crie uma executando o seguinte comando:

      $ ssh-keygen -t rsa -q -f "$HOME/.ssh/id_rsa" -N ""
    2. Conecte-se ao nó do cluster e alterne para o usuário para adicionar a chave. O comando a seguir é um exemplo de acesso como usuário ubuntu. Substitua ubuntu pelo nome de usuário para o qual você deseja configurar o acesso fácil com SSH.

      $ ./easy-ssh.sh -c <node-group> <cluster-name> $ sudo su - ubuntu ubuntu@ip-111-22-333-444:/usr/bin#
    3. Abra o arquivo ~/.ssh/authorized_keys e adicione a chave pública ao final desse arquivo.

      ubuntu@ip-111-22-333-444:/usr/bin# vim ~/.ssh/authorized_keys

Depois de concluir a configuração, você pode se conectar ao nó do HyperPod cluster como usuário executando um comando SSH simplificado da seguinte forma.

$ ssh <cluster-name> ubuntu@ip-111-22-333-444:/usr/bin#

Além disso, você pode usar o host para desenvolvimento remoto a partir de um IDE em seu dispositivo local, como Visual Studio Code Remote - SSH.

Configurando um ambiente multiusuário

Para criar e gerenciar usuários para um ambiente multiusuário (incluindo mapeamento de usuários para diretores do IAM e integração com o Active Directory), consulte. Gerenciamento de usuários em um cluster SageMaker HyperPod Slurm