用于将文件或软件从http、https或ftp下载到本地节点上或被管理机节点上
常用参数如下:
- dest= : 下载到哪里(绝对路径),如果目标是一个目录,就用服务器上面文件的名称,如果目标设置了名称就用目标设置的名称。
- owner:指定属主
- group:指定属组
- mode:指定权限
- force : 如果yes,dest不是目录,将每次下载文件,如果内容改变,替换文件。如果否,则只有在目标不存在时才会下载该文件。
- others : [file]模块接受的所有参数也可以在这里工作
- sha256sum : 如果将SHA-256校验和传递给此参数,目标文件的摘要将在下载后计算,以确保其完整性
- url : HTTP,HTTPS或FTP URL(http | https | ftp)
- url_password : 用于HTTP基本认证的密码。 如果未指定
url_username
参数,则不会使用url_password
参数。 - url_username : 用于HTTP基本认证的用户名。 对于允许空密码的站点,此参数可以不使用
url_password
使用。 - use_proxy : 如果是no,它将不使用代理,即使在目标主机上的环境变量中定义了一个代理。
validate_certs :如果“no”,SSL证书将不会被验证。 这只能使用自签名证书在个人控制的网站上使用。
- get_url示例cli
# 1、下载文件到指定目录: ansible all -m get_url -a "url=http://www.guojinbao.com dest=/tmp/guojinbao mode=0440 force=yes" 需要添加登录名密码的网站,使用url_password、url_username参数来定义 # 2、解压ansible管理机上的压缩文件到远程主机: ansible all -m unarchive -a "src=/tmp/install/zabbix-3.0.4.tar.gz dest=/tmp/ mode=0755 copy=yes" # 3、解压远程主机上的文件到目录: ansible all -m unarchive -a "src=/tmp/install/zabbix-3.0.4.tar.gz dest=/tmp/ mode=0755 copy=no"
- get_url示例palybook
- hosts: all gather_facts: False tasks: - name: 下载centos8yum源 get_url: url: https://mirrors.aliyun.com/repo/Centos-8.repo # 要访问的url地址 dest: /etc/yum.repos.d # 下载到哪个目录 mode: 0644 # 文件设定权限 force: yes # 是否覆盖本地