1.安装ansible yum install ansible
2.配置hosts,ansible安装完成默认配置文件在/etc/ansible里面,需要配置host才能进行脚本分发

cat /etc/ansible/hosts
[all]
填写ip    ansible_ssh_port=22           ansible_ssh_user=用户名                ansible_ssh_pass=密码
填写ip    ansible_ssh_port=22           ansible_ssh_user=用户名                ansible_ssh_pass=密码
...

3.配置免密 把host文件里面的ip都配置免密

[root@k8s-slave2 ~]# ssh-keygen -t rsa
[root@k8s-slave2 ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub 用户名@ip

4.两个脚本
delete-logs.sh脚本是删除每一台机器的docker日志
ansible-delete-log.sh脚本是将delete-logs.sh分发到每一台服务器执行

[root@jxapply001 ansible]# ls
ansible.cfg  ansible-delete-log.sh  delete-logs.sh  hosts  roles
[root@jxapply001 ansible]# cat delete-logs.sh
#!/bin/bash
for i in `find /var/lib/docker/containers -name *-json.log`;do cat /dev/null > $i;done
[root@jxapply001 ansible]# cat ansible-delete-log.sh
#!/bin/bash
ansible all -m copy -a "src=/etc/ansible/delete-logs.sh dest=/tmp/"
ansible all -m shell -a 'chmod u+x /tmp/delete-logs.sh && sh /tmp/delete-logs.sh'
echo $(date +"%Y-%m-%d:%T") >> /tmp/delete-k8s-log.txt

5.配置定时任务
crontab -e 每天晚上12点清理日志
0 0 * * * sh /etc/ansible/ansible-delete-log.sh

posted on 2022-04-06 15:10  sea_l  阅读(396)  评论(0)    收藏  举报