Puppet の新しいファイアウォール モジュールを使用して、ルールが適用される前に iptables をクリアするにはどうすればよいですか?

Puppet の新しいファイアウォール モジュールを使用して、ルールが適用される前に iptables をクリアするにはどうすればよいですか?

私は現在Puppetの新しいファイアウォールモジュールファイアウォール ルールを適用する前にPuppet をフラッシュしようとしていますiptables。次のことを試しました。

exec { 'clear-firewall':
        command => '/sbin/iptables -F',
        refreshonly => true,
}

Firewall {
        subscribe => Exec['clear-firewall'],
        notify => Exec['persist-firewall'],
}

今のところ、うまくいきません。他に試すべき方法を提案したり、知っている人はいませんか?

答え1

つまり、あなたは次の 2 つの状況のいずれかにあると考えられます。

  1. Puppet 設定でファイアウォール ルールを所有したいため、既存のルールをフラッシュしたい場合
  2. ファイアウォールプロバイダーと互換性のない既存のルールがあります

1 の場合は、トップ スコープのどこかでパージをオンにしてみてください。

resources { "firewall":
  purge => true,
}

2 の場合...おそらく、Puppet を実行する前にそれらのルールを削除するか、互換性を持たせる必要があります。特定の非互換性がある場合はお知らせください。おそらく、バグとして報告されるはずです。

関連情報