18.5. 载入内核模块
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
提示Heat 使用一组名为 template 的计划来安装和配置您的环境。您可以使用自定义环境文件来自定义 overcloud 的各个方面,这是为 heat 模板 提供自定义 的特殊模板。
在
parameter_defaults
下的 YAML 环境文件中,将ExtraKernelModules
设置为您要载入的模块的名称。示例
ComputeParameters: ExtraKernelModules: nf_conntrack_proto_gre: {} ControllerParameters: ExtraKernelModules: nf_conntrack_proto_gre: {}
运行
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
验证
如果 heat 正确载入该模块,您应该在 Compute 节点上运行
lsmod
命令时看到输出:示例
sudo lsmod | grep nf_conntrack_proto_gre
其他资源
- 高级 Overcloud 自定义指南中的环境文件。
- 高级 Overcloud 自定义指南中的创建 overcloud 中包括环境文件