Ansible pull模式、git提交

本文介绍了Ansible的pull模式,适用于大量主机时提升性能。通过设置,当重要配置文件被修改时,系统会定时检查并同步Git仓库文件。以db配置为例,文章详细阐述了如何配置Ansible客户端的cron任务,确保每隔5分钟检测一次配置文件,并展示了如何搭建本地Git仓库进行提交。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Ansible pull模式

Ansible"拉模式"在机器数量较多的时候,可以提高性能.
目前想到的场景:保障系统重要的配置文件被修改,定时去检查,一旦发现被修改就进行同步git仓库文件.

  • git仓库文件结构

    [root@xxx ansible-pull-test]# tree
    .
    ├── hosts
    ├── README.md
    ├── roles
    │   ├── db
    │   │   ├── files
    │   │   │   └── ansible.conf
    │   │   └── tasks
    │   │       └── main.yml
    │   └── web
    │       ├── files
    │       ├── tasks
    │       └── templates
    ├── shenchan.retry
    └── shenchan.yml
    

    测试用到db,在配置ansible.conf配置文件被修改时,每隔一段时间可以进行检测.

    # db/tasks/main.yml
    ---
    - name: copy ansible.conf
      copy: src=ansible.conf dest=/root owner=root group=root
      register: result
    
  • 客户端建立cron任务

    建立cron任务,可以避免ansible.conf被恶意修改;每隔5min检测一次.

    # -C 分支 -d 目的地  -i  主机路径  -e 添加参数 -o 只有git仓库发生改变才执行playbook
    */5 * * * * ansible-pull  -C master -d /root/test -i /opt/ansible-pull-test/hosts -U <github仓库> -e "role=db" shenchan.yml -o
    

git仓库建立

在本地mkdir一个目录,作为本地仓库目录,然后进行提交

git init
git add .
git commit -m ''

git remote add origin <github仓库>
git push -u origin master  # 第一次提交 加-u
git pull --rebase origin master  # 注意:如果仓库中有其他文件,而本地没有,建议先执行该操作. 其实每次提交时,应该执行此操作,合并主分支,在提交
git push origin master
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值