ansible安装后的简单使用

简介:

ansible server服务端 安装之后需要执行的步骤:

1、创建密钥:

ssh-keygen -t rsa

/root/.ssh目录下生成:

id_rsa 为公钥

id_rsa.pub 为私钥

# cat id_rsa.pub >> authorized_keys


2、分发公钥到其他客户端,实现无密钥登录(执行命令是追加不会覆盖之前的内容)

ssh-copy-id -i /root/.ssh/id_rsa.pub root@客户端IP


3、客户端批量安装推送密钥所需依赖包

ansible all -m command -a 'yum -y install libselinux-python'


运行简单的ping测试

[root@localhost ansible]# ansible all -m ping

[WARNING]: provided hosts list is empty, only localhost is available

[WARNING]: No hosts matched, nothing to do

出现警告是因为,hosts还没配置主机列表;


1.1 主机ip列表方式:

vi  /etc/ansible/hosts

192.168.20.12


[root@localhost ansible]# ansible all -m ping

192.168.20.12 | SUCCESS => {

"changed": false,

   "ping": "pong"

}


SUCCESS:表示成功

false:表示未进行改变

pong:返回值,表示成功


批量执行命令

[root@localhost ansible]# ansible  all -m command -a 'w'

192.168.20.12 | SUCCESS | rc=0 >>

14:16:05 up  3:17,  2 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     pts/0    192.168.20.1     10:58    7:46   0.32s  0.32s -bash

root     pts/1    192.168.20.14    14:16    0.00s  0.11s  0.00s /bin/sh -c /usr


1.2 分组方式:

vi  /etc/ansible/hosts

[server]

192.168.20.14


[root@localhost ansible]# ansible server -m command -a 'uptime'

192.168.20.14 | SUCCESS | rc=0 >>

16:37:00 up  5:36,  2 users,  load average: 0.08, 0.02, 0.00


1.3 正则匹配

vi  /etc/ansible/hosts

[server]

192.168.20.1[2:4]

匹配 12 13 14 三台机器;


[root@localhost ansible]# ansible server -m command -a "uptime"

192.168.20.12 | SUCCESS | rc=0 >>

16:43:23 up  5:45,  2 users,  load average: 0.00, 0.00, 0.00

192.168.20.14 | SUCCESS | rc=0 >>

16:43:23 up  5:42,  2 users,  load average: 0.01, 0.01, 0.00

192.168.20.13 | UNREACHABLE! => {

"changed": false,

"msg": "Failed to connect to the host via ssh: ssh: connect to host 192.168.20.13 port 22: No route to host\r\n",

"unreachable": true

}


13服务器没有开机所以提示错误;


单独指定主机列表文件

[root@localhost ansible]# ansible -i a.txt all -m command -a 'w'

192.168.20.14 | SUCCESS | rc=0 >>

14:18:43 up  3:17,  2 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     pts/0    192.168.20.1     11:06    1.00s  0.92s  0.49s /usr/bin/python

root     pts/3    192.168.20.14    14:18    0.00s  0.10s  0.00s /bin/sh -c /usr

192.168.20.12 | SUCCESS | rc=0 >>

14:18:49 up  3:20,  2 users,  load average: 0.00, 0.00, 0.00

USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT

root     pts/0    192.168.20.1     10:58   10:30   0.32s  0.32s -bash

root     pts/1    192.168.20.14    14:18    0.00s  0.07s  0.00s /bin/sh -c /usr

[root@localhost ansible]# cat a.txt

192.168.20.12

192.168.20.14


分发文件:

[root@localhost ansible]# ansible  all -m copy -a 'src=./1.sh dest=/root/1.sh'

192.168.20.12 | SUCCESS => {

"changed": true,

"checksum": "5cc8dde04b6f1062c79188a4281f7e07d20cc2cc",

"dest": "/root/1.sh",

"gid": 0,

"group": "root",

"md5sum": "6bfe4fbfe529c3f56fe061146dc0d693",

"mode": "0644",

"owner": "root",

"size": 33,

"src": "/root/.ansible/tmp/ansible-tmp-1491458881.34-135958350771796/source",

"state": "file",

"uid": 0

}





本文转自 模范生 51CTO博客,原文链接:http://blog.51cto.com/mofansheng/1913919,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
Kubernetes Shell 网络安全
ansible的安装和简单的块使用
Ansible是一种自动化工具,用于配置管理、应用程序部署和协调云部署。它是一个开源工具,使用Python编写,通过SSH协议与远程主机通信。
159 2
ansible的安装和简单的块使用
|
Linux 开发工具
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)(二)
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)
235 0
centos7脚本离线化安装CDH6.3版本(ansible闪亮登场~~~)(二)
|
30天前
|
存储 Ubuntu Linux
在Ubuntu 14.04上安装和配置Ansible的方法
在Ubuntu 14.04上安装和配置Ansible的方法
23 1
|
2月前
|
Serverless 网络安全 Python
Ansible原理和安装
Ansible原理和安装
34 1
|
30天前
|
JSON 运维 Ubuntu
在Ubuntu 18.04上安装和配置Ansible的方法
在Ubuntu 18.04上安装和配置Ansible的方法
25 0
|
30天前
|
JSON 运维 Linux
在CentOS 7上安装和配置Ansible的方法
在CentOS 7上安装和配置Ansible的方法
51 0
|
4月前
|
存储 运维 Shell
Ansible自动化运维工具安装和基本使用
Ansible 是一款无代理的IT自动化工具,通过SSH连接目标主机执行配置管理、应用部署和云端管理任务。它使用YAML编写的Playbook定义任务,核心组件包括Playbook、模块、主机清单、变量等。Ansible的优势在于易用、功能强大、无须在目标主机安装额外软件,并且开源。安装过程涉及配置网络源、yum安装和SSH密钥设置。通过定义主机清单和使用模块进行通信测试,确保连接成功。
204 2
Ansible自动化运维工具安装和基本使用
|
4月前
|
运维 Linux Shell
Ansible的介绍与安装
**自动化与Linux系统管理**\n\n学习自动化运维能减少手动任务的错误和遗漏,提高效率。Ansible是一款Python开发的自动化工具,支持多平台,实现批量配置、部署和命令执行。它是无代理的,通过SSH连接管理主机,无需在远程主机安装额外软件。\n\nAnsible具有跨平台、人类可读的自动化语言、描述应用状态、易版本控制、动态清单管理和与其他系统集成等优点。\n\nAnsible的工作流程包括ad-hoc和playbook模式。安装涉及配置YUM源、EPEL源,然后通过yum或dnf安装软件包。在无网络环境下,可以下载rpm包离线安装。
|
4月前
|
存储 安全 Shell
Ansible安装基本原理及操作(初识)
Ansible安装基本原理及操作(初识)
|
缓存
yum install ansible无法直接安装Ansible的解决方法
准备三台机器: server.example.com node1.example.com node2.example.com 配置IP,主机名,/etc/hosts
537 0