linux运维标准化方案外v1 4.docx
- 文档编号:10465401
- 上传时间:2023-05-26
- 格式:DOCX
- 页数:14
- 大小:22.37KB
linux运维标准化方案外v1 4.docx
《linux运维标准化方案外v1 4.docx》由会员分享,可在线阅读,更多相关《linux运维标准化方案外v1 4.docx(14页珍藏版)》请在冰点文库上搜索。
linux运维标准化方案外v14
Linux运维标准化方案
版本号
版本日期
修改人
修改章节
修改记录
V1.0
2013.03.12
李志明
创建
V1.4
2013.07.15
李志明
修改
1内部DNS规范
1.1内部DNS简介
内部DNS用于在IDC机房提供DNS解析服务,只限于为部署在IDC内部的应用提供服务;
可为服务器的主机名、内部域名提供DNS解析;
内部域名是指应用名,具体命名规范请参考“1.2命名规范”;
如果应用需要提供对外网解析,需要申请外网域名,并在应用服务器上为应用做别名;
1.2命名规范
域名:
从域名可以确定机器用途;
数据库服务器:
pekingr1.ms.jd.local对应peking这个sqlserver数据库的只读库集群之一,解析到虚拟IP。
pekingr1-01.ms.jd.local对应到上面数据库集群中间的一台机器,解析到真实IP。
peking:
数据库名;
r:
读,代表只读库,如果是w代表可写库;r1代表有多个这样的集群,这是其中的一个集群。
ms--sqlservermy—mysqlmg-mongooc—oracle
应用服务器:
app.pop.jd.localpop部门的app这个应用,解析到虚拟IP。
1.3配置解析DNS规范流程
应用需要做对做DNS解析时,请参考相关流程。
外网DNS是指需要对外网用户(包括公司内以及普通用户)提供服务
内网DNS是只对IDC内部应用间调用提供DNS解析,不对任何用户提供解析服务。
注:
如果即需要机房内部应用间调用,也需要对用户提供服务,需要同时申请内、外网DNS。
2操作系统配置标准
2.1操作系统安装标准
应用服务器(如有变化,另行通知)
1.操作系统为CentOS6.3X86_64
2.安装的相关Packages为
a)
%packages--ignoremissing
@additional-devel
@base
@chinese-support
@client-mgmt-tools
@compat-libraries
@console-internet
@core
@debugging
@development
@dial-up
@directory-client
@ftp-server
@hardware-monitoring
@ha
@large-systems
@legacy-unix
@load-balancer
@network-file-system-client
@network-tools
@performance
@perl-runtime
@system-management-snmp
@server-platform
@server-platform-devel
@server-policy
@system-admin-tools
@ruby-runtime
libXinerama-devel
xorg-x11-proto-devel
startup-notification-devel
libgnomeui-devel
libbonobo-devel
libXau-devel
libgcrypt-devel
popt-devel
libXrandr-devel
libxslt-devel
libglade2-devel
gnutls-devel
mtools
pax
oddjob
sgpio
edac-utils
glibc-utils
gdb-gdbserver
lslk
flightrecorder
gcc-gnat
cmake
imake
compat-gcc-34
gcc-java
compat-gcc-34-g77
jpackage-utils
gcc-objc
gcc-objc++
compat-gcc-34-c++
python-docs
pptp
certmonger
pam_krb5
krb5-workstation
xferstats
edac-utils
lm_sensors
python-repoze-what-quickstart
talk-server
telnet
tcp_wrappers
nmap
sg3_utils
perl-LDAP
perl-DBD-SQLite
perl-Date-Calc
perl-suidperl
perl-Date-Manip
perl-Mozilla-LDAP
perl-Frontier-RPC
net-snmp-python
net-snmp-perl
symlinks
rrdtool
pexpect
screen
ftp
tree
2.2主机名标准
略
2.3操作系统网络标准
路由IP、配置
如果需要连接外地IDC、各分公司网络,需要运维内网组提供路由网关
时间同步
IDC机房内部配置有NTP时间服务器
时间服务器ntp.jd.local
2.4操作系统权限标准
1、所有线上Linux服务器禁使用root用户登录服务器;禁止使用任何用户跟其他机器建立ssh信任;
2、禁止使用root用户启动所有应用级程序,所有应用级程序全部使用admin普通用户程序;
2.5操作系统环境配置标准
1、Linux系统分区说明(如需要修改,请提前与运维沟通)
a)禁止在系统分区下有任何程序的运行,以及禁止数据、日志等写入系统分区
b)/20G
swap16G
/export其余所有
2、目录说明
a)/export/App应用程序部署目录
b)/export/Logs应用日志部署目录
c)/export/Data应用数据目录
d)/export/serversNginx等容器级程序部署目录
e)/export/DomainsTomcat的实例部署目录
f)/export/Shell应用启动、重启脚本
g)/export/Config应用程序配置文件存放目录
3、日志保留说明:
系统上所有形式的日志(包括程序日志、Tomcat控制台日志、Nginx日志),如无特殊说明,全部保留7天。
4、系统编码(如需要修改,请提前与运维沟通)
a)LANG=zh_CN.UTF-8
LC_CTYPE="zh_CN.UTF-8"
LC_NUMERIC="zh_CN.UTF-8"
LC_TIME="zh_CN.UTF-8"
LC_COLLATE="zh_CN.UTF-8"
LC_MONETARY="zh_CN.UTF-8"
LC_MESSAGES="zh_CN.UTF-8"
LC_PAPER="zh_CN.UTF-8"
LC_NAME="zh_CN.UTF-8"
LC_ADDRESS="zh_CN.UTF-8"
LC_TELEPHONE="zh_CN.UTF-8"
LC_MEASUREMENT="zh_CN.UTF-8"
LC_IDENTIFICATION="zh_CN.UTF-8"
5、Linux系统优化标准(如需要修改,请提前与运维沟通)
a)/etc/sysctl.conf
kernel.shmall=4294967296
net.core.somaxconn=32768
net.core.wmem_default=8388608
net.core.rmem_default=8388608
net.core.rmem_max=16777216
net.core.wmem_max=16777216
net.ipv4.tcp_timestamps=0
net.ipv4.tcp_synack_retries=1
net.ipv4.tcp_syn_retries=0
net.ipv4.tcp_tw_recycle=1
net.ipv4.tcp_tw_reuse=1
net.ipv4.tcp_mem=94500000915000000927000000
net.ipv4.tcp_max_orphans=3276800
net.ipv4.ip_local_port_range=102465535
net.ipv4.tcp_fin_timeout=10
net.ipv4.tcp_keepalive_time=100
net.ipv4.tcp_syncookies=1
net.ipv4.tcp_max_syn_backlog=8192
net.ipv4.tcp_max_tw_buckets=20000
b)ulimit
在/etc/security/limits.d目录中,添加配置
i.90-nproc.conf用于配置nproc
*softnproc204800
*hardnproc307200
ii.90-nofile.conf用于配置nofile
*softnofile102400
*hardnofile204800
iii.90-stack.conf用于配置Stack
*softstack10240
*hardstack20480
3WEB服务器标准化
3.1WEBserver配置标准
Apache已经被淘汰,运维全部默认使用Jengined,版本1.2.7稳定版;
Jengined使用的1.2.7稳定版Nginx,并加入了Tengine、openresty等特色,默认编译进了很多常用模块,以及支持Lua语言。
Jengined环境说明如下:
i.已经关闭keepalived(如果需要开启,请在项目部署文档中说明)
ii.配置说明如下:
1.Configure参数
./nginx-V
nginxversion:
JDWS/1.2.7
TLSSNIsupportenabled
configurearguments:
--prefix=/export/servers/jengined-1.2.7.1/nginx
--add-module=../ngx_devel_kit-0.2.18
--add-module=../echo-nginx-module-0.42
--add-module=../xss-nginx-module-0.03rc9
--add-module=../ngx_coolkit-0.2rc1
--add-module=../set-misc-nginx-module-0.22rc8--add-module=../form-input-nginx-module-0.07--add-module=../encrypted-session-nginx-module-0.02--add-module=../srcache-nginx-module-0.19
--add-module=../ngx_lua-0.7.16
--add-module=../headers-more-nginx-module-0.19--add-module=../array-var-nginx-module-0.03rc1--add-module=../memc-nginx-module-0.13rc3
--add-module=../redis2-nginx-module-0.09
--add-module=../redis-nginx-module-0.3.6
--add-module=../auth-request-nginx-module-0.2--add-module=../rds-json-nginx-module-0.12rc10--add-module=../rds-csv-nginx-module-0.05rc2--add-module=../session-sticky-tengine-module-1.4.4--add-module=../murmurhash-nginx-upstream-module-0.01--add-module=../user_agent-tengine-module-1.4.4--add-module=../upstream-check-tengine-module-1.4.4--add-module=../chunkin-nginx-module-0.23rc4
--with-ld-opt=-Wl,-rpath,/usr/local//lib
--with-http_ssl_module
2.默认的配置:
a)
server_names_hash_bucket_size128;
client_header_buffer_size32k;
large_client_header_buffers432k;
client_max_body_size300m;
sendfileon;
tcp_nopushon;
keepalive_timeout0;
tcp_nodelayon;
client_body_buffer_size512k;
fastcgi_intercept_errorson;
proxy_connect_timeout90;
proxy_read_timeout180;
proxy_send_timeout180;
proxy_buffer_size256k;
proxy_buffers4256k;
proxy_busy_buffers_size256k;
proxy_temp_file_write_size256k;
server_name_in_redirectoff;
proxy_hide_headerX-Powered-By;
b)
upstreamtomcat_xxx{
server127.0.0.1:
8001weight=10max_fails=2fail_timeout=30s;
}
location/{
proxy_next_upstreamhttp_500http_502http_503http_504\
errortimeoutinvalid_header;
proxy_set_headerHost$host;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
proxy_passhttp:
//tomcat_xxx;
expires1d;
}
c)
Jengined(Nginx)禁止直接通过IP进行访问。
3.2负载均衡标准
Jengined(Nginx)会做为反向代理,将请求按比例转发给后面的Tomcat
为了合理负载,禁止各项目在服务器本地写session。
如果需要写session,建议将Session写在Redis或其它缓存系统中。
3.3以下软件禁止研发同事安装、使用
Puppet
Rsync
除统一监控以外的其它的监控客户端
除统一日志以外的其它的日志收集客户端
所有收集线上服务器信息、网络设备信息以及网络拓扑的客户端
所有用于性能测试、功能测试的软件
所有有安全漏洞的软件、程序
4JAVA应用标准化
3.1权限说明
所有应用都以admin用户启动(如果有特殊要求,请提前与运维沟通)。
admin用户为受限权限,没有在应用部署目录(/export/App)写权限,只有/export/Data、/export/Logs写权限
3.2目录使用说明
应用程序部署路径(xxx.jd.local为项目名)
i.应用部署路径为:
/export/App/xxx.jd.local,为只读权限
ii.禁止在应用程序部署路径中写入任何数据,数据产生应写入/export/Data/xxx.jd.local
c)local_policy.jar和US_export_policy.jar已经替换
d)日志路径(禁止写入隐藏文件)
/export/Logs/xxx.jd.local
日志的格式为:
LogName.log.Year-Month-Day(例:
UserData.log.2013-02-28)
e)数据路径(禁止写入隐藏文件)
/export/Data/xxx.jd.local
3.3单个Tomcat实例控制脚本
命名tomcat_ctrl.sh
接收参数:
startstop
用途:
用于控制单个tomcat实例的启动与停止,并确保操作成功。
部署路径:
tomcat实例的bin目录下。
5配置文件敏感信息分离
1、标准说明
a)将数据库等敏感信息与普通配置信息分离,普通配置文件通过自动部署系统修改;数据库等敏感信息的配置由运维修改
b)发布包内包含多台机器用到的所有配置文件,应用程序根据机器载入所需配置。
2、用途与效果
a)研发人员在上线之前完成普通配置文件的修改,减少上线时由于配置文件修改导致的耗时。
3、具体目录结构
数据库:
/export/Config/xxx.jd.local/DB.conf
敏感信息:
/export/Config/xxx.jd.local/Info.conf
6预发布机制
(暂未实行)
1、标准说明
a)预发布机器的环境与线上环境完全一致。
b)允许研发人员在预发布机器上,通过自动化部署系统,在任何时间内,进行有限次数的上线、业务检查、调试与回滚。
2、用途与效果
a)研发人员在正式上线之前,完成业务检查与调试工作。
b)预发布测试通过,方可触发正式上线。
c)正式上线时不再进行业务检查与调试工作,根据匹配错误日志、测试URL判断上线是否成功,以大幅度减少上线耗时。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- linux运维标准化方案外v1 linux 标准化 方案 v1
![提示](https://static.bingdoc.com/images/bang_tan.gif)