目录
2.1 版本分配与选择
2.1.1 版本分类
说明:
- 1)Mainline version:nginx主力版本,为开发版
- 2)Stable version:稳定版,在实际生产过程中选择此版本进行安装
- 3)Legacy version:历史版本
备注:通过大量版本看出,偶数是稳定版,基数是开发版。
2.2 基础环境准备
2.2.1 系统配置
- 系统版本:centos7.3
- 内核:uname -r
- 资源:2核2G
- 磁盘:系统30G,数据盘50G
2.2.2 主机环境背景
2.3 系统初始化
2.3.1 dns配置
说明:支持上网,支持域名解析
配置文件:/etc/resolv.conf
常用dns服务:
处理:
echo 'nameserver 114.114.114.114' > /etc/resolv.conf
2.3.2 yum源配置
说明:yum已不支持在centos6上使用,只有centos7上使用,用于安装各种插件,依赖环境
配置:/etc/yum.repos.d/CentOS-Base.repo
处理:
yum -y install vim openssh openssh-devel openssl openssl-devel
yum -y gcc wget lrzsz telnet openssh-clients rsync unzip mlocate tcpdump
yum -y iotop sysstat ntpdate gcc-c++ strace bc lsof
2.3.3 安全设置selinux与防火墙
说明:
配置: /etc/sysconfig/selinux
处理:
sed -i 's/^SELINUX=enforcing$/SELINUX=disabled/' /etc/sysconfig/selinux
chkconfig iptables off
/etc/init.d/iptables stop
systemctl stop firewalld.service
systemctl disable firewalld.service
2.3.4 文件描述符限制
说明:linux系统一切皆文件,访问任何内容都是文件,需要对打开文件数做限制,防止过度访问文件造成IO拉高,同时要扩大默认文件限制数,默认是1024,远远不够系统服务使用。
部署使用nginx服务,并发都是以‘万’为单位的。
配置:/etc/security/limits.conf 和 /etc/security/limits.d/90-nproc.conf
处理:
echo "* hard nofile 204800" >> /etc/security/limits.conf
echo "* soft nofile 204800" >> /etc/security/limits.conf
sed -i 's/1024/10240/' /etc/security/limits.d/90-nproc.conf
2.3.5 格式化与路径
说明:格式化输出,写入,默认是tab8个空格,不利于代码书写
配置:/root/.vimrc
处理:
/bin/echo "set tabstop=4" >>/root/.vimrc
/bin/echo "set expandtab" >>/root/.vimrc
/bin/echo "set syntax=on" >>/root/.vimrc
2.3.6 内核参数基本设置
说明:针对tcp层进行优化,连接控制,赞时不需要一对一理解。
配置:/etc/sysctl.conf
处理:
echo '
net.ipv4.tcp_max_syn_backlog = 102400
net.ipv4.tcp_synack_retries = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_fin_timeout = 1
net.ipv4.tcp_keepalive_time = 60
net.ipv4.tcp_max_orphans = 262144
net.ipv4.tcp_mem = 4194304 6291456 8388608
net.ipv4.tcp_rmem = 4096 87380 16777216
net.ipv4.tcp_wmem = 4096 65535 16777216
net.ipv4.tcp_no_metrics_save = 1
net.ipv4.tcp_tw_recycle = 0
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_timestamps = 1
net.ipv4.tcp_retrans_collapse = 0
net.ipv4.tcp_window_scaling = 1
net.ipv4.tcp_max_tw_buckets = 20000
net.ipv4.ip_local_port_range = 1024 65535
net.nf_conntrack_max = 10485760
net.netfilter.nf_conntrack_max = 10485760 net.netfilter.nf_conntrack_tcp_timeout_established = 60 net.netfilter.nf_conntrack_tcp_timeout_time_wait = 10 net.netfilter.nf_conntrack_tcp_timeout_close_wait = 10 net.netfilter.nf_conntrack_tcp_timeout_fin_wait = 10
net.core.rmem_default = 1048576
net.core.netdev_max_backlog = 102400
net.core.rmem_max = 16777216
net.core.wmem_default = 1048576
net.core.optmem_max = 102400
net.core.wmem_max = 16777216
net.core.somaxconn = 65535
fs.file-max = 5242880
vm.swappiness = 1' >> /etc/sysctl.conf sysctl -p
2.3 环境整理
- 系统卫生环境
- 系统 版本 地址 vmware centos7.6
- 机器卫生环境
- IP地址 作用 部署服务
- 服务卫生环境
- 服务名称 版本 地址
- nginx
- php
- mysql
- yearning
- wordpress