运维规范

Author Avatar
Moon 11月 02, 2017

运维规范

机器命名规范

机器名采用如下规则命名:

[地域简拼]-[产品名简写]-[环境][编号].[地域简拼][编号]

例如:qd-venus-prod01.qd01

表示:青岛-材料中心(代号Venus)-生产环境01号.青岛01号

这样,同一区域有多少机器,一目了然;同一产品的同一环境有多少台机器,也一目了然

数据库命名规范

数据库名采用如下规则命名(不分库时,可以不加编号):

[产品名简写]-[环境][编号][产品名简写]-[环境][编号]-[主从][编号]

例如:venus-prod01venus-prod01-slave02

部署规范

Linux环境

初次购买完Linux服务器(以CentOS为例),先运行更新命令:

1
# yum update -y

将系统更新至最新版再部署(必要时候需重启服务器)

默认语言

设置系统默认语言:

1
# vi /etc/environment


1
2
LANG=en_US.UTF-8
LC_ALL=C

依赖软件包安装

尽量使用yum install命令来安装。

运行权限

创建work账号:

1
# adduser work

所有程序均运行在work权限下,特别是nginx或者httpd进程!!!

Web程序部署

使用work账号创建目录

1
$ mkdir ~/www

Web项目按项目名称依次部署在www目录下,如:~/www/venus

Log记录

使用work账号创建目录

1
$ mkdir ~/var/logs

Web项目的log按项目名称依次写入在logs目录下,如:~/var/logs/venus

代码备份

使用work账号创建目录

1
$ mkdir ~/opt/backups

项目代码按日期备份在backups目录下,如:~/opt/backups/20171102/venus-201711022000

代码部署

以Git为例:

  1. 在git-server.thinkerx.com系统里,创建deploy账号
  2. deploy账号分配代码权限,权限为只读
  3. 通过TAG来上线

生产环境注意事项

  1. prod环境机器、数据库必须跟dev、test环境分开,用独立的机器、数据库
  2. prod环境数据库,必须修改默认端口(建议8000~9999端口)
  3. prod环境数据库,必须只能内网访问,并配置IP白名单
  4. prod环境数据库,必须提供rw(读写)和ro(只读),两套账号,命名建议[产品名]-[读写],如:venus-ro
  5. prod环境机器必须配置端口访问规则,如提供内部访问,必须配置IP白名单,并关闭外网网卡(建议8000~9999端口);如提供公网访问,必须只能提供有限端口,且不得使用默认端口(建议10000以上端口,80端口除外)