--- - name: System Cleanup and Maintenance hosts: all become: yes gather_facts: yes tasks: # 清理包缓存和孤立包 - name: Clean package cache (Debian/Ubuntu) apt: autoclean: yes autoremove: yes when: ansible_os_family == "Debian" - name: Remove orphaned packages (Debian/Ubuntu) shell: apt-get autoremove --purge -y when: ansible_os_family == "Debian" # 清理日志文件 - name: Clean old journal logs (keep 7 days) shell: journalctl --vacuum-time=7d - name: Clean old log files find: paths: /var/log patterns: "*.log.*,*.gz" age: "7d" recurse: yes register: old_logs - name: Remove old log files file: path: "{{ item.path }}" state: absent loop: "{{ old_logs.files }}" when: old_logs.files is defined # 清理临时文件 - name: Clean /tmp directory (files older than 7 days) find: paths: /tmp age: "7d" recurse: yes register: tmp_files - name: Remove old temp files file: path: "{{ item.path }}" state: absent loop: "{{ tmp_files.files }}" when: tmp_files.files is defined # Docker 清理 (如果存在) - name: Check if Docker is installed command: which docker register: docker_check failed_when: false changed_when: false - name: Clean Docker system shell: | docker system prune -f docker image prune -f docker volume prune -f when: docker_check.rc == 0 # 磁盘空间检查 - name: Check disk usage shell: df -h register: disk_usage - name: Display disk usage debug: msg: "{{ disk_usage.stdout_lines }}" # 内存使用检查 - name: Check memory usage shell: free -h register: memory_usage - name: Display memory usage debug: msg: "{{ memory_usage.stdout_lines }}"