SaltStack 作业检测

SaltStack job detection

简介

最近我们注意到生产环境中有一些奇怪的行为,显然有一个任务将数据从 Prod Redis 拉入 Staging Redis,该过程本身由 Salt 管理。

我想要达到的目标

底线:我想了解此操作的触发器(此任务没有 schedule 命令,该命令以不同的方式从 Salt master 启动)。

一些代码

这是 .sls 这是 运行 这个任务:

redis-server:
  service.dead:
    - enable: True

fetchredis:
  cmd.run:
    - names:
       - /usr/bin/redis-cli -h {{grains['shost']}} --rdb /etc/redis-cluster/dump.rdb
       - gsutil cp /etc/redis-cluster/dump.rdb gs://redis-rtp-bkp/{{salt['cmd.run']('date +"%Y-%m-%d-%H-%M"')}}-{{grains['shost']}}.rdb
    - prereq:
      - service: redis-server

chown:
  cmd.run:
    - name: chown -R redis /etc/redis-cluster/*
    - cwd: /
    - user: root
    - require:
       - cmd: fetchredis

start_redis:
  service.running:
    - name: redis-server
    - require:
       - cmd: chown

到目前为止我尝试了什么?

我使用了各种 salt-run 查询,无论是在没有显示任何内容还是显示一些错误的特定 jid 上。

有什么关于寻找触发器的建议吗?

谢谢。

找到了,下次知道去哪里找了,Pillars目录下有个.sls,内容如下:

schedule:
 bkp:
    function: state.sls
    seconds: 600
    args:
      - redis.bkp

谢谢大家的帮助。