前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Saltstack_使用指南09_远程执行-编写执行模块

Saltstack_使用指南09_远程执行-编写执行模块

作者头像
踏歌行
发布2020-10-15 14:49:23
5630
发布2020-10-15 14:49:23
举报
文章被收录于专栏:踏歌行的专栏踏歌行的专栏

1. 主机规划

salt 版本

代码语言:javascript
复制
1 [root@salt100 ~]# salt --version
2 salt 2018.3.3 (Oxygen)
3 [root@salt100 ~]# salt-minion --version
4 salt-minion 2018.3.3 (Oxygen)

编写执行模块文档

代码语言:javascript
复制
https://docs.saltstack.com/en/latest/ref/modules/index.html        # 文档上的稍有些复杂

注意事项

修改了master或者minion的配置文件,那么必须重启对应的服务。

2. 自编写模块注意事项

代码语言:javascript
复制
1 模块编写:
2     1、存放位置:/srv/salt/_modules        # 注意位置  
3     2、命名:文件名就是模块名  例如:my_disk.py    
4     3、刷新  salt '*' saltutil.sync_modules

3. 案例

在 salt 的 master 机器上编写module,并同步给所有的minion

代码语言:javascript
复制
 1 [root@salt100 _modules]# pwd
 2 /srv/salt/_modules
 3 [root@salt100 _modules]# cat my_disk.py  # 自编写的模块信息
 4 #!/usr/bin/env python3
 5 # -*- coding:utf-8 -*-
 6 # Author:Zhang Liang
 7 
 8 def list():
 9   cmd = 'df -h'
10   ret = __salt__['cmd.run'](cmd)
11   return ret
12 
13 [root@salt100 _modules]# salt '*' saltutil.sync_modules # 同步module 到所有的minion端
14 salt02:
15     - modules.my_disk
16 salt01:
17     - modules.my_disk
18 salt03:
19     - modules.my_disk
20 salt100:
21     - modules.my_disk

同步模块后文件在 minion 端的位置

代码语言:javascript
复制
 1 [root@salt01 salt]# pwd
 2 /var/cache/salt
 3 [root@salt01 salt]# tree
 4 .
 5 └── minion
 6     ├── accumulator
 7     ├── extmods
 8     │   ├── grains
 9     │   │   ├── my_grains.py
10     │   │   └── my_grains.pyc
11     │   └── modules
12     │       └── my_disk.py  # 同步模块存在的位置
13     ├── files
14     │   └── base
15     │       ├── _grains
16     │       │   └── my_grains.py
17     │       ├── _modules
18     │       │   └── my_disk.py
19     │       ├── top.sls
20     │       └── web
21     │           └── apache.sls
22     ├── highstate.cache.p
23     ├── module_refresh
24     ├── proc
25     └── sls.p
26 
27 11 directories, 10 files

在 master 操作自定义的 module

代码语言:javascript
复制
 1 [root@salt100 _modules]# salt '*' my_disk.list  
 2 salt01:
 3     Filesystem      Size  Used Avail Use% Mounted on
 4     /dev/sda3        18G  2.1G   16G  12% /
 5     devtmpfs        901M     0  901M   0% /dev
 6     tmpfs           911M   12K  911M   1% /dev/shm
 7     tmpfs           911M  9.6M  902M   2% /run
 8     tmpfs           911M     0  911M   0% /sys/fs/cgroup
 9     /dev/sda1       197M  113M   85M  58% /boot
10     tmpfs           183M     0  183M   0% /run/user/1001
11 salt100:
12     Filesystem      Size  Used Avail Use% Mounted on
13     /dev/sda3        18G  2.1G   16G  12% /
14     devtmpfs        901M     0  901M   0% /dev
15     tmpfs           911M   28K  911M   1% /dev/shm
16     tmpfs           911M  9.6M  902M   2% /run
17     tmpfs           911M     0  911M   0% /sys/fs/cgroup
18     /dev/sda1       197M  113M   85M  58% /boot
19     tmpfs           183M     0  183M   0% /run/user/1001
20 salt03:
21     Filesystem      Size  Used Avail Use% Mounted on
22     /dev/sda3        18G  2.0G   16G  12% /
23     devtmpfs        901M     0  901M   0% /dev
24     tmpfs           911M   12K  911M   1% /dev/shm
25     tmpfs           911M  9.5M  902M   2% /run
26     tmpfs           911M     0  911M   0% /sys/fs/cgroup
27     /dev/sda1       197M  113M   85M  58% /boot
28 salt02:
29     Filesystem      Size  Used Avail Use% Mounted on
30     /dev/sda3        18G  2.0G   16G  12% /
31     devtmpfs        901M     0  901M   0% /dev
32     tmpfs           911M   12K  911M   1% /dev/shm
33     tmpfs           911M  9.6M  902M   2% /run
34     tmpfs           911M     0  911M   0% /sys/fs/cgroup
35     /dev/sda1       197M  113M   85M  58% /boot
36     tmpfs           183M     0  183M   0% /run/user/1001
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. 主机规划
    • salt 版本
      • 编写执行模块文档
        • 注意事项
        • 2. 自编写模块注意事项
        • 3. 案例
          • 同步模块后文件在 minion 端的位置
            • 在 master 操作自定义的 module
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档