服务器统一配置规范:
目的:用于服务器自动化运维、发布、管理和配置作为参考配置标准
服务器主机名称
-
服务器配置主机名称规则:主机名称主要由以下几部分组成,并尽量与现有的保持一致;
[环境]-区域-项目-[功能]-服务-n (线上机器默认为空,其他的为环境名称,如test,gray ,项目和功能必须存在一个)
例如: 主机名为:A-worker-01 (环境段没有表示为生产环境,A:广州三区 , worker功能,01表示为第1台) 主机名为:test-B-worker-01 (test:测试环境,B:广州四区 ,worker功能,01表示为第1台) 主机名为:A-service-01 (A1:广州三区 ,service:服务(应用)名称, worker功能,01表示为第1台) 主机名为:A-service-nginx-01 (A1:广州三区 ,service服务名称, nginx功能, 01表示为第1台)
现有的服务器名称 | 更改后的服务器名称 | 备注 |
---|---|---|
lb-nginx-1 | A-Global-LB-01 | 负载均衡nginx |
A1-web-nginx-1 | A-WEB-LB-01 | web应用nginx |
A1-station-worker-1 | A-WEB-Worker-01 | web应用worker |
A1-ma-bshop-worker-1 | A-WEB-Worker-02 | web应用worker |
A1-service-lb | A-Service-LB-01 | 微服务器nginx |
A-Service-LB-02 | ||
A1-service-worker-1 | A-Service-Worker-01 | 微服务worker |
A1-web-worker-5 | A-Service-Worker-01 | 微服务worker |
A1-task-worker | A-Service-Task-01 | 异步worker |
A1-task-worker | A-Service-Rabbitmq-01 | 中间件 |
home | A-Home-WEB-01 | 官网 |
code | A-Gitlab-SVR-01 | gitlab机器 |
服务器分组
-
分组规则: 此规则可以从主机名称上来快速识别区分
-
按服务器所在腾讯云的区域进行划分:分为A1和A2区
-
按服务器的安装的应用:可分为Nginx、Worker、DB、中间件、公共、运维
-
按服务器所的项目区分: 如bshop、station
-
按服务器的环境区分: 如测试和生产环境
- 按服务器的功能区分: 如LB、WEB、SVC
-
-
安全分组: 此分组主要针对腾讯云的安全组进行配置
群组名称 | 对外 | 对内 |
---|---|---|
nginx 组 | 开放80、443口,其他的都关闭 | 对内产生环境的所有的机器全部开放,对内部测试环境关闭 |
worker组 | 对外全部关闭 | 对内产生环境的所有的机器全部开放,对内部测试环境关闭 |
DB 组 | 对外全部关闭 | 对内产生环境的所有的机器全部开放,对内部测试环境关闭 |
中间件组 | 对外全部关闭,对内产生环境的所有的机器全部开放 | 对内部测试环境关闭 |
公 共 组 | 对外开放公共端口,其他的都关闭 | 对内产生环境的所有的机器全部开放,对内部测试环境关闭 |
运维 组 | 对外开放特定端口,其他都关闭 | 对内生产、测试环境都开放 |
- 监控分组: 服务器创建并分配之后,必须加入到监控,原则上没有监控的服务器和应用不允许加入到生产环境
磁盘管理
-
分区:默认情况下,单块数据盘只分一个区(除非特殊情况下)
-
分区格式: 数据磁盘使用分区格式:ext4(除非特殊情况下使用ext3或xfs格式)
-
挂载选项(/etc/fstab文件) /dev/vdb1 /dir ext4 defaults 0 0 (挂载vdb1磁盘,不记录访问时间使用noatime选项)
-
挂载目录
-
如果是单块数据盘,挂载目录为/data,若数据量增加需要额外添加磁盘,则直接挂载到data目录下的子目录
-
如果是多块数据盘,挂载目录为/data/[磁盘分区名称] (如/data/vdb1,/data/vdc1)
-
目录管理
-
程序安装目录:安装目录依赖于安装方式,此目录只保存程序的安装文件,其他文件请指定到其他路径
-
源代码安装 源代码安装程序时,编译时指定安装目录,目录位置为: /usr/local/程序名称
-
二进制安装 程序解压到特定的程序安装目录:(/usr/local/程序名称),解压之后会带版本号 使用软链接的方式进行创建将带版本号的目录链接到程序名称文件夹
-
deb、whl、pip 使用程序默认指定的安装目录;
-
-
数据存储目录:主要用于存储数据使用
- 数据目录结构为:/data/程序名/data/ (如/data/mysql/data/)
-
日志目录
-
默认情况下日志目录位置为: /data/程序名/logs/
-
磁盘IO异常或数据文件太大,则将日志文件改为新建磁盘或程序安装目录下的logs
-
-
脚本目录
-
默认系统脚本目录为: /data/script/xx.py
-
如果是应用程序脚本则为: /data/script/程序名/xx.sh
-
-
其他目录
-
应用软件包目录: /data/resource/
-
数据、配置文件备份目录: /data/bak/日期/程序或数据
-
网络配置
-
后续网络的配置全部使用私有网络
-
私有网络、基础网络的区别:
基础网络:基于用户的资源池,由腾讯云分配地址池、无需规划网络,操作简单,无法自定制网络;有在购买时部分机器规格不支持,新注册的账号己不支持此网络模型;
私有网络:单独的建立一个逻辑资源池,用户可以自定义网络(网段)、IP地址池和路由策略、给机器分配指定IP地址、可以自定义ACL、支持跨区域互通,比较灵活
-
-
现的机器继续使用基础网络,到期之后切换到私有网络
-
测试环境网段将重新规划,目的是为了将生产和测试机器逻辑隔离,避免测试区的机器直接连接生产机
-
运维组的机器不会隔离出生产和测试;