弹性计算云 (EC2)#
创建实例#
创建新的 EC2 实例,带有 GPU、NVIDIA 驱动程序和NVIDIA 容器运行时。
NVIDIA 维护一个Amazon Machine Image (AMI),它预装了 NVIDIA 驱动程序和容器运行时,我们建议使用此镜像作为起点。
打开EC2 控制面板。
选择 启动实例。
在 AMI 选择框中搜索“nvidia”,然后切换到 AWS Marketplace AMIs 选项卡。
选择 NVIDIA GPU 优化型 AMI 并点击“选择”。然后,在新的弹出窗口中,选择 启动实例时订阅。
在 密钥对 中选择您的 SSH 密钥(如果尚未创建,请先创建这些密钥)。
在网络设置下创建安全组(或选择现有的),该安全组允许通过端口
22
进行 SSH 访问,并允许端口8888,8786,8787
访问 Jupyter 和 Dask。选择 启动。
连接到实例#
接下来我们需要连接到实例。
打开EC2 控制面板。
找到您的 VM 并记下 公有 IP 地址。
在您的终端中运行
ssh ubuntu@<ip address>
。
注意
如果您使用 AWS 控制台,请使用默认的 ubuntu
用户,以确保 NVIDIA 驱动程序在首次启动时安装。
安装 RAPIDS#
有几种方法可以用来安装 RAPIDS,您可以通过RAPIDS 版本选择器查看。
对于此示例,我们将运行 RAPIDS Docker 容器,因此我们需要知道最新容器的名称。在版本选择器上,在 Method 列中选择 Docker。
然后复制显示的命令
docker pull nvcr.io/nvidia/rapidsai/notebooks:25.04-cuda12.8-py3.12 docker run --gpus all --rm -it \ --shm-size=1g --ulimit memlock=-1 \ -p 8888:8888 -p 8787:8787 -p 8786:8786 \ nvcr.io/nvidia/rapidsai/notebooks:25.04-cuda12.8-py3.12
注意
如果在运行这些命令时看到“docker socket permission denied”错误,请尝试关闭并重新连接您的 SSH 窗口。这是因为您的用户在登录后才被添加到 docker
组中。
注意
如果在首次连接到 EC2 实例时看到“modprobe: FATAL: Module nvidia not found in directory /lib/modules/6.2.0-1011-aws”错误,请尝试注销并再次重新连接。
测试 RAPIDS#
要访问 Jupyter,请在浏览器中导航到 <VM ip>:8888
。
在 Python notebook 中,检查是否可以导入和使用像 cudf
这样的 RAPIDS 库。
In [1]: import cudf
In [2]: df = cudf.datasets.timeseries()
In [3]: df.head()
Out[3]:
id name x y
timestamp
2000-01-01 00:00:00 1020 Kevin 0.091536 0.664482
2000-01-01 00:00:01 974 Frank 0.683788 -0.467281
2000-01-01 00:00:02 1000 Charlie 0.419740 -0.796866
2000-01-01 00:00:03 1019 Edith 0.488411 0.731661
2000-01-01 00:00:04 998 Quinn 0.651381 -0.525398
打开 cudf/10min.ipynb
并执行单元格,以进一步了解 cudf
如何工作。
当运行 Dask 集群时,您还可以访问 <VM ip>:8787
来监控 Dask 集群状态。