📜  Ansible命令备忘单(1)

📅  最后修改于: 2023-12-03 15:13:25.040000             🧑  作者: Mango

Ansible命令备忘单

Ansible是一种自动化工具,使用Python语言编写。它可用于部署应用程序、配置操作系统、管理配置文件和编排任务等。本备忘单详细介绍了常用的Ansible命令。

安装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

在使用Ansible之前,需要配置主机与远程主机之间的SSH密钥认证。可以使用下面的命令生成SSH密钥对:

ssh-keygen

然后可以使用下面的命令将公钥复制到远程主机:

ssh-copy-id user@remote_host
Ansible命令
ping

使用ping命令可以测试主机与远程主机之间的连接状态。例如:

ansible all -m ping

该命令将测试所有的主机与远程主机之间的连接。

command

使用command命令可以在远程主机上执行命令。例如:

ansible all -a "ls -l"

该命令将在所有的主机上执行ls -l命令。

shell

使用shell命令可以在远程主机上执行shell命令。例如:

ansible all -a "echo hello world"

该命令将在所有的主机上执行echo hello world命令。

copy

使用copy命令可以将本地文件复制到远程主机。例如:

ansible all -m copy -a "src=file.txt dest=/tmp/"

该命令将将file.txt文件复制到所有的主机的/tmp/目录下。

fetch

使用fetch命令可以将远程主机上的文件获取到本地主机。例如:

ansible all -m fetch -a "src=/var/log/syslog dest=/tmp/"

该命令将将所有主机的/var/log/syslog文件复制到本地主机的/tmp/目录下。

file

使用file命令可以在远程主机上管理文件和目录。例如:

ansible all -m file -a "dest=/tmp/file.txt mode=755 owner=root group=root"

该命令将将/tmp/file.txt文件的所有者设置为root,组设置为root,权限设置为755

yum

使用yum命令可以在远程主机上管理yum软件包。例如:

ansible all -m yum -a "name=nginx state=latest"

该命令将在所有的主机上安装最新版本的nginx软件包。

apt

使用apt命令可以在远程主机上管理apt软件包。例如:

ansible all -m apt -a "name=nginx state=latest"

该命令将在所有的主机上安装最新版本的nginx软件包。

总结

本备忘单介绍了常用的Ansible命令,包括pingcommandshellcopyfetchfileyumapt,并提供了安装Ansible的方法。使用这些命令可以高效自动化地管理多个远程主机。