之前,我使用 chef cookbook 安装了 nginx。然后我研究了防火墙规则。为了允许 HTTP 流量,我使用了以下脚本。
firewall_rule 'http' do
port 80
protocol :tcp
position 1
command :allow
end
但我收到了错误
NoMethodError: undefined method `firewall_rule' for cookbook: firewall, recipe: default :Chef::Recipe
我该如何解决这个问题?我做了一些研究,但没有成功。
答案1
Chef 中默认没有“firewall_rule”资源。据我所知,这是一个自定义资源,是名为“firewall”的 cookbook 的一部分,您可以在此处获取:https://supermarket.chef.io/cookbooks/firewall#readme
您确定您使用了这个食谱,而不是仅仅创建了一个名为“防火墙”的空食谱并尝试在那里使用“firewall_rule”吗?