• 随笔-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的方式来完成的。

  • 相关阅读:
    C open fopen read fread
    图像混合模式算法
    高级API和低级API
    strcpy_s与strcpy
    IsPowerOfTwo
    透明度算法
    POJ 2240(bellman_ford)
    POJ 1797(dijkstra)
    【转载】POJ 图论题目列表
    POJ 1502(Floyd)
  • 原文地址:https://www.cnblogs.com/t-road/p/11445788.html
Copyright © 2020-2023  润新知