智慧社区集成方案设计
2017-11-07
整套平台采用Nginx的proxy_pass和DNS解析作为核心,即反向代理功能与域名解析功能,整体网络拓扑如图1所示,其中服务器集群分布式部署在各县区机房,防火墙与DNS服务统一放置在市级机房。
单位网内拥有多台互为备份的服务器,当公网用户访问网内设备时,通过两台暴露在公网环境的服务器与防火墙互备组合,利用反向代理提供负载均衡服务。网内用户访问公网设备时,使用另外两台部署在公网NAT后面的服务器与防火墙互备组合,除了提供反向代理外,还设计了缓存机制,加快访问速度。
除了上述公网、内网互访机制,我们还部署了自己的DNS服务,通过定向解析的方式加速服务,即:我们平台的全部域名,在公网上正常解析公网地址;内网用户使用我们自己的DNS服务,访问其他域名时正常转发公网地址,访问我们这些域名时直接解析内网地址。

图1 网络结构拓扑图
Nginx配置
1.Linux系统部署
平台采用Centos6.8系统,使用常规安装的方法即可。两块系统磁盘使用RAID1部署,剩下的存储磁盘使用RAID5部署;磁盘使用GPT分区方式,勿用MBR分区;内存为96GB,CPU使用E5-2650v3两颗。
注意:centos在自动分区时,会自动分配/,/boot、/boot/efi三个数百兆字节的分区和swap分区,然后剩下的全部磁盘空间自动分配给/home。
本平台具有缓存功能,缓存文件存储在/usr/local/nginx/proxy_cache/中,因此可以简单的将/home并入根目录,或者修改分区方式,或者直接修改本文提供的源代码。

表1 分区格式表
笔者分区格式如表1,供参考([root@LeniyTsan ~]#df-h,RAID5的大硬盘分区用来保存Nginx缓存)。
2.服务搭建
Centos服务器本身仓库中有编译好的nginx,但是部署本平台需要定制化,因此需要从源码开始调试。……
