新服務器上線優化準備工作

安裝:
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)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章