4.3. 配置共享实例存储
默认情况下,当您启动实例时,实例磁盘作为文件存储在实例目录 /var/lib/nova/instances 中。您可以为计算服务配置 NFS 存储后端,将这些实例文件存储在共享的 NFS 存储中。
先决条件
- 您必须使用 NFSv4 或更高版本。Red Hat OpenStack Platform (RHOSP)不支持早期版本的 NFS。如需更多信息,请参阅红帽知识库解决方案 RHOS NFSv4 支持备注。
流程
-
以
stack用户的身份登录 undercloud。 Source
stackrc文件:source ~/stackrc
[stack@director ~]$ source ~/stackrcCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
创建一个环境文件来配置共享实例存储,如
nfs_instance_disk_backend.yaml。 要为实例文件配置 NFS 后端,请将以下配置添加到
nfs_instance_disk_backend.yaml中:parameter_defaults: ... NovaNfsEnabled: True NovaNfsShare: <nfs_share>
parameter_defaults: ... NovaNfsEnabled: True NovaNfsShare: <nfs_share>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
<nfs_share> 替换为要为实例文件存储挂载的 NFS 共享目录,例如'192.168.122.1:/export/nova'或'192.168.24.1:/var/nfs'。如果使用 IPv6,则同时使用双引号和单引号,例如"'[fdd0::1]:/export/nova'"。可选:当启用 NFS 后端存储时,NFS 存储的默认挂载 SELinux 上下文为
'context=system_u:object_r:nfs_t:s0'。在 NFS 实例文件存储挂载点的挂载选项中添加以下参数:parameter_defaults: ... NovaNfsOptions: 'context=system_u:object_r:nfs_t:s0,<additional_nfs_mount_options>'
parameter_defaults: ... NovaNfsOptions: 'context=system_u:object_r:nfs_t:s0,<additional_nfs_mount_options>'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 <
additional_nfs_mount_options> 替换为您要用于 NFS 实例文件存储的挂载选项的逗号分隔列表。有关可用挂载选项的详情,请查看mount手册页:man 8 mount.
$ man 8 mount.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 将更新保存到环境文件。
使用其他环境文件将新环境文件添加到堆栈中,并部署 overcloud:
openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/nfs_instance_disk_backend.yaml
(undercloud)$ openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/nfs_instance_disk_backend.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow