4.3. 配置共享实例存储
默认情况下,当您启动实例时,实例磁盘作为文件存储在实例目录中,/var/lib/nova/instances
。您可以为 Compute 服务配置 NFS 存储后端,将这些实例文件存储在共享 NFS 存储中。
先决条件
- 您必须使用 NFSv4 或更高版本。Red Hat OpenStack Platform (RHOSP)不支持早期版本的 NFS。如需更多信息,请参阅红帽知识库解决方案 RHOS NFSv4 支持说明。
流程
-
以
stack
用户的身份登录 undercloud。 Source
stackrc
文件:[stack@director ~]$ source ~/stackrc
-
创建一个环境文件来配置共享实例存储,如
nfs_instance_disk_backend.yaml
。 要为实例文件配置 NFS 后端,请在
nfs_instance_disk_backend.yaml
中添加以下配置:parameter_defaults: ... NovaNfsEnabled: True NovaNfsShare: <nfs_share>
将
<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:nfs_t:s0'
。添加以下参数以修改 NFS 实例文件存储挂载点的挂载选项:parameter_defaults: ... NovaNfsOptions: 'context=system_u:object_r:nfs_t:s0,<additional_nfs_mount_options>'
将 <
additional_nfs_mount_options
> 替换为您要用于 NFS 实例文件存储的挂载选项的逗号分隔列表。有关可用挂载选项的详情,请查看mount
man page:$ man 8 mount.
- 保存对环境文件的更新。
使用其他环境文件将您的新环境文件添加到堆栈中,并部署 overcloud:
(undercloud)$ openstack overcloud deploy --templates \ -e [your environment files] \ -e /home/stack/templates/nfs_instance_disk_backend.yaml