自动化运维工具Ansible之LNMP实践环境部署
2020-05-11 16:04:04来源:博客园 阅读 ()
自动化运维工具Ansible之LNMP实践环境部署
Ansible-实战指南-LNMP环境部署,并使用zabbix监控
Ansible-实战指南-LNMP环境部署,并使用zabbix监控
主机规划
系统初始化:必要的系统初始化
基础组件包括:zabbix监控,mariadb(用于存放zabbix监控信息)
业务组件包括:MySQL、memcached、nginx、PHP、haproxy、keepalived
添加用户账号
说明:
1、 运维人员使用的登录账号;
2、 所有的业务都放在 /app/ 下「yun用户的家目录」,避免业务数据乱放;
3、 该用户也被 ansible 使用,因为几乎所有的生产环境都是禁止 root 远程登录的(因此该 yun 用户也进行了 sudo 提权)。
1 # 使用一个专门的用户,避免直接使用root用户 2 # 添加用户、指定家目录并指定用户密码 3 # sudo提权 4 # 让其它普通用户可以进入该目录查看信息 5 useradd -u 1050 -d /app yun && echo '123456' | /usr/bin/passwd --stdin yun 6 echo "yun ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers 7 chmod 755 /app/
备注:记得在管理机 172.16.1.180 上实现对其他机器的免密登录。
Ansible 配置清单Inventory
1 [yun@ansi-manager ansible_info]$ cat hosts_key 2 # 业务组件分组 3 [manageservers] 4 172.16.1.180:22 5 6 [keepalivedserver] 7 172.16.1.181 8 172.16.1.182 9 10 [proxyservers] 11 172.16.1.18[1:2]:22 12 13 [webservers] 14 172.16.1.183 ansible_ssh_port=22 15 172.16.1.184 ansible_ssh_port=22 16 172.16.1.185 ansible_ssh_port=22 17 18 [memservers] 19 172.16.1.185 20 21 [dbservers] 22 172.16.1.183 23 172.16.1.184 24 172.16.1.185 25 26 [dbservers_master] 27 172.16.1.183 28 29 [dbservers_slave] 30 172.16.1.184 31 172.16.1.185 32 33 34 # 基础组件分组 35 ## 数据库组件分组 36 [zabbixdbserver] 37 172.16.1.180 38 39 ## 基础业务组件分组 40 [zabbixserver] 41 172.16.1.180
系统架构
实战项目GitHub地址
该项目已经放在了GitHub上,地址如下:
https://github.com/zhanglianghhh/ansible-example-lnmp
如需要请自行访问或下载。
项目任务分解
获取需求并拿到机器的时候,这时需要我们做如下分析:
1、主机规划:每台主机用于部署什么模块【本文第一节实际已经规划好了】
2、普通用户创建与提权:如果机器是公司统一初始化的,那么可以不创建普通用户,只需提权即可。
3、ansible管理机到其他机器的免密登录。
4、具体任务分解:包括机器必要的初始化、基础组件部署与业务组件部署。如果公司对机器做了统一的初始化,那么视情况而定。
## 系统初始化 1、基础镜像源与epel镜像源 2、必要的包安装 3、指定环境变量,如:为history命令添加时间信息;操作命令记录到系统日志 4、用户名、主机添加背景色,用于生产环境,这样可以减少人为的误操作 5、别名配置,如:alias grep='grep --color=auto' 6、内核参数修改,生产中视情况而定 7、创建web站点用户 www。 8、创建必要的目录,如:软件包存放目录,后期运维脚本存放目录 ## 基础组件部署 1、yum 安装mariadb,用于存放监控信息 2、yum 安装zabbix server 3、yum 安装zabbix agent ## 业务组件部署 1、MySQL 数据库部署 2、MySQL 主从实现 3、memcached 部署 4、nginx 部署 5、PHP 部署 6、nginx、PHP整合,nginx、PHP、MySQL整合,nginx、PHP、memcached整合 7、haproxy 部署 8、keepalived 部署
项目编写与后续验证步骤
请参见:
https://github.com/zhanglianghhh/ansible-example-lnmp
这里包含:涉及目录与文件说明;服务部署;停止服务【因为是个人电脑通过虚拟机实现的】;服务验证。
为了避免重复这里就不单独说了,参见上面地址即可。
———END———
如果觉得不错就关注下呗 (-^O^-) !
原文链接:https://www.cnblogs.com/zhanglianghhh/p/12872125.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 观察网络流量的工具-iptraf-ng 2020-05-19
- 容器技术之LXC WEB管理工具LXC WEB Panel 2020-05-17
- 运维相关 2020-05-16
- Linux 命令行下搜索工具大盘点,效率提高不止一倍! 2020-05-15
- 企业私有网络构建运维 2020-05-14
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash