ansible 2.7.1 快速开始
refer to 官方手册 https://docs.ansible.com/ansible/latest/modules/modules_by_category.html
refer to 中文手册 http://www.ansible.com.cn/
refer to Ansible快速入门 http://getansible.com/
建议使用Redhat Linux 7.4
0.查看linux版本
cat /etc/redhat-release

1.安装ansible
yum install ansible -y
查看ansible版本

2.更新/etc/ansible/hosts
vim /etc/ansible/hosts
(如果需要使用密码认证方式,添加host记录,例如
hk.lihuanhuan.net ansible_ssh_user=root ansible_ssh_pass='xxxx'
(如果需要使用密钥认证方式,添加host记录,例如
[group1]
hk.lihuanhuan.net
(如果需要给hosts文件加密,请参考如下流程:
refer to https://docs.ansible.com/ansible/latest/user_guide/vault.html?highlight=vault
#给hosts文件加密
ansible-vault encrypt /etc/ansible/hosts
#给hosts文件解密,文件将转换为明文
ansible-vault decrypt /etc/ansible/hosts
#查看加密文件
ansible-vault view hosts
#编辑加密文件
ansible-vault edit hosts
#使用加密后的hosts文件,交互式
ansible all -m ping --ask-vault-pass
ansible-playbook --ask-vault-pass site.yml
#使用加密后的hosts文件,加密密码存在dev-password文件中
ansible all -m ping --vault-password-file dev-password
ansible-playbook --vault-password-file dev-password site.yml
ansible-playbook site.yml --vault-password-file ~/.vault_pass.txt
)
3.更新/etc/ansible/ansible.cfg
# uncomment this to disable SSH key host checking
host_key_checking = False
4.执行你的第一条ansible命令
如果使用密码认证方式,通过以下方式连接target,例如
#如果使用密码认证方式,而且已经在hosts文件配置了正确的信息
#all ansible hosts配置的的所有hostname
# -m 表示调用ansible的module
# ping 为ansible的一个module
ansible all -m ping
如果使用密钥认证方式,通过以下方式连接target即可,例如
#group1为已经配置的group名称,-u用于指定连接target的用户名,--private-key 指定私钥文件
ansible group1 -m ping -u lihuanhuan80 --private-key /appvol/robin.private
5.使用ansible-playbook去部署一个tomcat,以下是project的结构。源代码请在这里下载https://github.com/ansible/ansible-examples/tree/master/tomcat-standalone 感谢Github上的朋友。

5.1 在/etc/ansible/hosts文件新增一个group
#ansible-vault edit hosts
#hosts文件新增部分,如果使用非root用户登陆,而且要切换到root,ansible_become_pass必须配置
[tomcat-servers]
hb.lihuanhuan.net ansible_ssh_user=root ansible_ssh_pass=password ansible_become_pass=password
5.2 在porject中site.yml配置成这样
---
# This playbook deploys a simple standalone Tomcat 7 server.
- hosts: tomcat-servers
remote_user: root
become: yes
become_method: sudo
roles:
#- selinux
- tomcat
5.3 在project中hosts配置成这样
[tomcat-servers]
hb.lihuanhuan.net
个人理解,site.yml作为ansible-playbook的入口文件,这里配置的hosts=tomcat-servers ,程序会去project的hosts文件中查找名为tomcat-servers的group和server。project中hosts文件配置的group和server要在ansible的master服务器安装目录中的/etc/ansible/hosts找到。
5.4 把修改好的ansible-playbook project上传到ansible master服务器/appvol/
5.5 在ansible的master服务器上执行ansible-playbook
ansible-playbook /appvol/tomcat-standalone/site.yml --ask-vault-pass
你会在服务器上看到执行的日志,类似下面的截图。

ansible 2.7.1 快速开始的更多相关文章
- 基于Ansible实现Apache Doris快速部署运维指南
Doris Ansible 使用指南 Apache Doris 介绍 Apache Doris是一个现代化的MPP分析型数据库产品.仅需亚秒级响应时间即可获得查询结果,有效地支持实时数据分析.Apac ...
- 【原创】运维基础之Ansible(1)简介、安装和使用
官方:https://www.ansible.com/ 一 简介 Ansible is a radically simple IT automation engine that automates c ...
- Ansible专题整理
Ansible 专题文章总览 Ansible小手册,仅供参考 文章如未明确说明实验环境,默认如下: OS:Centos 6.7 x86_64 Ansible: 2.1.2.0 Python: 2.6. ...
- 自动化运维-ansible入门篇
1.ansible配置 什么是Ansible IT自动化工具 依赖于现有的操作系统凭证来访问控制远程机器 简单易用.安全可靠 Ansible可以完成哪些任务 配置系统 开发软件 编排高级的IT任务 A ...
- Elasticsearch 8.X 节点角色划分深入详解
文章转载自: https://mp.weixin.qq.com/s/3486iH3VH7TV6lza-a7adQ 0.问题引出 如果你的 Elasticsearch 集群是 7.9 之前的版本,在配置 ...
- Ansible快速上手
ansible 是通过python 语言开发的自动化运维工具,可以实现批量系统设置.批量程序部署.批量执行命令等功能 下面是基于docker使用ansible测试示例,可以让新手快速上手使用 一.新建 ...
- Ansible 快速部署 Zabbix 4
阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...
- Ansible 快速上手(转)
add by zhj: 执行Ansible(发音时,重音在最前面)命令有两种方式,一种是ad-hoc形式,另一种是playbooks,对于软件开发者来说,一般使用ad-hoc就足够了.playbook ...
- ansible 快速入门
安装 $ sudo apt-get install software-properties-common $ sudo apt-add-repository ppa:ansible/ansible $ ...
随机推荐
- [NOIP2015]运输计划(树上差分+LCA+二分)
Description 公元 2044 年,人类进入了宇宙纪元. L 国有 n 个星球,还有 n−1 条双向航道,每条航道建立在两个星球之间,这 n−1 条航道连通了 L 国的所有星球. 小 P 掌管 ...
- Linux系统属性文件详解
1)inode概述 中文意思就是索引节点(index node)第一部分是inode 第二部分是block inode主要用来存放文件属性信息的(也就是ls - l 的结果)包含的属性信息包括文件的大 ...
- 洛谷P1424小鱼的航程改进版
题目链接https://www.luogu.org/problemnew/show/P1424
- 用nc+简单bat/vbs脚本+winrar制作迷你远控后门
前言 某大佬某天和我聊起了nc,并且提到了nc正反向shell这个概念. 我对nc之前的了解程度仅局限于:可以侦听TCP/UDP端口,发起对应的连接. 真正的远控还没实践过,所以决定写个小后门试一试. ...
- [HEOI2014][bzoj3611] 大工程 [虚树+dp]
题面: 传送门 思路: 又是一道虚树入门级的题目,但是这道题的实际难点在于dp 首先,这道题是可以点分治做的,而且因为6s时限随便浪,所以写点分治也不是不可以 但是,dp因为$O\left(n\rig ...
- [luoguP2587] [ZJOI2008]泡泡堂(贪心)
传送门 贪心,很像田忌赛马那样,但是因为有平局加一分导致那样的贪心不好处理. 先将两个数组从小到大排序. 比较a最大和b最大,如果a比b大,那么直接赢掉 否则 比较a最小和b最小,如果a比b大,那么直 ...
- 关于可图化序列的一点结论 NEU 1429
Graphic Sequence A graphic sequence is a sequence of numbers which can be the degree sequence of som ...
- BZOJ5302 [HAOI2018]奇怪的背包 【数论 + dp】
题目 小 CC 非常擅长背包问题,他有一个奇怪的背包,这个背包有一个参数 PP ,当他 向这个背包内放入若干个物品后,背包的重量是物品总体积对 PP 取模后的结果. 现在小 CC 有 nn 种体积不同 ...
- 1.docker学习
Docker —— 从入门到实践 http://udn.yyuap.com/doc/docker_practice/introduction/index.html 非常详细的Docker学习教程 ht ...
- 【05】js异步编程理解
1.概念 同步:一个任务等待前一个任务结束,然后再执行,程序的执行顺序与任务的排列顺序是一致的.同步的.异步:每一个任务有一个或多个回调函数(callback),前一个任务结束后,不是执行后一个任务, ...