天天看点

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

基于该方案,客户可以将应用程序利用容器技术构建镜像,结合Kubernetes+GPU运行机器学习,图像处理等高运算密度等任务,无需安装nvidia driver和CUDA,就能实现一键部署和弹性扩缩容等功能。

下面开始体验如何在阿里云容器服务上创建Tesla P4和P100的Kubernetes GPU混部集群,部署和测试Jupyter应用运行TensorFlow。

1.首先选择区域

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

2. 选择实例系列:GPU计算型gn5,通过下拉框可以选择实例规格

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

3. 勾选开放公网SSH登录,这样就可以通过ssh登录Kubernetes的Master节点

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

4.当集群创建成功后,点击<code>管理</code>按钮

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

5. 这样就可以看到Master节点SSH连接地址

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

6. 通过ssh登录Master查看包含GPU节点

7. 具体查看GPU节点的状态信息

可以看到该节点的含有GPU资源数量为1, 这样我们就可以开始运行使用GPU的TensorFlow应用

数据科学家通常习惯使用Jupyter作为TensorFlow实验环境,我们这里可以用一个例子向您展示如何快速部署一个Jupyter应用。

下面的deployment.yaml内容分为两部分: Deployment和Service,

Deployment配置: nvidia.com/gpu 指定调用nvidia gpu的数量 环境变量 PASSWORD 指定了访问Jupyter服务的密码,您可以按照您的需要修改

如果您编写过老的GPU部署方案,会知道过去必须要定义如下的nvidia驱动所在的数据卷。

这需要您在编写部署文件时,强依赖于所在的集群,导致缺乏可移植性。但是在Kubernetes 1.9.3中,最终用户无需指定这些hostPath,nvidia的插件会自发现驱动所需的库链接和执行文件。

1. 运行kubectl部署该应用:

2. 查看deployment的配置

3. 查看deployment日志

4. 通过service查看访问端点,只需要检查EXTERNAL-IP

现在要验证这个Jupyter实例可以使用GPU,可以在运行下面的程序。它将列出Tensorflow可用的所有设备。

可以看到如下输出

尝鲜阿里云容器服务Kubernetes 1.9,拥抱GPU新姿势尝鲜阿里云容器服务Kubernetes, 拥抱Nvidia GPU的新姿势

这样,您就可以正式开始自己的TensorFlow on GPU之旅

利用阿里云容器服务的Kubernetes,您可以在部署时刻选择GPU类型的工作节点,而无需操心复杂Nvidia驱动和Kubernetes集群配置,一键部署,不出十分钟就可以轻松获得阿里云强大的异构计算能力和Kubernetes的GPU应用部署调度能力。这样您就可以专心的构建和运行自己的深度学习应用了。欢迎您在香港区域尝试和体验,后续我们也会开放其他地区的Kubernetes 1.9.3。

继续阅读