使用Ansible部署LAMP环境

使用Ansible部署LAMP环境

前言

Ansible在部署实验环境真的很好用,今天向大家分享如何使用Ansible部署LAMP环境。

实验环境

今天实验环境比较简单, 所以就不画图了

主机 IP地址 功用
server1.anyisalin.com 172.16.1.2 控制主机
web.anyisalin.com 172.16.1.3 httpd和php
data.anyisalin.com 172.16.1.4 MySQL

实验步骤

配置ssh公钥认证

ansible是agentless类的工具, 通过ssh管理远程主机, 我们需要配置基于公钥认证的ssh

[[email protected] ~]# ssh-keygen -P ‘‘ -f ~/.ssh/id_rsa -t rsa    #生成公钥
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub 172.16.1.3
[[email protected] ~]# ssh-copy-id -i /root/.ssh/id_rsa.pub 172.16.1.4

安装ansible

由于ansible的rpm包只有在epel源主提供, 但是一些所依赖组件却在官方的base2中, 所以我们使用阿里云的镜像站

[[email protected] ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
[[email protected] ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
[[email protected] ~]# yum install ansible --nogpgcheck -y &> /dev/null && echo success  #安装ansible 
success

配置host iventory

将我们所要管理的主机添加到配置文件中

[[email protected] ~]# vim /etc/ansible/hosts   #按需添加以下字段到指定配置文件中
    [webservers]  #组名
    172.16.1.3  #IP

    [dataserver]
    172.16.1.4

创建YAML文件

我们通过playbook来指挥主机运行特定操作 
注意: 笔者的配置只针对笔者的环境, 如需使用请自行修改

[[email protected] ~]# vim lamp.yml #创建YAML格式的文件
- hosts: webservers
  remote_user: root
  tasks:
  - name: Install Apache Httpd
    yum: name={{ item }} state=present disable_gpg_check=yes
    with_items:
        - httpd
        - php
        - php-mysql
  - name: Install Configuration File
    template: src=/root/httpd.conf dest=/etc/httpd/conf/httpd.conf
    notify:
    - restart httpd 
  - name: Start Httpd Service
    service: enabled=true name=httpd state=started
  handlers:
  - name: restart httpd
    service: name=httpd state=restart

- hosts: dataserver
  remote_user: root
  tasks:
  - name: Install MySQL Server
    yum: name=mysql-server state=present disable_gpg_check=yes
  - name: Install Configuration File
    template: src=/etc/my.cnf dest=/etc/my.cnf
    notify:
    - restart MySQL
  - name: Start MySQL Server
    service: name=mysqld state=started
  handlers:
  - name: restart MySQL
    service: name=mysqld state=restarted

运行Ansible-Playbook并测试

总结

其实还可以使用role实现, 但是我们这里不做介绍, Ansible上手真的简单, ansible-doc命令查看的帮助也浅显易懂。

时间: 2024-10-10 16:24:40

使用Ansible部署LAMP环境的相关文章

ansible集中化自动管理(部署LAMP环境)

##ansible集中化自动管理 目标:1.生成公钥,并上传ssh的公钥到被控端主机 2.在ansible的主控端配置本地yum源和网络yum源 3.安装ansible,用ansible上传yum源目录到被控端主机. 4.用ansible管理被控端主机的系统.软件和服务. 5.用playbooks剧本(yaml脚本文件)来管理被控端. 各种网络yum仓库: 6zabbix-2.4: rpm -ivh http://repo.zabbix.com/zabbix/2.4/rhel/6/x86_64/

分离部署lamp环境+xcache

分离部署lamp环境+xcacheLAMP:Linux操作系统+apache+mysql+phpFastCGI 工作机制: 首先客户端发起请求,请求分为 2 种,一种是静态请求它可以直接由 Apache 直接响应返回: 另一种是动态的请求,如其中包含中 php 或者 Perl 这种脚本解释性语言,则由 Apache 服务 器通过 fastcgi 协议调用 php 服务器执行并返回给Apache由 Apache返回解释执行后的结果, 如果这个过程中涉及到对数据的操作,此时 php 服务器还会还会通

CentOS7单机部署lamp环境和apache虚拟主机

(1)apache介绍 apache : httpd.apache.org 软件包:httpd 端口服务:80/tcp(http) 443/tcp(https,http+ssl) 配置文件: /etc/httpd/conf/httpd.conf /etc/httpd/conf.d/*.conf /etc/httpd/conf.d/welcome.conf //默认测试页面 (2)lamp环境安装 1.关闭防火墙和selinux systemctl stop firewalld.service s

ubuntu下部署LAMP环境

目标: 以源码编译的方式安装一个lamp webserver服务器,有下列php扩展或功能,memcache, xcache, pdo, zip, imagemagick等 软件环境版本 ubuntu 14.0.4 apache 2.2 mysql 5 php 5 软件下载地址 /home/eric/下载/software/dev/server/lamp/ 安装目标目录 /usr/local/ 最终安装后要形成的路径 apache: /usr/local/apache mysql:  /usr/

CentOS7 一键部署LAMP环境

一.准备工作: 1)所需素材网盘链接:https://pan.baidu.com/s/17bQNJJ1-FwNzvtJI4rP5cw 提取码:m0hi 2)编写脚本,脚本内容如下: [[email protected] ~]# vim lamp.sh #!/bin/bash #安装Apache mount /dev/cdrom /mnt cd /mnt rpm -ivh apr-1.4.8-3.el7.x86_64.rpm rpm -ivh apr-devel-1.4.8-3.el7.x86_6

部署lamp环境

一.安装centos7 #参考https://www.cnblogs.com/wcwen1990/p/7630545.html 1.使用虚拟机安装centOS7作为服务器,打开vmware workstations,文件->新建虚拟机,选择"自定义(高级)"选项 2.步骤基本默认,下一步继续:(可以选择"稍后安装操作系统"选项) 3.在出现如下界面,客户机操作系统选择"linux",版本选择"CentOS 64位",下一

CentOS7下安装部署LAMP环境

(1)配置概要:  1. 172.16.100.31主机运行httpd+php服务(php为模块工作模式)  配置两台虚拟主机:wordpress个人博客系统.PHPmyadmin远程控制mysql 2.172.16.100.31主机运行mariadb服务(mysql) (2)配置流程:  首先配置172.16.100.31主机:http服务              1.安装程序:[[email protected]'s linux ~]# yum install httpd php php-

通过Playbook部署LAMP(5)

title: 通过Playbook部署LAMP(5) date: 2018-12-03 13:24:07 tags: Ansible categories: Ansible copyright: true --- Ansible是新出现的自动化运维工具,基于Python开发,集合了众多运维工具 (puppet.cfengine.chef.func.fabric) 的优点,实现了批量系统配置.批量程序部署.批量运行命令等功能,Ansible是基于模块工作的,本身没有批量部署的能力,真正具有批量部署

Redhat6下LAMP环境的搭建

LAMP是服务器系统中开源软件的一个十分普遍的组合.LAMP分别代表Linux + Apache + Mysql + Php | Python | Perl.就系统工程师来说,除了会部署LAMP环境,还应该熟练的掌握对环境的操作调优. 本文仅用于新手安装参考! 注意:自从Mysql被Oracle收购之后,很多时候使用MarriDB来代替Mysql! 环境介绍: 操作系统:RHEL6.4 IP地址:192.168.0.254 1. 安装Redhat6操作系统. 具体安装视个人需求而定! 2. 安装