ansible批量建立cronta定時任務
阿新 • • 發佈:2022-05-31
一丶安裝ansible
1.yum安裝ansible
yum install epel-release -y yum install ansible -y ansible --version
2.Ansible的命令引數
- ansible命令語法:
ansible [-i 主機檔案] [-f 批次] [組名] [-m 模組名稱] [-a 模組引數]
- ansible詳細引數:
-v,-verbose # 詳細模式,如果命令執行成功,輸出詳細的結果 -i PATH,-inventory=PATH #指定host檔案的路徑,預設是在/etc/ansible/hosts -f NUM,-forks=NUM #NUM是指定的一個整數,預設是5,指定fork開啟同步程序的個數。 -m NAME,-module-name=NAME # 指定使用的 module 名稱,預設使用 command 模組 -a,MODULE_ARGS #指定 module 模組的引數 -k,-ask-pass #提示輸入 ssh 的密碼,而不是使用基於 ssh 的金鑰認證 -sudo # 指定使用 sudo 獲得 root 許可權 -K,-ask-sudo-pass #提示輸入 sudo 密碼,與 -sudo 一起使用 -u USERNAME,-user=USERNAME # 指定移動端的執行使用者 -C,-check #測試此命令執行會改變什麼內容,不會真正的去執行
- ansible-doc 詳細引數:
ansible-doc -l #列出所有的模組列表 ansible-doc -s 模組名 #檢視指定模組的引數
3.配置Ansible主機檔案
vim k8s-hosts
[devops] k8s-worker01 ansible_ssh_host=182.196.36.92 k8s-worker02 ansible_ssh_host=182.196.36.93 k8s-worker03 ansible_ssh_host=182.196.36.94 k8s-worker04 ansible_ssh_host=182.196.36.95 [all:vars] ansible_ssh_user=pzom ansible_ssh_port=37254 ansible_ssh_private_key_file=/home/pzom/.ssh/id_rsa
二丶ansible批量建立cronta定時任務
1.建立清理log指令碼
vim delete-java-logs.sh
#!/bin/bash sudo find /data/k8s-storage/logs/ -type f -name "*20*" -exec rm -rf {} \; sudo find /data/k8s-storage/logs/ -type f -name "*.log" -exec rm -rf {} \;
2.建立清理images指令碼
vim clear-images.sh
#!/bin/bash
sudo docker rmi $(sudo docker images -qa)
3.批量下發指令碼
ansible -i k8s-hosts devops -m shell -a 'sudo mkdir -p /data/scripts/' ansible -i k8s-hosts devops -m shell -a 'sudo chmod -R 777 /data/scripts/' ansible -i k8s-hosts devops -m copy -a "src=./delete-java-logs.sh dest=/data/scripts/delete-java-logs.sh mode=0777" ansible -i k8s-hosts devops -m copy -a "src=./clear-images.sh dest=/data/scripts/clear-images.sh mode=0777"
4.批量建立定時任務
ansible -i k8s-hosts devops -m cron -a 'name="clean_log" minute=30 hour=5 job="sh /data/scripts/delete-java-logs.sh >/dev/null 2>&1"' ansible -i k8s-hosts devops -m cron -a 'name="clean_images" minute=30 hour=3 weekday=6 job="sh /data/scripts/clear-images.sh >/dev/null 2>&1"'
5.cron模組引數詳解