期中架构
一、名词介绍
1.项目:针对游戏公司,每一个游戏就是一个项目;针对互联网行业,一个公司就是一个项目;
2.架构:维护一个项目的所有组件组成的一个整体
lnmp:linux、nginx、mysql(mariadb)、php(python)
lnmt:linux、nginx、mysql(mariadb)、tomcat(java)
lamt:linux、apache、mysql(mariadb)、tomcat(java)
lamp:linux、apache、mysql(mariadb)、php(python)
redis、elasticsearch、kafka、hadoop、hbase、zabbix、nfs、git、jenkins
3.集群:多台服务器组成一个集合,实现同样的工作,当一台服务器出现问题,其他的服务器可以正常提供服务
4.负载均衡:将前端的用户请求,平均的分配到后端服务器
5.高可用:当一台服务器不可用时,另一台服务器自动接管工作,保证业务的可用性
二、企业人员架构模型(酒店)
1.导航 ---> 寻找地址
2.保安 ---> 识别身份
3.迎宾 ---> 接待客户
4.服务员 ---> 满足客户一切需求
5.厨师 ---> 提供食物
6.备菜 ---> 提前准备
7.前台 ---> 存放扑克,酒水
8.经理 ---> 管理人员
9.监控 ---> 监控所有人员
10.仓库 ---> 存放物品
11.后勤
3.架构中的服务
完整期中架构图
三、架构访问流程
1.用户访问流程
1.用户在浏览器输入域名
2.浏览器拿着域名取DNS服务器解析
3.DNS服务器将解析后的IP返回给浏览器
4.浏览器根据IP去访问真实服务器
5.访问真实服务器的防火墙
6.防火墙将请求通过内网交换机传给负载均衡
7.负载均衡将请求平均的分配给后端的web服务器
8.web服务器去判断是静态请求还是动态请求
9.如果是静态请求,web服务器会去文件服务器获取数据
10.如果是动态请求,web服务器会通过程序取数据库或者缓存获取数据
11.数据从数据库或者NFS服务器返回给web服务器,web服务器将数据返回给负载均衡,负载均衡通过防火墙将数据传回给浏览器
2.运维访问流程
1.管理人员连接跳板机或者VPN
2.通过跳板机或者VPN连接内网服务器
3.通过zabbix监控查看服务器状态
4.如果有问题则连接相应机器解决问题
5.日常巡检,查看服务器配置
6.管理备份和备份数据
7.日志收集和整理展示
四、架构阶段服务器准备
外网IP | 内网IP | 主机名 |
---|
10.0.0.3 | | VIP |
10.0.0.4 | 172.16.1.4 | lb4 |
10.0.0.5 | 172.16.1.5 | lb01 |
10.0.0.6 | 172.16.1.6 | lb02 |
10.0.0.7 | 172.16.1.7 | web01 |
10.0.0.8 | 172.16.1.8 | web02 |
10.0.0.9 | 172.16.1.9 | web03 |
10.0.0.31 | 172.16.1.31 | nfs |
10.0.0.41 | 172.16.1.41 | backup |
10.0.0.51 | 172.16.1.51 | db01 |
10.0.0.52 | 172.16.1.52 | db02 |
10.0.0.53 | 172.16.1.53 | db03 |
10.0.0.61 | 172.16.1.61 | m01 |
10.0.0.71 | 172.16.1.71 | zabbix |