Amazon安装时的 Kubeflow - Amazon深度学习容器
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

Amazon安装时的 Kubeflow

本节提供安装说明,以使用开启 Kubeflow 的Deep Learning Containers(Kubeflow 的开源发行版)设置Amazon深度学习环境。Amazon完成Amazon安装 Kubeflow 后,您可以继续阅读本系列的培训教程。

在 Kubeflow 上部署Amazon

要在上部署 KubeflowAmazon,请按照 KubeflowAmazon 文档中的 Vanilla 部署选项进行操作。确保满足所有先决条件。安装说明指导您在上部署 Kubeflow 之前创建 Amazon EKS 集群Amazon。

如果您按照前面的说明部署了 GPU 集群,则已安装适用于 Kubernetes 的 NVIDIA 设备插件。您不需要任何额外设置。

注意

以下教程使用原版的 Kubeflow onAmazon 作为示例。但是,您可以使用 Kubeflow 的任何其他部署选项来运行此 Kubeflow onAmazon 部分中的所有训练和推理教程Amazon。

有关在Amazon部署 Kubeflow 时设置和配置 Amazon RDS、Amazon S3 和 Amazon Cognito 资源的信息,请参阅 KubeflowAmazon 文档中的部署选项

设置完您的 Amazon EKS 集群后,您可以在下一节中验证您的上下文是否指向您的集群。

验证集群连接

以下步骤显示如何验证您的环境。这是为了确保您与正确的集群进行交互。

  1. 首先,通过运行以下命令确认集群处于活动状态。

    aws eks --region <region> describe-cluster --name <cluster-name> --query cluster.status

    您应当看到如下输出。

    "ACTIVE"
  2. 要检查您的当前上下文,请运行此命令。输出中的current-context字段应包含您的集群名称。

    kubectl config view

    如果您current-context不是要与之交互的集群,请运行以下命令对其进行更新。有关更新您的的更多信息kubeconfig,请访问 Amazon EKS 文档

    aws eks update-kubeconfig --region <region> --name <cluster-name>

在您部署 KubeflowAmazon 并更新了当前上下文后,请在下一节中验证您的 Kubeflow 用户配置文件使用了正确的命名空间。

验证您的命名空间

这些步骤显示了如何验证您的活跃的 Kubeflow 用户配置文件是否使用了命名空间kubeflow-user-example-com。本系列的所有教程都在这个命名空间中运行。

  1. 注意

    在 Kubeflow 中,所有命名空间都应通过配置文件创建。默认情况下,安装了Amazon Vanilla 的 Kubeflow 会使用命kubeflow-user-example-com名空间创建用户配置文件。

    通过运行以下命令确保名为的命名空间kubeflow-user-example-com存在。

    kubectl get namespace

    如果命名空间未出现在输出中,请按如下方式创建新的 Kubeflow 配置文件。

  2. 打开vivim,然后复制并粘贴以下内容。将此配置文件描述文件另存为profile.yaml。确保将下面的电子邮件替换owner.name为您的电子邮件。

    apiVersion: kubeflow.org/v1beta1 kind: Profile metadata: # replace with the name of profile you want, this is the user's namespace name name: kubeflow-user-example-com spec: owner: kind: User # replace with the email of the user name: user@example.com
  3. 运行以下命令以创建相应的配置文件资源。

    kubectl apply -f profile.yaml
  4. 导出NAMESPACE变量。

    export NAMESPACE=kubeflow-user-example-com

    我们在所有 KubeflowAmazon 教程${NAMESPACE}中将这个命名空间称为变量。

后续步骤

现在你已经完成了 Kubeflow 的Amazon设置,你可以继续学习训练和推理教程。

要了解有关在 Kubeflow 上使用Deep Learning Containers 进行Amazon训练和推理的信息,请参阅培训推理指南。

清除

本节提供您完成教程运行后的清理说明。

清除工作

运行完示例后,您可以删除特定的训练作业。要列出在给定命名空间中运行的特定类型(PyTorchJobmpiJob, TfJob)的作业,请运行以下命令。

kubectl get job_type -n ${NAMESPACE}

检索要删除的任务的名称,然后运行以下命令。

kubectl delete job_type job_name -n ${NAMESPACE}

您的输出应类似于以下内容。

job_type.kubeflow.org "job_name" deleted

开启卸载 KubeflowAmazon

Amazon文档中的 Kubeflow 提供了卸载命令。确保运行与您的部署方法相对应的命令:Kustomize、HelmTerrafor m。

删除 Amazon EKS 集群

Amazon文档中的 Kubeflow 提供了一个命令来删除您的整个 Amazon EKS 集群