1.镜像源下载centos镜像,刻盘装机
2.配置系统的ip以及dns服务器等
2.1 在/etc/sysconfig/network-scripts/ 下找到网口配置文件,如 ifcfg-enp2s0
修改里面ip等内容,例如:
原因:最为常见的原因是因为server的sshd会去DNS查找访问client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间。
解决方法:
1)修改 /etc/ssh/sshd_config文件中UseDNS的值:
UseDNS no #修改UseDNS yes为no
2)重启SSHD service sshd restart
3.因为centos7.2默认3.10内核,所以装机后又需要配置镜像源,然后升级内核等
3.1 备份原有/etc/yum.repos.d/下面的*.repo文件,新建添加zet公司镜像配置文件
例如新建lanrepofile.repo文件,添加如下内容:
yum update
3.3 修改内核启动顺序(可选,有的重启服务器后自动选择最新内核)
查看默认启动顺序:
$awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (3.18.25-19.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-55c87b7a3ff540ff8e19c1c476545cf5) 7 (Core)
默认启动的顺序是从0开始,但我们新内核是从头插入(目前位置在0,而3.10的是在1),所以需要选择0。
如果想生效最新的内核,需要下面命令:
$grub2-set-default 0
3.4删除旧的内核
列出内核
$rpm -q kernel
删除旧的内核套件
$rpm -e kernel-2.6.35.6-45.fc14.i686
删除MariaDB(可选,默认最小版不安装)
4.docker容器安装(可选,未使用)
4.1 /etc/yum.repos.d/ 新建docker.repo文件
内如如下:
[dockerrepo]
name=Docker Repository
baseurl=http://
enabled=1
gpgcheck=1
gpgkey=http:
4.2 安装docker
sudo yum makecache
sudo yum install docker-engine
5.重要,需要修改打开文件数
ulimit??在Linux下面部署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,
其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用其实很容易就达到这个数量。查看可用如下,
?ulimit -a
若要令修改ulimits的数值永久生效,则必须修改配置文档,修改/etc/security/limits.conf。可加入下面的参数:
* soft nofile 32768
* hard nofile 65536
* soft nproc 32768
* hard nproc 65536
就可以将文件句柄限制统一改成软32768,硬65536。配置文件最前面的是指domain,设置为星号代表全局,另外你也可以针对不同的用户做出不同的限制。
注意:这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning;其实ulimit命令本身就有分软硬设置,加-H就是硬,加-S就是软。
默认显示的是软限制,如果运行ulimit命令修改的时候没有加上的话,就是两个参数一起改变。生效,重新登陆即可(reboot其实也行),用ulimit -a分别查看确认,
做这之前最好是重启下ssh服务,service sshd restart。
6.系统时间设置
6.1修改时区(将Asia/shanghai-上海时区写入当前时区):
$cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
6.2手动设置时间(可选,一般不用设置此步骤)
$date -s "20070414 13:58:00"
$date -s "2007-04-14 13:58:00"
$date -s "2007/04/14 13:58:00"
注意上面的引号不能少
6.3 写入coms(可选)
$clock -w #强制将时间写入COMS
当我们进行完 Linux 时间的校时后,还需要以 hwclock -w 来更新 BIOS 的时间,因为每次开机的时候,系统会重新由 BIOS 将时间读出来.
所以, BIOS 才是重要的时间依据
6.4 设置时间网络自动同步
注:NTP:Network Time Protocol的简写,即网络时间协议,是用于互联网中时间同步的标准互联网协议。NTP的用途是把计算机的时间同步到某个时间标准。
目前采用的时间标准是世界协调时UTC(Universal Time Coordinated)。
6.4.1用ntpdate从时间服务器更新时间
如果你的linux系统根本没有ntpdate这个命令
yum install ntp
6.4.2 安装完了之后,你不要做什么配置,也不需要,直接测试一下
$ ntpdate ******
22 Oct 21:11:43 ntpdate[5014]: adjust time server 207.200.81.113 offset -0.018788 sec
如果出现上面的内容说明,同步成功了。
推荐几个时间服务器。
time.nist.gov
time.nuri.net
asia.pool.ntp.org
asia.pool.ntp.org
asia.pool.ntp.org
asia.pool.ntp.org
6.4.3添加到系统自动化执行时间同步,每十分钟一次
$vi /etc/crontab
添加如下内容:
0-59/10 * * * * root ntpdate *******
wq! 保存退出
6.6 关闭数据库所在服务器hugepage(按需使用,不是所有服务器都要这样)
echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled
echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
6.6.1 创建 /etc/init.d/disable-transparent-hugepages, 内容如下:
6.6.2 赋给权限
chmod 755 /etc/init.d/disable-transparent-hugepages
6.6.3 添加为系统级服务
chkconfig --add disable-transparent-hugepages
6.6.4 设置tuned和ktune,主要针对Red Hat or CentOS 6+
Red Hat/CentOS 7:
启用:tuned-adm profile no-thp
6.6.5测试
cat /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/defrag
7.5 使用lvm动态添加磁盘到逻辑分区/data (适用xfs文件系统)
7.5.1 fdisk -l /dev/sd[a-z] 发现新增硬盘
2.配置系统的ip以及dns服务器等
2.1 在/etc/sysconfig/network-scripts/ 下找到网口配置文件,如 ifcfg-enp2s0
修改里面ip等内容,例如:
TYPE=Ethernet
BOOTPROTO=static #静态ip
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
NAME=enp2s0
UUID=a45fc698-3a54-4e9c-af2c-48cb0b2b0efa
DEVICE=enp2s0
ONBOOT=yes #开机启动
IPADDR=
PREFIX=25 #掩码位数
GATEWAY=
DNS1=
DNS2=
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no
2.2 问题表征:ssh连接的时候很慢,大概要等半分钟甚至更久。ping的速度也非常好,让人误以为是ssh连接不上。
原因:最为常见的原因是因为server的sshd会去DNS查找访问client IP的hostname,如果DNS不可用或者没有相关记录,就会耗费大量时间。
解决方法:
1)修改 /etc/ssh/sshd_config文件中UseDNS的值:
UseDNS no #修改UseDNS yes为no
2)重启SSHD service sshd restart
3.因为centos7.2默认3.10内核,所以装机后又需要配置镜像源,然后升级内核等
3.1 备份原有/etc/yum.repos.d/下面的*.repo文件,新建添加zet公司镜像配置文件
例如新建lanrepofile.repo文件,添加如下内容:
[centosplus]
name=centosplus
baseurl=http:
enabled=1
gpgcheck=0
[cr]
name=cr
baseurl=http:
enabled=1
gpgcheck=0
[extras]
name=extras
baseurl=http:
enabled=1
gpgcheck=0
[fasttrack]
name=fasttrack
baseurl=http:
enabled=1
gpgcheck=0
[os]
name=os
baseurl=http:
enabled=1
gpgcheck=0
[updates]
name=updates
baseurl=http:
enabled=1
gpgcheck=0
3.2 升级内核
yum update
3.3 修改内核启动顺序(可选,有的重启服务器后自动选择最新内核)
查看默认启动顺序:
$awk -F\' '$1=="menuentry " {print $2}' /etc/grub2.cfg
CentOS Linux (3.18.25-19.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-55c87b7a3ff540ff8e19c1c476545cf5) 7 (Core)
默认启动的顺序是从0开始,但我们新内核是从头插入(目前位置在0,而3.10的是在1),所以需要选择0。
如果想生效最新的内核,需要下面命令:
$grub2-set-default 0
3.4删除旧的内核
列出内核
$rpm -q kernel
删除旧的内核套件
$rpm -e kernel-2.6.35.6-45.fc14.i686
删除MariaDB(可选,默认最小版不安装)
4.docker容器安装(可选,未使用)
4.1 /etc/yum.repos.d/ 新建docker.repo文件
内如如下:
[dockerrepo]
name=Docker Repository
baseurl=http://
enabled=1
gpgcheck=1
gpgkey=http:
4.2 安装docker
sudo yum makecache
sudo yum install docker-engine
5.重要,需要修改打开文件数
ulimit??在Linux下面部署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,
其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用其实很容易就达到这个数量。查看可用如下,
?ulimit -a
若要令修改ulimits的数值永久生效,则必须修改配置文档,修改/etc/security/limits.conf。可加入下面的参数:
* soft nofile 32768
* hard nofile 65536
* soft nproc 32768
* hard nproc 65536
就可以将文件句柄限制统一改成软32768,硬65536。配置文件最前面的是指domain,设置为星号代表全局,另外你也可以针对不同的用户做出不同的限制。
注意:这个当中的硬限制是实际的限制,而软限制,是warnning限制,只会做出warning;其实ulimit命令本身就有分软硬设置,加-H就是硬,加-S就是软。
默认显示的是软限制,如果运行ulimit命令修改的时候没有加上的话,就是两个参数一起改变。生效,重新登陆即可(reboot其实也行),用ulimit -a分别查看确认,
做这之前最好是重启下ssh服务,service sshd restart。
6.系统时间设置
6.1修改时区(将Asia/shanghai-上海时区写入当前时区):
$cp -f /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
6.2手动设置时间(可选,一般不用设置此步骤)
$date -s "20070414 13:58:00"
$date -s "2007-04-14 13:58:00"
$date -s "2007/04/14 13:58:00"
注意上面的引号不能少
6.3 写入coms(可选)
$clock -w #强制将时间写入COMS
当我们进行完 Linux 时间的校时后,还需要以 hwclock -w 来更新 BIOS 的时间,因为每次开机的时候,系统会重新由 BIOS 将时间读出来.
所以, BIOS 才是重要的时间依据
6.4 设置时间网络自动同步
注:NTP:Network Time Protocol的简写,即网络时间协议,是用于互联网中时间同步的标准互联网协议。NTP的用途是把计算机的时间同步到某个时间标准。
目前采用的时间标准是世界协调时UTC(Universal Time Coordinated)。
6.4.1用ntpdate从时间服务器更新时间
如果你的linux系统根本没有ntpdate这个命令
yum install ntp
6.4.2 安装完了之后,你不要做什么配置,也不需要,直接测试一下
$ ntpdate ******
22 Oct 21:11:43 ntpdate[5014]: adjust time server 207.200.81.113 offset -0.018788 sec
如果出现上面的内容说明,同步成功了。
推荐几个时间服务器。
time.nist.gov
time.nuri.net
asia.pool.ntp.org
asia.pool.ntp.org
asia.pool.ntp.org
asia.pool.ntp.org
6.4.3添加到系统自动化执行时间同步,每十分钟一次
$vi /etc/crontab
添加如下内容:
0-59/10 * * * * root ntpdate *******
wq! 保存退出
6.6 关闭数据库所在服务器hugepage(按需使用,不是所有服务器都要这样)
echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag
echo 'never' > /sys/kernel/mm/transparent_hugepage/enabled
echo 0 > /sys/kernel/mm/transparent_hugepage/khugepaged/defrag
6.6.1 创建 /etc/init.d/disable-transparent-hugepages, 内容如下:
#!/bin/bash
### 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
re='^[0-1]+$'
if [[ $(cat ${thp_path}/khugepaged/defrag) =~ $re ]]
then
# RHEL 7
echo 0 > ${thp_path}/khugepaged/defrag
else
# RHEL 6
echo 'no' > ${thp_path}/khugepaged/defrag
fi
unset re
unset thp_path
;;
esac
6.6.2 赋给权限
chmod 755 /etc/init.d/disable-transparent-hugepages
6.6.3 添加为系统级服务
chkconfig --add disable-transparent-hugepages
6.6.4 设置tuned和ktune,主要针对Red Hat or CentOS 6+
Red Hat/CentOS 7:
mkdir /etc/tuned/no-thp
[main]
include=virtual-guest
[vm]
transparent_hugepages=never
启用:tuned-adm profile no-thp
6.6.5测试
cat /sys/kernel/mm/transparent_hugepage/enabled
cat /sys/kernel/mm/transparent_hugepage/defrag
7.5 使用lvm动态添加磁盘到逻辑分区/data (适用xfs文件系统)
7.5.1 fdisk -l /dev/sd[a-z] 发现新增硬盘
[root@tomas122 ~]# fdisk -l /dev/sd[a-z]
Disk /dev/sda: 300.0 GB, 300000000000 bytes, 585937500 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x000a6243
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 585814015 292393984 8e Linux LVM
Disk /dev/sdb: 300.0 GB, 300000000000 bytes, 585937500 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
7.5.2 上面显示/dev/sdb 为新增硬盘
[root@tomas122 ~]# pvcreate /dev/sdb #将新硬盘/sdc加入物理卷上
[root@tomas122 ~]# pvs #查看物理卷
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- 278.85g 0
[root@tomas122 ~]# vgextend centos /dev/sdc #扩展卷组centos
Volume group "centos" successfully extended
[root@tomas122 ~]# lvextend -L +279.39G /dev/centos/data #扩展原/data逻辑分区
Size of logical volume centos/data changed from 10.00 GiB (2560 extents) to 15.00 GiB (3840 extents).
Logical volume data successfully resized.
[root@tomas122 ~]# xfs_growfs /dev/centos/data #通过将文件系统的容量确实添加
[root@tomas123 ~]# df -hP|grep /data #检查磁盘
/dev/mapper/centos_tomas123-data 481G 33M 481G 1% /data