

这里作者重新安装了一个centos7虚拟机从头开始,对服务器进行一个优化。
开始配置第一台模板机器,从网络开始
一、网络
首先先列出整个架构的结构:

我一开始先是把NetworkManager这个服务给停了,因为我使用的是network这个服务。
systemctl stop NetworkManager
systemctl disable NetworkManager
network服务稳定,管理方式是静态配置文件,更加适合服务器环境,不依赖额外守护进程,但是无法自动适应网络环境变化。
NetworkManager服务适用于桌面,笔记本环境,动态管理,支持自动检测,但对于简单的服务又显得过于重量级了。
ok,关闭了NetworkManager后,我就开始配置网络环境了。
1.配置公网网卡
#进入配置文件
cd /etc/sysconfig/network-scripts/
#备份原文件,这里我的网卡名叫ens33
cp ifcfg-ens33 ~
#编辑文件
nano ifcfg-ens33
在文件中写入一下配置:
TYPE="Ethernet"
BOOTPROTO="static"
NAME="ens33"
DEVICE="ens33"
ONBOOT="yes"
IPADDR=10.0.0.200
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5
DNS2=8.8.8.8
DNS3=114.114.114.114
然后我就一直ping 外网,唉?为什么不通?不可达?DNS解析失败?
首先我先是发现我的ens33网卡有两个ipv4地址,检查配置文件,原来是因为我的备份文件ifcfg-ens33.backup也发力了,所以有两个ipv4地址,一个是手动配置的,一个是自动获取的。
再ping,为什么不通?不可达?DNS解析失败?
然后我就去查看我的DNS服务器有没有配置正确。
[root@localhost network-scripts]# cat /etc/resolv.conf
; generated by /usr/sbin/dhclient-script
search localdomain
nameserver 223.5.5.5
nameserver 8.8.8.8
nameserver 114.114.114.114
有DNS服务器啊!
最后就回到配置文件里面的GATEWAY这个上面了。
我在想:我怎么知道我的网关ip是多少,总不可能我想写多少就多少吧。
然后我才发现VMware可以自己配置:
VMware中:
编辑-->虚拟网络编辑器-->更改设置-->禁止DHCP-->修改子网地址为:10.0.0.0,子网掩码不变。

然后点击NAT设置:

发现网关居然是10.0.0.2,那这下我悟了,把配置文件里面的GATEWAY也改成10.0.0.2,然后就可以ping 网关了,网关可达,那不就可以出外网了吗?哈哈哈哈哈哈哈哈哈哈哈哈哈
也就是说:
虚拟机的ipv4和主机的vmnet8虚拟网卡处于同一网段就可以通信,比如ssh连接。
虚拟机的ipv4(10.0.0.200)和虚拟路由器(网关:10.0.0.2)处于同一网段下就可以出公网。
2.配置局域网网卡
同理,相同的方法去修改ens34这个应用于局域网的网卡。
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=172.16.1.200
PREFIX=24
然后记得重启服务
systemctl restart network
3.最终结果
[root@localhost network-scripts]# ip a
1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: ens33: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:11:f8:df brd ff:ff:ff:ff:ff:ff
inet 10.0.0.200/24 brd 10.0.0.255 scope global ens33
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe11:f8df/64 scope link
valid_lft forever preferred_lft forever
3: ens34: mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 00:0c:29:11:f8:e9 brd ff:ff:ff:ff:ff:ff
inet 172.16.1.200/24 brd 172.16.1.255 scope global ens34
valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe11:f8e9/64 scope link
valid_lft forever preferred_lft forever
二、修改yum仓库为阿里云仓库
首先给出网站地址:
https://developer.aliyun.com/mirror/?spm=a2c6h.13651104.mirror-detail.d1002.30e6320cVEGvaF
1、备份默认仓库
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
2、下载新的 CentOS-Base.repo 到 /etc/yum.repos.d/
up这里是centos7:
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
3. 运行 yum makecache 生成缓存
yum makecache
三、安装epel扩展仓库
1、备份拓展仓库(如果有的话,默认是没有的)
mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup
2、下载新repo 到/etc/yum.repos.d/
up这里选择的是:epel(RHEL 7)
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
检查:
yum repolist

四、关闭NetworkManager和防火墙
systemctl stop NetworkManager firewalld
systemctl disable NetworkManager firewalld
五、关闭selinux防火墙
setenforce 0
getenforce
sed -i '7c SELINUX=disabled' /etc/selinux/config
六、修改进程打开的文件数量 默认1024
echo '* - nofile 65535' >> /etc/security/limits.conf
七、优化ssh
详情请看ssh文章。
1、改端口
2、优化登录速度
八、安装常用命令
yum -y install vim wget net-tools lrzsz tree bash-completion.noarch bash-completion-extras.noarch ntpdate
九、重启系统
reboot
十、做快照
手动做快照
十一、快速拓展一台服务器
先搞出来两台,然后模板机就这样放着吧。
一台:10.0.0.41 172.16.1.41
二台:10.0.0.7 172.16.1.17
1、克隆
2、修改信息
1)修改IP地址
两个网卡都要改
[root@backup ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
BOOTPROTO=none
NAME=eth0
DEVICE=eth0
ONBOOT=yes
IPADDR=10.0.0.41
PREFIX=24
GATEWAY=10.0.0.2
DNS1=223.5.5.5
[root@backup ~]#cat /etc/sysconfig/network-scripts/ifcfg-eth1
TYPE=Ethernet
BOOTPROTO=none
NAME=eth1
DEVICE=eth1
ONBOOT=yes
IPADDR=172.16.1.41
PREFIX=24
#重启网络服务
systemctl restart network
2)修改主机名称
hostnamectl set-hostname backup
Comments NOTHING