1

cf-engine を使用してポリシー ハブからホストにファイルをコピーしようとしています。ホスト上に空のファイルが作成されます。内容はどうやって書けばいいの?ポリシー ハブとホストは同じ場所にファイルを配置する必要がありますか?

4

1 に答える 1

3

cfengine サーバーからファイルをコピーするには、ファイルをリモート エージェントと共有できる ACL が必要です。マスターファイルポリシー フレームワークバンドル サーバー access_rulesで、アクセス プロミスの例をいくつか確認できます。

/tmp簡単な例として、すべてのホストがポリシー ハブで他のすべてのホストと共有するとします。

bundle server kiran_access_rules
{
  access:
    # First you restrict promises to the proper context
    # by using a class guard. Here we allow only hosts
    # with the class am_policy_hub or policy_server to
    # share /tmp

    am_policy_hub|policy_server::

      "/tmp"
        admit => { "0.0.0.0/0" }, 
        comment => "Probably you would reference a list in 
                    the admit attribute like @(def.acl).
                    That's the variable named acl in the
                    bundle named def.";
}

そして、それとは別に、ファイルをコピーすることを約束したバンドルを作成します。

bundle agent kirians_bundle
{
  files:
    "/tmp/myfile"
      copy_from => remote_dcp("/tmp/serverfile",$(sys.policy_hub)),
      create => "true";
}

上記の copy_from promise で見られるのは、実際には複数の promise が 1 つに圧縮されていることです。ファイルが存在することを約束し、ファイルがポリシー ハブによって共有されるファイルと同じコンテンツを持つことを約束します。cfengine が収束したため、複合的な約束のすべてではなく、一部を修復することができました。それが空のファイルになってしまった理由だと思います。

また、cfengine に関する質問をするのに最適な場所は、cfengine ヘルプ リストまたはcfengine IRC チャンネルです。

于 2015-08-05T13:42:54.197 に答える