18.6. 加载内核模块
Red Hat OpenStack Platform (RHOSP)中的一些功能需要加载某些内核模块。例如,OVS 防火墙驱动程序要求您加载 nf_conntrack_proto_gre
内核模块,以支持两个虚拟机实例之间的 GRE 隧道。
通过使用特殊的编排服务(heat)参数 ExtraKernelModules
,您可以确保 heat 存储关于 GRE 隧道等功能所需的功能所需的配置信息。之后,在正常模块管理过程中,会加载这些所需的内核模块。
流程
在 undercloud 主机上,以 stack 用户身份登录,创建一个自定义 YAML 环境文件。
示例
vi /home/stack/templates/my-modules-environment.yaml
$ vi /home/stack/templates/my-modules-environment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 提示Heat 使用一组名为 template 的计划来安装和配置您的环境。您可以使用自定义环境文件 自定义 overcloud 的各个方面,这是为 heat 模板 提供自定义 的特殊模板。
在
parameter_defaults
下的 YAML 环境文件中,将ExtraKernelModules
设置为您要载入的模块的名称。示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 运行
openstack overcloud deploy
命令,并包含核心 heat 模板、环境文件以及新的自定义环境文件。重要环境文件的顺序非常重要,因为后续环境文件中定义的参数和资源更为优先。
示例
openstack overcloud deploy --templates \ -e [your-environment-files] \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/my-modules-environment.yaml
$ openstack overcloud deploy --templates \ -e [your-environment-files] \ -e /usr/share/openstack-tripleo-heat-templates/environments/services/my-modules-environment.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
如果 heat 正确载入该模块,您应该在 Compute 节点上运行
lsmod
命令时看到输出:示例
sudo lsmod | grep nf_conntrack_proto_gre
sudo lsmod | grep nf_conntrack_proto_gre
Copy to Clipboard Copied! Toggle word wrap Toggle overflow