我写了一个简单的模块,并把文件放在下面<salt_file_roots>/_modules,内容或多或少:
# foomod.py
def foo(*args):
return {'name': 'foo', 'result': True}
Run Code Online (Sandbox Code Playgroud)
我跑了salt minion saltutil.sync_all,看到了我添加的模块的输出.我可以看到它也在minion日志中同步.
minion:
- modules.foomod
Run Code Online (Sandbox Code Playgroud)
1.我可以从附庸使用它:
$ salt-call foomod.foo
local:
----------
name:
foo
result:
True
Run Code Online (Sandbox Code Playgroud)
2.我可以将它包含在使用module.run和运行状态的状态中,它也可以工作.
3.但是,当我把它从主,出现这种情况:
$ salt minion foomod.foo
minion:
- 'foomod.foo' is not available.
Run Code Online (Sandbox Code Playgroud)
当我从主人那里打电话时,我也看到了对minion日志的调用
2014-07-29 15:30:44,290 [salt.minion ][INFO ] User root Executing command foomod.foo with jid 20140729153044256654
2014-07-29 15:30:44,291 [salt.minion ][DEBUG ] Command details {'tgt_type': 'glob', 'jid': '20140729153044256654', 'tgt': 'minion', 'ret': '', 'user': 'root', 'arg': [], 'fun': 'foomod.foo'}
2014-07-29 15:30:44,308 [salt.minion ][INFO ] Returning information for job: 20140729153044256654
Run Code Online (Sandbox Code Playgroud)
所以要么我跳过了我直接从master运行它的部分,或者我想象了一个不存在的功能.
任何帮助表示赞赏.
| 归档时间: |
|
| 查看次数: |
2865 次 |
| 最近记录: |