Ansible 配置文件 :

[root@center /data/ansiblework]# cat ansible.cfg
[defaults]
remote_user = root
remote_port = 22
inventory = /data/ansiblework/hosts
log_path = /var/log/ansible.log
host_key_checking = False
retry_files_enabled = False

Ansible 主机配置 :

[root@center /data/ansiblework]# cat hosts
[new_hosts]
192.168.1.1
192.168.1.2
192.168.1.3 [new_hosts:vars]
ansible_ssh_port = 22 # 远程连接端口
ansible_ssh_user = root # 远程连接用户
ansible_ssh_pass = 123456 # 远程连接密码

Ansible Playbook :

[root@center /data/ansiblework]# cat onekey_init.yml
---
- hosts: new_hosts
gather_facts: True
tasks:
- name: 下发公钥到新主机
authorized_key: user=root key="{{ lookup('file', '/root/.ssh/id_rsa.pub') }}" - name: 检查系统版本
fail: msg="系统版本错误,请检查"
when: ansible_facts['distribution'] != "CentOS" or ansible_facts['distribution_major_version'] != "" - name: 检查是否挂载/data目录
fail: msg="/data目录未挂载,请检查"
when: not ansible_mounts[1].mount == "/data" - name: 检查/data目录是否挂载异常
fail: msg="/data目录小于250G,请检查"
when: ansible_mounts[1].size_total | int < 250000000000 - name: 拷贝初始化脚本
template: src={{ item }} dest=/tmp/{{ item }} owner=root group=root
with_items:
- base_lnmp.sh
- lnmp_install.sh - name: 检查是否安装过LNMP
shell: if [ -f /tmp/install.log ];then grep 'Install Complete' /tmp/install.log;fi || echo None
register: result - name: 开始安装LNMP
shell: /bin/sh /tmp/lnmp_install.sh > /tmp/install.log
when: "'Install Complete' not in result.stdout" - name: 检查是否安装按成
shell: if [ -f /tmp/install.log ];then grep 'Install Complete' /tmp/install.log;fi || echo None
register: result
- fail: msg="安装失败,请登录到安装机器查看/tmp/install.log查看原因"
when: "'Install Complete' not in result.stdout" - name: 检查LNMP安装状态
shell: ps aux | egrep "(php|nginx|mysql|zabbix|salt)"
register: result
- fail: msg="{{ item }}安装异常,请检查"
when: "item not in result.stdout"
with_items:
- php
- mysql
- nginx
- zabbix
- salt-minion

Ansible 实战:一键安装 LNMP的更多相关文章

  1. Centos6.5中 一键安装LNMP 安装Yii2.0 手工配置

    1.一键安装LNMP cd /usr wget -c http://soft.vpser.net/lnmp/lnmp1.2-full.tar.gz tar zxf lnmp1.-full.tar.gz ...

  2. Shell脚本一键安装LNMP环境

    https://sourceforge.net/projects/opensourcefile/files/ Nginx是一款高性能的HTTP和反向代理服务器.Nginx在反向代理,Rewrite规则 ...

  3. 一键安装LNMP(适合centos7)

    1.准备工作,下载源码包 wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar ...

  4. Linux一键安装LNMP环境

    Linux一键安装LNMP环境 官方地址:https://lnmp.org/. 参考安装步骤:https://lnmp.org/install.html. 一键安装可以选择mysql版本.php版本, ...

  5. Linux安装swoole拓展 (一键安装lnmp后安装可用完美)

    一键安装lnmp后安装可用完美 swoole(一键安装完lnmp重启下,之前出现502一直解决不了,不清楚啥情况) 找到对应php版本,在lnmp文件夹的src 1.安装swoole cd /usr/ ...

  6. 一键安装Lnmp教程

    LNMP一键安装包 系统需求: CentOS/RHEL/Fedora/Debian/Ubuntu/Raspbian Linux系统 需要3GB以上硬盘剩余空间 128M以上内存,Xen的需要有SWAP ...

  7. 【Linux】Centos6.8下一键安装Lnmp/Lamp环境

    [下载一键安装软件包] 百度云地址:https://pan.baidu.com/s/1TZqGKtE-46gxW96Ptfp4gA 网址:https://lnmp.org/ [步骤] 通过第三方远程工 ...

  8. 一键安装LNMP/LAMP

    安装步骤:1.使用putty或类似的SSH工具登陆VPS或服务器: 登陆后运行:yum install screen安装  screen screen -S lnmp创建一个名字为lnmp的会话 2. ...

  9. 一键安装 lnmp/lamp/lanmp

    1.使用putty或类似的SSH工具登陆VPS或服务器 # screen -S lnmp 如果提示screen: command not found 命令不存在可以执行:yum install scr ...

随机推荐

  1. sparkr脚本

    test <- function(){ print(1) } test() 脚本内为单独函数时 调用脚本不执行 所以要在脚本内调取特定函数

  2. jQuery 与 prototype 共存

    方法一: <html>   <head>     <script src="prototype.js"></script>     ...

  3. Lucene系列二:Lucene(Lucene介绍、Lucene架构、Lucene集成)

    一.Lucene介绍 1. Lucene简介 最受欢迎的java开源全文搜索引擎开发工具包.提供了完整的查询引擎和索引引擎,部分文本分词引擎(英文与德文两种西方语言).Lucene的目的是为软件开发人 ...

  4. Keystone-all 命令

    本文档介绍Icehouse版keystone-all命令 keystone-all命令在一个进程中同时启动服务和管理API,为openstack提供服务目录,授权和身份认证服务. 用法 $ keyst ...

  5. Python property,属性

    參考资料 http://www.ibm.com/developerworks/library/os-pythondescriptors/ 顾名思义,property用于生成一个属性.通过操作这个属性. ...

  6. Xianfeng轻量级Java中间件平台:权限管理

    权限管理:是通过系统对用户的行为进行控制的一套业务规则,可以做得很简单,比如通过硬编码的方式进行控制,也可以做得很复杂,比如通过一些复杂的权限模型去实现一些复杂的权限控制,比如菜单访问权限.按钮操作权 ...

  7. Linux 文件类型及操作

    一.  文件类型 1.Linux文件类型如下图所示: 2.Linux文件类型有许多种,不同的文件类型代表特殊意义,使用以下命令可以查看文件类型: [root@VMredhat6 ~]# ls  -l  ...

  8. Keepalived + Nginx + Tomcat 的高可用负载均衡架构搭建

    Keepalived + Nginx + Tomcat 的高可用负载均衡架构搭建 Nginx 是一个高性能的 HTTP反向代理服务器 Keepalived 是一个基于VRRP协议来实现的LVS服务高可 ...

  9. 8款最新CSS3表单 环形表单很酷

    当我们在网站上注册登录还是提交评论,都需要用到表单,今天我们来分享8款最新CSS3表单,有几个效果很酷很特别,有些也非常实用,一起来看看. 1.CSS3环形特色表单 转圈切换表单焦点 这款CSS3表单 ...

  10. java mysql 链接高版本出现SSL验证

    key1: String url="jdbc:mysql://localhost:3306/test1?useUnicode=true&characterEncoding=utf-8 ...