服务器管理规范
一 配置管理规范 所有设备信息必须录入配置管理系统,在配置系统中能随时查询到现网业务的部署分布情况 具体信息待配置管理系统建立后再补充 主机命名规范 网卡vlan规范 安全策略命名规范 监控/部署/插件/模块命名规范 版本命名规范 二 文件系统管理规范
文件布局
. 系统服务及配置文件优先采用LSF标准,其余文件可采用BSD标准[注1],例如:
-- vim默认配置 /etc/vimrc -- shell环境配置 /etc/bash.bashrc -- 环境变量配置 /etc/profile.d/ -- 授权sudo /etc/sudoers.d/ |
用户脚本
-- 自定义脚本,函数 /opt/sa/shell/ -- cron脚本 /opt/sa/cron/ -- 防火墙脚本 /opt/sa/firwall/ |
/data分区
-- web目录 /data/www -- 备份目录 /data/backup |
软件包
-- 服务安装目录 /usr/local/services/$ package -- 软件源码包目录 /usr/local/services/src -- 服务日志目录 /data/logs/$ package /logs/*.log |
文件修改
. 默认配置文件 ---- xxxx.orig
在没有任何改动的情况下以orig扩展名做一次备份并保留注释,以供参考
. 修改配置文件 ---- xxxx.$date
对当前配置文件做出修改时, 建议首先以xxxx.$date的命名方式对其做一次备份.
. 当前配置文件
建议移除相关注释及空行, 在有缩进的情况下以四个空格作为缩进,以保证阅读的清爽性.
三 软件包管理规范
3.1 包管理
. 采用自动部署工具(salt, puppet等)管理相应软件包,应避免手动直接安装。
. 只保留安全补丁升级,应避免系统库及相应服务升级。
. 建立官方仓库本地镜像及私有仓库。
3.2 包安装
. 尽量采用官方源,及稳定的三方源安装相应软件包。
. 如有必须源码编译[注1],务必遵照Debian官方打包方式进行打包[注2],以保持LSF规范及自动化管理。
. 自打包程序通过测试及审核后放入私有仓库。
注1: GCC保持默认的o2就好,不要修改CFLAG,以稳定为优先原则。
注2: 勿用checkinstall直接打包。
四 日志管理规范
4.1 系统日志
. 系统日志服务统一采用syslog-ng, 不应与rsyslogd混用
. 针对不同日志类型, 存于不同的文件. 例如
/var/log/auth.log ---- 安全日志
/var/log/kern.log ---- 内核日志
/var/log/user.log ---- 用户日志
/var/log/daemon.log ---- 守护进程日志
/var/log/misc.log ----
/var/log/cron.log ---- 计划任务日志
/var/log/syslog ---- 系统日志
/var/log/boot.log ---- 引导日志
/var/log/messages ---- 所有日志
. 系统级日志保留7天回滚, 服务级日志保留15天回滚, 并做定期检查
4.2 操作日志
. 将所有ssh操作日志记录于文件, 方便系统管理员定位具体时间点的操作, 例如:
/var/log/audit/sysop
/var/log/audit/dba
/var/log/audit/root
五 安全管理规范
5.1 .网络访问规则 业务模块类型不同策略组尽量不通,比如db类,前端类,下载类等等。(这样做的目的是尽量把权限控制死,减少黑客入口) ACL 外网策略默认入默认全关,针对访问需求开放 外网策略默认出全开 内网默认出和入均开放 不同vlan之间做绝对隔离 iptables 外网策略默认入全关,针对访问需求开放 外网策略默认出全开 内网默认出和入均开放 5.2 .程序监听端口 非特殊需求1024以下端口禁止使用,且定义为高危端口,若发现高危端口暴露公网则进行罚款警告 数据库端口和ssh进程端口严谨暴露外网 只使用内网访问的程序禁止使用0.0.0.0监听
六 DB操作规范 6.1 用户权限分级 业务账户 备份账户 管理账户 其他需求账户(主要指查询) 主从复制账户 6.2 修改db和数据前先备份,大型db变更可以先停掉slave,待变更完成后再开启。 6.3 禁止擅自修改数据,若要修改需要提交需求 6.4 db 备份必须要有异地备份,db 需要打开binlog,备份需要有slave. 6.5 不确定情况请找DBA 确认。
七 版本更新规范 7.4 版本更新checklist模板制定 每次版本更新需要针对实际操作情况根据checklist模板进行细化制定。 7.5 禁止开发登陆服务器进行更新和修改操作(特殊情况请说明) 7.6 未经测试通过或者有严重bug的版本禁止对外发布,如需要发布,需要项目PM和QA确认。 7.7 临时修改发布内容视实际情况自行评估,原则上确定的内容临时调整不接受。
八 故障处理规范 .大型故障处理 .服务器故障 .业务故障处 主要是checklist,需要包含故障现象,分析问题过程和故障处理恢复过程
九 监控规范 业务上线后必须马上加入监控,此作为上线的其他步骤同等重要 监控中必需监控指标项必须加入(之前lorin有提供文档)
十 其他变更规范 搬迁,开服,新功能上线等都属于变更范畴。 10.1 新服开放 需要提前主动搜集运营需求,进行资源的准备和规划 需要准备变更所需checklist 10.2 搬迁及升级 升级扩容预案 搬迁方案的准备 回滚方案准备 数据一致性校验 以上方案在操作前需要提交运维团队进行评审确认。