![OpenStack/CloudStack 上的 GPU 支持](https://linux22.com/image/650386/OpenStack%2FCloudStack%20%E4%B8%8A%E7%9A%84%20GPU%20%E6%94%AF%E6%8C%81.png)
我想知道这里是否有人使用 GPU(最好是 vGPU)成功实现了任何云编排层?我已经能够让 XenServer 6.2 成功看到我们的 nvidia GRID K1 卡,但不知道是否有任何 OpenStack/CloudStack 类型的层支持 GPU/vGPU。
答案1
目前 OpenStack 还没有完整的 GPU 加速支持。有提案建议在 OpenStack 中添加对 GPU 加速机器的支持作为替代机器类型。该提案的目标版本是 Grizzly。您可以查看功能原型这里。
成功部署具有 CUDA 支持的 openstack。cg1.xlarge 实例类型和 NVIDIA Fermi GPU
$ nova flavor-list
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+----------------------------------------------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public | extra_specs |
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+----------------------------------------------+
| 9 | cg1.xlarge | 16384 | 160 | 0 | | 8 | 1.0 | True | {u'hypervisor': u's== LXC', u'gpus': u'= 2', u'gpu_arch':u's== fermi'} |
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+----------------------------------------------+
$ nova boot --flavor 9 --key-name mykey --image 2b1509fe-b573-488a-be4d-d61d25c7ab4f gpu_test
唯一成功从 kvm 虚拟机访问 CUDA 的方法是虚拟主机。这里我们需要从 LXC 实例直接访问 gpu。假设主机系统的内核支持“lxc-attach”,并且安装了“lxc-attach”的实用程序。
nova.virt.GPULibvirt
nova.virt.libvirt
这是在请求时实例化支持 GPU 的虚拟机的扩展。
1)当一个实例生成(或重新启动)时,nova 启动一个 LXC VM
2)所请求的 gpu 被标记为已分配,并且它的设备在 LXC 内部使用“lxc-attach”创建 3
)将对 gpu 的访问权限添加到 /cgroup 启动完成
4)当一个实例终止(销毁)时,gpu 将被释放。
答案2
Cloudstack 从 4.4 版开始支持 GPU。设计文档参考[1]
答案3
我为一家使用 K2 卡的公司设置了一个相当大的 Openstack 设置。需要对 nova(自定义属性)进行一些细微调整,但除此之外,它运行完美,实际上在相同硬件上 FPS 速率比 Xen 快 4 倍。