随笔-ansible-2
通过Ansible来搭建一套Web服务架构。【以AD-HOC的形式】
Inventory文件内容如下:
[proxy]
192.168.40.254
[app]
192.168.40.243
[nosql]
192.168.40.252
[db]
192.168.40.252
(1)首先使用ansible安装Nginx。
ansible proxy -m yum -a "name=nginx state=present"
使用yum模块来安装CentOS上的包。特别要注意state的意思。
从网络安装:
ansible proxy -m yum -a \
"name=http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6.0.el6.ngx.noarch.rpm \
state=present"
从本地安装:
ansible proxy -m yum -a \
"name=/usr/local/src/nginx-release-centos-6-0.el6.ngx.noarch.rpm state=present"
(2)然后部署app服务器。
=== nginx和php
ansible app -m yum -a "name=nginx state=present"
ansible app -m yum -a "name=php state=present"
=== django
ansible app -m yum -a "name=MySQL-python state=present"
ansible app -m yum -a "name=python-setuptools state=present"
ansible app -m pip -a "name=django state=present"
ansible app -m command -a "python -c 'import django; print django.get_version()' "
(3)然后部署nosql服务器和mariadb服务器。
ansible db -m yum -a "name=redis state=present"
ansible db -m command -a "redis-cli --version"
ansible db -m yum -a "name=mariadb-server state=present"
ansible db -m yum -a "name=mariadb-client state=present"
ansible db -m command -a "iptables -A INPUT -s 192.168.0.0/16 -p tcp -m tcp --dport 3306 -j ACCEPT"
总结:
通过ansible部署了一套应用环境,期间没有登录任何客户端,所有的操作都是在控制端执行的。
对于使用次数较少的情况下,这种方式没有任何优势,还不如我们直接登录客户服务器,执行相关命令。
但如果要将这套环境部署到1000台服务器上,那就体现出了ansible的优势。
以前可能需要执行10000条命令才能安装完1000台服务器,现在使用ansible后,完成这个工作只需要
10条命令即可。
注意:这是通过AD-HOC的方式来完成的。
随笔-ansible-2的更多相关文章
- Ansible随笔8
自定义模块的开发模式 1.决定自定义模块的存放路径 编辑/etc/ansible/ansible.cfg文件,修改library = /usr/share/ansible/. 这样就告诉ansible ...
- Ansible playbook API 开发 调用测试
Ansible是Agentless的轻量级批量配置管理工具,由于出现的比较晚(13年)基于Ansible进行开发的相关文档较少,因此,这里通过一些小的实验,结合现有资料以及源码,探索一下Ansible ...
- ansible学习
声明:本博客内容是根据惨绿少年内容实践随笔,地址:http://www.cnblogs.com/clsn/p/7743792.html#comment_form 1.ansible介绍 Ansible ...
- Ansible 利用playbook批量部署mariadb
环境说一下 192.168.30.21 ansible 192.168.30.25 client1 192.168.30.26 client2 这里我的ansible环境已经部 ...
- Ansible实现zabbix服务器agent端批量部署
项目需求:由于搭建zabbix,需要每台服务器都需要安装监控端(agent)正常的的操作是一台一台去安装,这样确实有点浪费时间,这里为大家准备了一款开源 的自动化运维工具Ansible,相信大家也很熟 ...
- 利用ansible书写playbook搭建HAProxy+Keepalived+PXC负载均衡和高可用的PXC环境续
ansible.playbook.haproxy.keepalived.PXC haproxy+keepalived双主模式调度pxc集群 HAProxy介绍 反向代理服务器,支持双机热备支持虚拟主机 ...
- 如何利用ansible callback插件对执行结果进行解析
最近在写一个批量巡检工具,利用ansible将脚本推到各个机器上执行,然后将执行的结果以json格式返回来. 如下所示: # ansible node2 -m script -a /root/pyth ...
- AI人工智能系列随笔
初探 AI人工智能系列随笔:syntaxnet 初探(1)
- 【置顶】CoreCLR系列随笔
CoreCLR配置系列 在Windows上编译和调试CoreCLR GC探索系列 C++随笔:.NET CoreCLR之GC探索(1) C++随笔:.NET CoreCLR之GC探索(2) C++随笔 ...
- C++随笔:.NET CoreCLR之GC探索(4)
今天继续来 带大家讲解CoreCLR之GC,首先我们继续看这个GCSample,这篇文章是上一篇文章的继续,如果有不清楚的,还请翻到我写的上一篇随笔.下面我们继续: // Initialize fre ...
随机推荐
- 我看Spring MVC系列(一)
1.Spring MVC是什么: Spring MVC:Spring框架提供了构建Web应用程序的全功能MVC模块. 2.Spring helloWorld应用(基于Spring 4.2) 1.添加S ...
- Ethenet: MAC PHY MII RMII
https://www.cnblogs.com/liangxiaofeng/p/3874866.html 1. general 下图是网口结构简图.网口由CPU.MAC和PHY三部分组成.DMA控制器 ...
- ActionContext 与 ServletActionContext获取Session的异同
1. ActionContext 在Struts2开发中,除了将请求参数自动设置到Action的字段中,我们往往也需要在Action里直接获取请求(Request)或会话(Session)的一些信息, ...
- docker容器的常见操作
进入容器 docker exec -it 12a022ee8127 /bin/bash 交互模式进入容器 docker exec -it 12a022ee8127 ip a 查看容器的ip等信息 批量 ...
- Avito Cool Challenge 2018 C - Colorful Bricks
题目大意: 1*n的格子 可以用m种颜色涂色 已知从第2开始到第n个格子 有k个格子与其左边的格子颜色不同 求涂色的方案数 相当于把n个格子分成k+1份 可以递推出分成k+1份的不同的方案数(其实递推 ...
- lca 倍增模版
; void dfs(int u,int fa){ d[u]=d[fa]+; p[u][]=fa; ;i<POW;i++) p[u][i]=p[p[u][i-]][i-]; int sz=edg ...
- react 中刷新,路由传参数丢失不存在了?
你可能在Link to没写state {{pathname:'/report',state:{storageClear:this.state.storageClear}}}
- Android SDK中无法安装HAXM installer
一.原因: 刚搭建好环境,当我想打开Android Studio 自带的模拟器时,出现如下: /dev/kvm is not found 二.解决步骤: 1.点击File -- Setti ...
- md详解和rd详解:一次性创建多个目录和多级子目录
md 命令: 官方解释: E:\ABC>md /? 创建目录. MKDIR [drive:]path MD [drive:]path 如果命令扩展被启用,MKDIR 会如下改变: 如果需要,MK ...
- JFinal教程
自学JFinal总结 前言:每次搭建ssm框架时,就像搬家一样,非常繁杂,并且还容易出错.正好了解到JFinal极简,无需配置即可使用,在这里记录下学习的过程. 感谢:非常感谢此网站发布的教程,非常详 ...