提交 f36f6503 作者: 王南南

增加新文件

上级 9f9be509
流水线 #38494 已取消 于阶段
in 1 分 19 秒
# 运维统一规范
**整理人**|**版本**|**修订时间**|**参与人**
:----|:----|:----|:---
王南南|1.0|2018/12/18|蔡东坡,崔宇峰,王南南
王南南|1.1|2019/6/5|王南南
---
## 目录
- [一、服务器配置规范](#服务器配置规范)
- [二、项目相关规范](#项目相关规范)
- [三、部署规范](#部署规范)
- [四、其他规范](#其他配置规范)
---
### 服务器配置规范
1. **新服务器购买首次配置规范**
* 端口修改:修改ssh端口统一为2222
* 创建以姓名简称的用户名,禁止root用户远程登录
* 额外磁盘挂载至 /qj 目录下
* 保证服务器最小化,不在服务器上安装不必要的软件
* 所有运维用的密码必须9位以上,并且必须包括(字母+数字+特殊字符尽量避免使用@符号)
* 云服务的安全组设置尽量最小化,禁止开放项目端口,如需测试开启,完成之后立即关闭,如需在安全组永久开放某个端口,请在群里申请并写明理由!安全组授权的ip地址必须为特定ip,禁止0.0.0.0/0
2. #### **文件存储规范**
* 所有的容器映射的目录为/qj/`$ServerName` (ServerName带指具体服务名称)
* 脚本存放路径/qj/script
* 脚本名称命名要有意义,见名知其意,多个单词之间用_(下划线)链接
脚本名称格式:`动词`\_`谓词`的形式展现 如:`create_finance_1.7`
* 线上所有的文件不能直接删除,清理文件放置到/qj/rmback文件中,至少保存7天以上才能真正删除 ,如果该文件没有手动创建
3. **软件安装规范**
* 多个服务器之间安装位置要统一,如用安装工具安装放置默认路径,编译安装放置到/usr/local路径下
详情请见:[公司常用软件安装文档](http://git.allhome.com.cn/devops/issues/blob/master/%E8%BF%90%E7%BB%B4%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AE%E6%96%87%E6%A1%A3/%E5%85%AC%E5%8F%B8%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6%E5%AE%89%E8%A3%85%E6%96%87%E6%A1%A3.md)
* 没有特殊要求多个服务器相同软件的版本要统一
* 没有特殊要求尽量避免编译安装软件,尽可能使用安装工具安装
4. **日常操作规范**
` - 对重要文件进行操作的时候,提前做好备份,保证出现问题时可以进行回滚 (重点)`
` - 线上任何服务操作,一定一定做好备份,确保数据不能丢失,以及回滚策略,了解涉及到的相关人员,充分了解可能出现的问题,确保所有相关人员在场的情况下方可操作`
- 对线上数据库每天进行远程备份,备份到站内187服务器。
- `/qj/script`中的内容必须使用gitlab代码管理器进行管理,与git服务器中的脚步保持同步
[脚本上传路径:](http://git.allhome.com.cn/management/devops/issues/tree/master/script%E8%84%9A%E6%9C%AC)
- 所有的安装配置操作都要以makdown文件记录,推送到git相应目录下
[配置类文档路径:](http://git.allhome.com.cn/management/devops/issues/tree/master/%E8%BF%90%E7%BB%B4%E6%9C%8D%E5%8A%A1%E9%85%8D%E7%BD%AE%E6%96%87%E6%A1%A3)
[服务器信息记录:](http://git.allhome.com.cn/management/devops/issues/tree/master/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%BF%A1%E6%81%AF%E6%96%87%E6%A1%A3)
[运维软件包路径:](https://git.allhome.com.cn/management/devops/issues/tree/master/%E8%BF%90%E7%BB%B4%E5%B8%B8%E7%94%A8%E8%BD%AF%E4%BB%B6%E5%8C%85)
[**<p align="left">>>返回目录<<</p>**](#目录)
### 项目相关规范
1. **端口规范**
**作用域**|**端口范围**
:--------|:------
前端项目|7000-7999
后端项目|8000-8999(避免使用特殊端口如8080)
特殊项目端口|eureka:4025,4026
其他服务(如redis固定端口6379)|不许用原服务端口
说明|1. 前端后端同一个项目的端口尽可能一致,例如活动助手前端项目7001,活动助手后端端口定义为8001 2. 会员账号里面的安全组端口最小化开放原则即能不开的端口就不开.以内网端口为主
2. **容器名称规范**
**容器类型**|**命名规则**
:--------|:------
项目 |field_project_language (field:领域,project项目名,language:编程语言)
服务类(例如nginx)|见名知义,如果有 serverName_version_fuction 举例mysql_5.7_allmaster
3. **容器版本**
* 开发进度版本
4. **项目整理**
* 新增上线项目必须添加到adminSet项目管理中
### 部署规范
1. **分支对应环境**
* dev 分支发对应本地200环境,开发合并本地分支到dev分支自动部署
* release 分支发布的项目对应这联通预生产服务器,开发自测没问题,开发发起合并请求,由运维人员合并dev到release的分支,发布预上线环境
* master 分支发布的项目对应着生产服务器,运维人员根据测试人员的发起合并请求进行合并发布
线上发布条件:
1. 由测试发起更新线上请求,请求描述中包含修改bug\完成的功能,测试结果(通过测试)
2. 修复的bug测试环境无法测试,请求直接发布线上
* (dev|release|master)_function 如同一项目需要部署不同版本(function 名称为全英文小写,并简明之一例如'Unified_login')
* 所有临时分支(指运维用到的发布分支,在不需要之后需要及时清理,保证分支的整洁)
* 所有的后端项目必须在release分支添加单元测试,不写单元测试的项目不进行发布
2. **容器启动规范**
* 每个服务启动时,充分了解其端口意义,做好端口映射,为以后做扩容做准备
* 启动添加--restart=always 选项.保证服务器重启容器可以自动重启
* 将数据目录和配置文件的目录映射本地磁盘的相应位置(见 [文件存储规范](#文件存储规范),保证数据安全以及方便日后维护
* Dockerfile 脚本版本基础镜像版本必须是提供的统一的镜像[镜像详细信息](https://git.allhome.com.cn/management/devops/issues/blob/master/script%E8%84%9A%E6%9C%AC/Dockerfile.md)
* gitlab.yml配置文件推送镜像必须使用内网
* nginx配置文件统一命名:领域名称\_项目名\_语言.conf (重构项目:r领域名称\_项目名\_语言.conf)
### 其他配置规范
1. **oss存储bucket创建规范**
* 命名规则:env-type (环境-存储文件类型)
* 除财务项目外,所有项目同一环境的相同类型文件在同一个bucket里,在bucket里创建以项目名命名文件对项目进行区分
文件名及子目录由运维这边统一创建
**buket名称**|**说明**
----------------|-------------
qjdev-pred-images|开发以及预生产环境图片bucket
qjprod-images |生产环境图片bucket
qjdev-pred-video |开发以及预生产环境视频bucket
qjprod-video |生产环境视频bucket
qjdev-pred-voice |开发以及预生产环境音频bucket
qjprod-voice |生产环境音频bucket (沃云上qjvoice,不要删除,供千家电话使用)
finance-images-dev_pred|财务环境图片bucket
finance-images-prod |财务生产环境图片bucket
2. **二级域名命名规范**
* 线上环境域名:allhome.com.cn
* 命名规范:项目名简称(英文小写,简明知意)
* 预生产环境的名称在正式环境中域名前添加d.例如 生产环境活动助手meeting.allhome.com.cn ,预生产生产环境dmeeting.allhome.com.cn
* 前后端区分,在按照项目名分配域名的基础上后端项目添加back加以区分,例如活动助手的前端名称meeting.allhome.com.cn ,后端的域名为meetingback.allhome.com.cn
[**<p align="left">>>返回目录<<</p>**](#目录)
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论