新服务器上线优化准备工作

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/zy15112342449/article/details/79442796
安装:
1:挂载数据盘
 
2:修改主机名称
        1) hostname zhangyao  2) vi    /etc/sysconfig/network   3) vi  /etc/hosts  reboot 生效
 
3:yum install wget
 
4: 系统内核更新  
      清空yum缓存
       yum clean all       
       生存缓存 
       yum makecache              
      开始更新系统以及内核
      yum upgrade     
 
      安装安全组件
      yum install openssl
 
 
5:配置系统时间同步
 
#每6个小时同步一次(可以根据需要做频率调整)
     echo '* */6 * * * /usr/sbin/ntpdate  time.windows.com  >/dev/null 2 >&1' >>/var/spool/cron/root    
#每12个小时同步一次(可以根据需要做频率调整)
      echo '* */12 * * * /usr/sbin/ntpdate  time.nist.gov  >/dev/null 2>&1' >>/var/spool/cron/root
 
设置完成后:直接关闭掉时间同步服务 service ntpd stop
 
6:创建普通用户
       zhangyao   pw:  xxx ( useradd -d /opt/yifan -m zhangyao   )( # useradd –d /usr/sam -m sam
此命令创建了一个用户sam,
其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录) )修改密码(passwd zhangyao
       mongodb    pw:  xxx   (用于安装和操作mongodb数据库)  mysql
 
7:对普通用户进行sudo授权     
    使用  visudo     
     找到99行  在下面一行  添加    zhangyao ALL=(ALL) ALL  
 
8:修改ssh远程登录端口和屏蔽root远程登录
 
#备份SSH配置 cp /etc/ssh/sshd_config sshd_config_bak
#修改SSH安全配置 vi /etc/ssh/sshd_config
#SSH链接默认端口 port  53123  (原文中是#Port 22,在这一行上面添加即可) 
#禁止root账号登陆 PermitRootLogin no
#禁止空密码 PermitEmptyPasswords no
#不使用DNS UseDNS no
   
重新载入SSH配置 /etc/init.d/sshd reload    
使用netstat  -lnt 查看 53123 端口
使用    lsof -i tcp:53123  反查进程(需要root才可以哦)
 
9:精简开机自启动服务
     可以使用ntsysv 来查看启动的服务
     只保留:crond,network,syslog,sshd  用空格选中,使用tab键 选中 ok,回车觑定
 
 
10:删除不必要的系统用户和群组
 
#删除不必要的用户
userdel adm
userdel lp
userdel sync
userdel shutdown
userdel halt
#userdel news #没有
userdel uucp
userdel operator
userdel games
userdel gopher
userdel ftp
#删除不必要的群组
groupdel adm
groupdel lp
#groupdel news   #没有
groupdel uucp  #没有
groupdel games   #没有
groupdel dip
groupdel pppusers  #没有
 
 
11:清理登陆的时候显示的系统及内核版本
#查看登陆信息
cat /etc/redhat-release
cat /etc/issue
#清理登陆信息
echo >/etc/redhat-release
echo >/etc/issue
 
 
12:设置系统字符集
 
第一种:vi /etc/sysconfig/i18n
如果想用中文提示:LANG=”zh_CN.UTF-8″ 如果想用英文提示:LANG=”en_US.UTF-8″ 如果临时切换也可以 LANG=zh_CN.UTF-8
第二种:使用sed快速替换 #替换成英文
sed -i 's#LANG="zh_CN.*"#LANG="en_US.UTF-8"#' /etc/sysconfig/i18n
#替换成中文
sed -i 's#LANG="en_US.*"#LANG="zh_CN.UTF-8"#' /etc/sysconfig/i18n
#替换成UTF-8中文
sed -i 's#LANG="zh_CN.*"#LANG="zh_CN.UTF-8"#' /etc/sysconfig/i18n
 
 
13:调整文件描述符大小
         #查看文件描述符大小
         ulimit -n 
    
 
第一种:#这里参考的是阿里云主机默认设置。
vi /etc/security/limits.conf 
* soft nproc 65535 
* hard nproc 65535 
* soft nofile 65535
* hard nofile 65535 
 
第二种:echo '* - nofile 65535' >> /etc/security/limits.conf
 
 
第三种:把ulimit -SHn 65535命令加入到/etc/rc.local,然后每次重启生效 追加命令到rc.local配置文件里面
 
cat >>/etc/rc.local<<EOF
#open files
ulimit -HSn 65535
#stack size ulimit -s 65535 EOF
 
 
第四种:如果不修改limits配置文件,直接立即生效,但重启后又恢复之前的默认。 ulimit -SHn 65535
 
附加:(同第19点)
vi  /etc/security/limits.d/90-nproc.conf  
 
*          soft    nproc     1024
改为:
*          soft    nproc     64000 (或是更大的值)
 
14 关闭重启ctl-alt-delete组合键
 
vi /etc/init/control-alt-delete.conf
#注释掉
#exec /sbin/shutdown -r now "Control-Alt-Deletepressed"
 
15 锁定关键文件系统(禁止非授权用户获得权限)如果要创建其它用户先不改
chattr +i /etc/passwd
chattr +i /etc/inittab
chattr +i /etc/group
chattr +i /etc/shadow
chattr +i /etc/gshadow
 
16  设置一些全局变量
#设置自动退出终端,防止非法关闭ssh客户端造成登录进程过多,可以设置大一些,单位为秒
echo "TMOUT=3600">> /etc/profile
#历史命令记录数量设置为100条
sed -i "s/HISTSIZE=1000/HISTSIZE=100/" /etc/profile
#立即生效
source /etc/profile
 
17 tcp内核参数优化
 
vi /etc/sysctl.conf
 
在原有文件的基础上增加:
net.core.netdev_max_backlog = 32768
 
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 = 2
net.ipv4.tcp_syn_retries = 2
net.ipv4.tcp_tw_recycle = 1
#net.ipv4.tcp_tw_len = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_max_orphans = 3276800
#net.ipv4.tcp_fin_timeout = 30
#net.ipv4.tcp_keepalive_time = 120
net.ipv4.ip_local_port_range = 1024 65535
 
修改:
net.ipv4.tcp_max_syn_backlog = 65536
 
屏蔽:
#net.bridge.bridge-nf-call-ip6tables = 0
#net.bridge.bridge-nf-call-iptables = 0
#net.bridge.bridge-nf-call-arptables = 0
 
//待补充
 
18 安装mongodb数据库需要增加
 
 
创建文件:/etc/init.d/disable-transparent-hugepages
#!/bin/sh
### BEGIN INIT INFO
# Provides:          disable-transparent-hugepages
# Required-Start:    $local_fs
# Required-Stop:
# X-Start-Before:    mongod mongodb-mms-automation-agent
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: Disable Linux transparent huge pages
# Description:       Disable Linux transparent huge pages, to improve
#                    database performance.
### END INIT INFO
 
case   $1  in
  start )
     if   [  -d /sys/kernel/mm/transparent_hugepage  ] then
       thp_path = /sys/kernel/mm/transparent_hugepage
     elif   [  -d /sys/kernel/mm/redhat_transparent_hugepage  ] then
       thp_path = /sys/kernel/mm/redhat_transparent_hugepage
     else
       return  0
     fi
 
     echo   'never'  >  ${ thp_path } /enabled
     echo   'never'  >  ${ thp_path } /defrag
 
     unset  thp_path
    ;;
esac
sudo chmod 755 /etc/init.d/disable-transparent-hugepages
 
sudo chkconfig --add disable-transparent-hugepages
 
检查:
cat /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/defrag
 
always madvise [never]
 
以上解决 transparent-hugepages问题
 
 
19 安装mongodb数据库需要处理的问题
vi  /etc/security/limits.d/90-nproc.conf  
*          soft    nproc     1024
改为:
*          soft    nproc     64000 (或是更大的值)
 
//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====//=====
 
安装jre:
 
  1. 从Oracle网站下载 JRE (1.8.0的最新版本)
  2. sftp传递到服务器的/usr/lcoal目录下面   
  3. 使用tar -xvf 命令解压缩
  4. ln -s  jdk1.8.0_xx   jdk  建立软连接(类似快捷方式)
  5. 在/etc/profile 中配置JAVA_PATH 并将java的bin目录加入到系统PATH路径中
 
tomcat安装与配置:
 
tomcat 需要启用apr:
 
所有tomcat全部关闭ajp端口(默认为8009)

猜你喜欢

转载自blog.csdn.net/zy15112342449/article/details/79442796