📅  最后修改于: 2023-12-03 15:13:25.040000             🧑  作者: Mango
Ansible是一种自动化工具,使用Python语言编写。它可用于部署应用程序、配置操作系统、管理配置文件和编排任务等。本备忘单详细介绍了常用的Ansible命令。
在Ubuntu和Debian系统中,可以使用下面的命令安装Ansible:
sudo apt update
sudo apt install ansible
在CentOS和Red Hat系统中,可以使用下面的命令安装Ansible:
sudo yum install ansible
在Mac系统中,可以使用下面的命令安装Ansible:
brew install ansible
在使用Ansible之前,需要配置主机与远程主机之间的SSH密钥认证。可以使用下面的命令生成SSH密钥对:
ssh-keygen
然后可以使用下面的命令将公钥复制到远程主机:
ssh-copy-id user@remote_host
使用ping
命令可以测试主机与远程主机之间的连接状态。例如:
ansible all -m ping
该命令将测试所有的主机与远程主机之间的连接。
使用command
命令可以在远程主机上执行命令。例如:
ansible all -a "ls -l"
该命令将在所有的主机上执行ls -l
命令。
使用shell
命令可以在远程主机上执行shell命令。例如:
ansible all -a "echo hello world"
该命令将在所有的主机上执行echo hello world
命令。
使用copy
命令可以将本地文件复制到远程主机。例如:
ansible all -m copy -a "src=file.txt dest=/tmp/"
该命令将将file.txt
文件复制到所有的主机的/tmp/
目录下。
使用fetch
命令可以将远程主机上的文件获取到本地主机。例如:
ansible all -m fetch -a "src=/var/log/syslog dest=/tmp/"
该命令将将所有主机的/var/log/syslog
文件复制到本地主机的/tmp/
目录下。
使用file
命令可以在远程主机上管理文件和目录。例如:
ansible all -m file -a "dest=/tmp/file.txt mode=755 owner=root group=root"
该命令将将/tmp/file.txt
文件的所有者设置为root
,组设置为root
,权限设置为755
。
使用yum
命令可以在远程主机上管理yum软件包。例如:
ansible all -m yum -a "name=nginx state=latest"
该命令将在所有的主机上安装最新版本的nginx
软件包。
使用apt
命令可以在远程主机上管理apt软件包。例如:
ansible all -m apt -a "name=nginx state=latest"
该命令将在所有的主机上安装最新版本的nginx
软件包。
本备忘单介绍了常用的Ansible命令,包括ping
、command
、shell
、copy
、fetch
、file
、yum
和apt
,并提供了安装Ansible的方法。使用这些命令可以高效自动化地管理多个远程主机。