ansible用playbook进行lamp分离部署

ansible以palybook的方式部署httpd 环境首先查找自己主机的ansible清单默认位置,并进入 添加受控主机 测试连接状态(我自己配置的ssh免密登录) 阅读详情

编辑apache主机playbook文件

[root@ansible playbook]# cat httpd.conf     ##需要复制过去的虚拟站点文件
<VirtualHost *:80>
    DocumentRoot "/var/www/html/"
    ServerName web.com
    ProxyRequests Off
    ProxyPassMatch ^/(.*\.php)$ fcgi://192.168.10.203:9000/www/html/$1
</VirtualHost>
[root@ansible playbook]#
[root@ansible playbook]# cat apache.yml 
---
- name: apache install and config
  hosts: apache
  tasks:
    - name: stop and disable firewalld
      service: 
        name: firewalld
        state: stopped
        enabled: no

    - name: disable selinux
      lineinfile:
        path: /etc/selinux/config
        regexp: "^SELINUX="
        line: "SELINUX=disabled"
        state: present
          
    - name: install httpd
      yum:
        name: httpd
        state: latest

    - name: config
      lineinfile:
        path: /etc/httpd/conf/httpd.conf
        insertafter: "    AddType application/x-gzip .gz .tgz"
        line: |
          AddType application/x-httpd-php .php
          AddType application/x-httpd-php-source .phps

    - name: config2
      lineinfile:
        path: /etc/httpd/conf/httpd.conf
        insertafter: "# LoadModule foo_module modules/mod_foo.so"
        line: |
          LoadModule proxy_module modules/mod_proxy.so
          LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so

    - name: config3
      lineinfile:
        path: /etc/httpd/conf/httpd.conf
        regexp: "^    DirectoryIndex"
        line: "    DirectoryIndex index.php index.html"

    - name: virtualhost
      copy:
        src: httpd.conf
        dest: /etc/httpd/conf.d/

    - name: serviec start and enable
      service:
        name: httpd
        state: started
        enabled: yes
[root@ansible playbook]#

编辑mysql的playbook文件

[root@ansible playbook]# cat mysql.yml 
---
- name: mysql node
  hosts: mysql
  tasks:
    - name: stop and disable firewalld
      service:
        name: firewalld
        state: stopped
        enabled: no

    - name: disable selinux
      lineinfile:
        path: /etc/selinux/config
        regexp: "^SELINUX="
        line: "SELINUX=disabled"
        state: present

    - name: install mariadb-server
      yum:
        name: mariadb-server
        state: latest

    - name: install mariadb
      yum:
        name: mariadb
        state: latest

    - name: mysql start and enabled
      service:
        name: mariadb
        state: started
        enabled: yes
[root@ansible playbook]#

编辑php的playbook文件

[root@ansible playbook]# cat index.php   ##需要复制过去的测试页文件
<?php
phpinfo();
?>
[root@ansible playbook]#
[root@ansible playbook]# cat php.yml 
---
- name: php node
  hosts: php
  tasks:
    - name: stop and disabled firewalld
      service:
        name: firewalld
        state: stopped
        enabled: no

    - name: disable selinux
      lineinfile:
        path: /etc/selinux/config
        regexp: "^SELINUX="
        line: "SELINUX=disabled"
        state: present

    - name: install php 
      yum:
        name: php*
        state: latest

    - name: config 
      lineinfile:
        path: /etc/php-fpm.d/www.conf
        regexp: "^listen = "
        line: "listen = 0.0.0.0:9000"

    - name: config2
      lineinfile:
        path: /etc/php-fpm.d/www.conf
        regexp: "listen.allowed_clients = 127.0.0.1"
        line: "listen.allowed_clients = 192.168.10.201"

    - name: create directory
      file:
        path: /www/html/
        state: directory

    - name: file index.php 
      copy:
        src: index.php
        dest: /www/html

    - name: restart and enabled service
      service:
        name: php-fpm
        state: started
        enabled: yes

[root@ansible playbook]#

测试结果:

在这里插入图片描述

自动化运维工具Ansible——(3)Playbook部署LNMP 通过playbook安装管理LNMP 阅读详情

相关推荐

Ansible-playbook部署并发布上线wordpress项目(LAMP环境)

vim lamp.yml --- - hosts: webservers tasks: - name: "安装Apache、php、unzip" yum: name=httpd,php,php-mysql,unzip state=latest - name: "推送配置文件" copy: src=httpd.conf dest=/etc/httpd...

aaronszm的博客 1217

Ansible Playbooks的简单使用——搭建httpd服务、模板的使用、变量使用

本篇博客是在ansible搭建完毕的基础上进行:自动化运维工具Ansible的搭建 一、设置在.yml文件中Tab键为两个空格 这是.yml文件的格式要求 [devops@ansible1 ~]$ vim .vimrc ================================================ autocmd filetype yaml setlocal ai ts=2 sw...

Taylover的博客 1364

Ansible Playbook入门指南:自动化部署实战

Playbook是Ansible实现自动化运维的核心组件,采用YAML格式定义任务流程。作为基础设施即代码(IaC)的重要实践,Playbook通过声明式语法将服务器配置、应用部署等操作标准化。其工作原理是通过SSH协议在目标主机上执行模块化任务,支持变量、条件、循环等编程特性。在DevOps实践中,Playbook能显著提升环境一致性,实现从开发到生产的无缝迁移。典型应用场景包括Web服务器部署(LAMP/LEMP)、中间件配置、集群管理等。本文以Nginx部署为例,详解Playbook的变量系统、任务编

weixin_33762130的博客 993

使用ansible角色安装httpd

【代码】使用ansible角色安装httpd。

这是小熊呀 371

如何使用ansible中的playbook部署lamp架构

文章目录实战-使用Playbook批量部署多台LAMP环境在playbooks 中定义任务:部署多台LAMP环境Playbook常用文件夹作用:使用Playbook批量部署多台LAMP环境步骤 实战-使用Playbook批量部署多台LAMP环境 playbooks使用步骤playbook是一个不同于使用ansible命令行执行方式的模式,功能更强大更灵活。 思路:我们搭建lanp架构,大概...

心有鸿鹄天地,不敢妄坠人间 1329

setup_cdh_cluster:基于ansible自动化构建,自动化部署CDH配置

setup_cdh_cluster:基于ansible自动化构建,自动化部署CDH配置

使用ansible 源码安装httpd

源码安装httpd

mushuangpanny的博客 663

ArcGIS Pro 拓扑编辑实战:从‘地图拓扑’到‘共享编辑’,手把手教你批量修改要素

本文详细介绍了ArcGIS Pro中的拓扑编辑功能,从地图拓扑配置到共享编辑技巧,手把手教你如何批量修改要素。通过实战案例展示拓扑编辑在城市规划、地籍管理等场景中的应用,显著提升编辑效率并减少拓扑错误,是现代GIS技术的重要生产力工具。

weixin_30500473的博客 505

ansible 安装 httpd-2.4.25 启动httpd

一、下载httpd, apr, apr-util 源码包 httpd 源码包 http://httpd.apache.org/download.cgi#apache24  apr和apr-util源码包 http://apr.apache.org/download.cgi  二、编译httpd  1、解压三个软件包,将apr和apt-util解压放入httpd-2.4.25/src...

黄飞Gary 737

DIY音频必备:手把手教你用AB类功放模块打造高保真桌面音响(含电路图)

本文详细指导如何利用AB类功放模块DIY高保真桌面音响,涵盖选型指南、核心元器件清单、电路搭建与焊接工艺,以及系统调试与音质优化技巧。AB类功放以其接近A类功放的音质和B类功放的效率,成为音频爱好者的理想选择,适合有一定电子基础的实践者。

weixin_42665725的博客 444

在trae CN中使用conda环境(已解决)

Trae CN 是字节跳动于 2025 年 3 月 3 日发布的国内首个 AI 原生集成开发环境(AI IDE)123。

zwzscnds的博客 6937

使用Ansible之playbook分离部署lamp

文章目录lamp简介1.使用ansible之playbook分离部署lamp2.在ansible主机上写playbook部署lamp3.浏览器访问测试httpd4.测试访问 lamp简介 ​ 所谓lamp,其实就是由Linux+Apache+Mysql/MariaDB+Php/Perl/Python的一组动态网站或者服务器的开源软件,除Linux外其它各部件本身都是各自独立的程序,但是因为经常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。 LAMP指的是Linux

weixin_60012466的博客 215

Ubuntu 24.04 部署 EMQX 5.8 开源版MQTT服务器:从零搭建到实战应用

本文详细指导如何在Ubuntu 24.04系统上部署EMQX 5.8开源版MQTT服务器。内容涵盖从环境准备、安装Erlang、下载安装包到启动服务的完整步骤,并提供了验证服务、配置网络防火墙以及通过WebSocket工具进行基础消息收发的实战方法,帮助用户快速搭建稳定、免费的物联网消息中间件。

weixin_29209825的博客 293

Ansible-playbook分离部署lamp

Ansible-playbook分离部署lamp 1.lamp简介 所谓lamp,其实就是由Linux+Apache+Mysql/MariaDB+Php/Perl/Python的一组动态网站或者服务器的开源软件,除Linux外其它各部件本身都是各自独立的程序,但是因为经常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。 LAMP指的是Linux(操作系统)、Apache(HTTP服务器)、MySQL(也指MariaDB,数据库软件)和PHP(有时也是指Perl或Python)

西北连天一片云,乌鸦落在凤凰群 283

【面试系列】软件架构师 高频面试题及详细解答

本文介绍了软件架构师岗位的初级、中级和高级面试题及详细解答,涵盖了系统设计、面向对象设计、分布式系统、云计算技术、性能优化等关键领域。通过这些问题和解答,候选人可以深入理解软件架构师的核心职责和技能要求。此外,文章总结了在面试中需要掌握的常考知识点,包括架构模式、分布式系统管理、安全性、数据管理和DevOps实践。通过掌握这些知识点,软件架构师能够有效设计和指导复杂系统的结构,确保系统的可扩展性、性能和维护性。

在路上的专栏 850

Cadence画PCB的傻瓜式教程

1.原理图1)建立元件库2)建立原理图3)在原理图中画好电路图4)利用MENTOR-GRAPHICS-IPC-7351-LP-VIEWER查看元件的封装信息,用pad designer画焊盘,用pcb editor画元件的封装(对照LP_VIEWER),(也可以使用package wizard)5)在原理图中为元件添加封装信息(键入)6)Drc检查7)生成网表2.Pcb1)设置...

tianpu2320959696的博客 1万+

Ansible分离部署LAMP(playbook)

Ansible分离部署LAMP(playbook) 文章目录Ansible分离部署LAMP(playbook)环境说明准备工作1. 安装httpd1.1 编写playbook1.1.1 进入lamp/httpd目录创建一个名为httpd_install的yaml文件1.1.2 执行这个playbook1.2 关闭防火墙和selinux1.2.1 编写playbook来配置防火墙和selinux1.2.2 执行这个playbook1.2.3 完成后访问node2的IP进行测试2. 安装mysql2.1 编写p

Cadillac_Yuhuang的博客 828

《备考系统架构设计师》 - 专栏介绍和目录

本专栏包括所有历年真题及详解、章节知识核心总结、精选高分论文、补充知识、专题总结等。欢迎订阅专栏。

数据知道的博客 4万+

Ansible第15篇【架构师整理】CentOS7.9 ansible playbook部署LAMP及大流量高并发配置模版,企业级生产环境可用

【代码】【架构师整理】CentOS7.9 ansible playbook部署LAMP及大流量高并发配置模版,企业级生产环境可用。

老韩的Linux云计算架构师进阶之路 435

AD(十四)调用已有的PCB元件封装库

软件:Altium Designer 16 需要资料:已有的PCB原理图文件(.PCBDOC)或者PCB库文件(.PCBLIB)(来源文中细说) 调用已有的PCB元件封装库(一)从已有的PCB原理图文件(*.PCBDOC)中调用1、PCB原理图文件来源2、打开已有的PCB原理图文件(*.PCBDOC)3、生成PCB封装库4、复制封装到工程文件下的PCB库文件(*.PCBLIB)5、重名问题(二)从已有的PCB库文件(*.PCBLIB)中调用1、PCB库文件(*.PCBLIB)的来源2、打开已有的PCB库 (

Curnane0_0的博客 5083

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Ansible自动化运维(三)Playbook 模式详解

Playbook不同于使用单个模块操作远程服务器,Playbook的功能更加强大。如果说单个模块执行类似于Linux系统中的命令,那么Playbook就类似于shell脚本,将多个模块组合起来实现一组的操作。

liu_chen_yang的博客 1万+

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

Ansible-Playbook

Ansible_Ansible-playbook

Yuanshigou9的博客 3883

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

使用Ansible的Playbook批量部署多台LAMP环境

使用Ansible的Playbook批量部署多台LAMP环境 Playbook的使用步骤 playbook是一个不同于使用ansible命令行执行方式的模式,功能更强大更灵活。 1、在playbook中定义任务: - name: task description # 任务描述信息 module_name:module_args # 需要使用的模块名字: 模块参数 2、ansible-playbook 执行命令: ansible-playbook site.yml playbook是由一个

keyan的岁月阁 868

实战-使用 Playbook 批量部署多台 LAMP 环境

实战-使用 Playbook 批量部署多台 LAMP 环境。

冰恋云的专栏 988

Ansible——Playbook剧本

Playbook概述(定义、组成、配置文件详解)、运行Playbook(Playbook相关命令、启动httpd、变量定义和引用、指定远端主机sudo、When条件判断、迭代(创建文件、创建文件夹、创建文件夹并建立用户))、Template模块、Tags模块、Roles模块

一坨小橙子的博客 5180
上一篇: ansible playbook的使用
下一篇: ansible的变量和机密
在你书包里拉屎
博客等级 码龄5年 149粉丝 100原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值