4trgr 发表于 2015-8-26 09:15:16

saltstack 文件下发与拉取

saltstack 文件下发与拉取

salt的文件下发,使用cp.get_file函数,空文件是不生效的

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
root@hadm base]# salt '*' cmd.run 'ls /root/'
hadm.com:
    anaconda-ks.cfg
    install.log
    install.log.syslog
had6.com:
    abc
    anaconda-ks.cfg
    dump.rdb
    install.log
    install.log.syslog
    put1
    puth1
    test
    test1
had5.com:
    abc
    anaconda-ks.cfg
    install.log
    install.log.syslog
    put1
    test
    test1
# salt '*' cp.get_file salt://files/test1/root/test_00
hadm.com:
    /root/test_00
had6.com:
    /root/test_00
had5.com:
    /root/test_00
# salt '*' cmd.run 'ls /root/'
hadm.com:
    anaconda-ks.cfg
    install.log
    install.log.syslog
    test_00
had5.com:
    abc
    anaconda-ks.cfg
    install.log
    install.log.syslog
    put1
    test
    test1
    test_00
had6.com:
    abc
    anaconda-ks.cfg
    dump.rdb
    install.log
    install.log.syslog
    put1
    puth1
    test
    test1
    test_00





salt文件拉取使用cp.push,需要在master配置文件中添加以下配置,并重启master:
fileserver_backend:
- roots
- minion

file_recv: True

示例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# salt 'had5.com' cp.push /root/put1
had5.com:
    True

#salt 'hadm.com' cp.list_master_dirs
hadm.com:
    - .
    - _returners
    - files
    - had5.com/root
    - mysqlbackup

--文件put1已经拉取到/var/cache/salt/master/minions/minion_id/files目录
# ll /var/cache/salt/master/minions/had5.com/files/root/put1

--我们还可以使用salt://minion_id/来访问拉取过来的文件。   
# salt 'had6.com' cp.get_file salt://had5.com/root/put1 /root/put1
had6.com:
    /root/put1
# salt 'had6.com' cmd.run 'ls /root/put1'
had6.com:
    /root/put1






页: [1]
查看完整版本: saltstack 文件下发与拉取