saltstack 文件下发与拉取

saltstack 文件下发与拉取

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

[email protected] 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
[[email protected] base]# 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
[[email protected] base]# 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

示例:

[[email protected] minions]# salt ‘had5.com‘ cp.push /root/put1
had5.com:
    True

[[email protected] minions]#  salt ‘hadm.com‘ cp.list_master_dirs
hadm.com:
    - .
    - _returners
    - files
    - had5.com/root
    - mysqlbackup

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

--我们还可以使用salt://minion_id/来访问拉取过来的文件。
[[email protected] minions]# salt ‘had6.com‘ cp.get_file salt://had5.com/root/put1 /root/put1
had6.com:
    /root/put1
[[email protected] minions]# salt ‘had6.com‘ cmd.run ‘ls /root/put1‘
had6.com:
    /root/put1
时间: 2024-11-02 11:49:52

saltstack 文件下发与拉取的相关文章

yaml文件中镜像拉取策略

yaml文件中镜像拉取策略解释: containers: - name: coredns image: coredns/coredns:1.2.0 imagePullPolicy: IfNotPresent IfNotPresent :如果本地存在镜像就优先使用本地镜像. Never:直接不再去拉取镜像了,使用本地的:如果本地不存在就报异常了. Always 如果你yaml配置文件中没有定义那就是使用默认的 原文地址:https://www.cnblogs.com/effortsing/p/10

Jenkins拉取github库代码执行构建

前言 上篇文章写了关于定时构建,以及构建后发送邮件的内容,但是构建时运行的代码是我们手动添加到Jenkins工作空间的.这篇文章我们说一说自动从GitHub远程库拉取代码,执行构建,废话不多说,开始!(开始之前,我们需要安装GitHub插件:GitHub plugin 如何安装自行百度吧) 新建项目 仍然和上一篇文章一样,我们新建一个自由风格的项目(我这里就不新建了 我直接在原有的项目基础上配置) 获取GitHub地址 我们项目所在路径的地址 项目配置 General 输入项目描述, 勾选Git

K8s 从懵圈到熟练 – 镜像拉取这件小事

作者 | 声东 阿里云售后技术专家 导读:相比 K8s 集群的其他功能,私有镜像的自动拉取,看起来可能是比较简单的.而镜像拉取失败,大多数情况下都和权限有关.所以,在处理相关问题的时候,我们往往会轻松的说:这问题很简单,肯定是权限问题.但实际的情况是,我们经常为一个问题,花了多个人的时间却找不到原因.这主要还是我们对镜像拉取,特别是私有镜像自动拉取的原理理解不深.这篇文章,作者将带领大家讨论下相关原理. 顺序上来说,私有镜像自动拉取会首先通过阿里云 Acr credential helper 组

git中使用命令将远程仓库拉取项目在本地文件夹

在有些时候,我们往往从github或者gitlab或者coding上面直接下载项目下来运行,但是这种情况往往没有使用git远程拉取来的安全(或者叫装逼), 所以这里我以gitLab为例子,说一下如何将远程服务器上的代码拉取到本地   首先,你得安装好git的软件 可以从网上获取 安装教程点击链接:git安装教程 安装好后,打开你的远程仓库的网站,当然你得发现你的项目组或者找到开源项目的东东 比如我的 gitlab: 然后随便打开一个项目,复制SSH链接:   接下来就可以开始在黑框里面搞了: 打

RocketMQ 拉取消息-文件获取

看完了上一篇的<RocketMQ 拉取消息-通信模块>,请求进入PullMessageProcessor中,接着 PullMessageProcessor.processRequest(final ChannelHandlerContext ctx, RemotingCommand request)方法中调用了: final GetMessageResult getMessageResult = this.brokerController.getMessageStore().getMessag

git从gitlab拉取最新的亚博代码到本地体育文件夹

git从gitlab拉取最新的亚博代码到本地体育文件夹:1.Git下载地址 2.安装Git? 3.从管理员手中拿到用户名.邮箱.密码 假设用户名为: itcats_cn 邮箱为[email protected] 密码为12345678 4.初始化git信息(在右键Git Bash输入以下命令) (1) git config --global user.name 'itcats_cn'(2) git config --global user.email '[email protected]'(3)

3.在github或公司部署的git上,远程克隆,拉取,提交文件。

远程库,要操作,必须先配置密匙. 3.1克隆到本地,git clone ssh 库链接,自动会创建库名和文件,和远程的一模一样 3.2拉取或更新到本地,git push 3.3提交git commit -m "备注信息" 3.4 推送 git pash 原文地址:https://www.cnblogs.com/wenjun145/p/12662501.html

远程拉取,推送文件包

都是在本地终端操作~~~scp [email protected]:/opt/soft/nginx-0.5.38.tar.gz /opt/soft/ ---- 从远程拉取到本地scp filename.tar.gz [email protected]:/home/wwwroot/ ---- 从本地复制到远程 常用到  tar -zxvf     tar -zcvf ping IP  ----可以看出ip哪些内容~~~

Docker Hub.拉取镜像

注:此记录谨基于默认在搭建好的docker环境下进行!   拉取镜像很假单,只需要一个“docker pull 镜像名“的命令即可.当然,前提是我们已经在一个已经搭建好的docker环境下.但是,如何将拉取到主机的镜像下载到本地电脑呢.请看如下记录: 假设我们要拉取的镜像是一个note基础镜像,那么我们执行的命令首先是:docker pull note .当镜像下载成功,我们需要检查一下,该镜像是否已经存在主机了.可以执行:docker images 查看镜像是否存在,如果没错的话,应该是有 n