1.概述
由于在单台服务器上搭建灾备环境需要KVM和NFS的支持,下面先列出KVM的搭建流程,再列出使用NFS实现单台服务器灾备的流程。
A.搭建KVM环境
1>.主机环境准备
Linux System:CentOS6.5
ISO:CentOS-6.5-x86_64-bin-DVD1.iso
2>.配置本地YUM源
CentOS服务器上YUM源配置可能已经失效,需要手动配置(若YUM源可用,则忽略该步骤)
首先将镜像文件拷贝到服务器的桌面上,进入root账户下:
mkdir -p /media/iso
mkdir -p /media/cdrom
将CentOS-6.5-x86_64-bin-DVD1.iso移动到/media/iso目录下
mv /home/user/CentOS-6.5-x86_64-bin-DVD1.iso /media/iso
然后挂载到/media/cdrom目录下
mount -o loop /media/iso/CentOS-6.5-x86_64-bin-DVD1.iso /media/cdrom
然后使用df -h查看挂载状态(出现箭头处信息即挂载成功)
备份repo文件
cd /etc/yum.repos.d/
ls
不建议直接删除该文件夹下的文件,虽然这样做是可行的,在这里,我们给这些文件改名全部加上.bak的后缀,这样使用yum命令的时候就不会读取到这些配置文件了,能读取到的配置文件一定是以.repo结束
mv CentOS-Base.repo CentOS-Base.repo.bak
mv CentOS-Debuginfo.repo CentOS-Base.repo.bak
mv CentOS-Vault.repo CentOS-Base.repo.bak
编辑CentOS-Media.repo文件
vi CentOS-Media.repo
将enabled=0(禁用本地源)改为1(开启本地源)
将baseurl改为你镜像文件所在的挂载目录,baseurl=file:///media/cdrom
x保存退出
检验YUM源是否安装成功
yum clean all
yum make cache
yum -y install git(安装一个软件测试yum是否安装成功)
3>.配置KVM虚拟化
安装插件及工具
yum install -y \
qemu-kvm.x86_64 \
qemu-kvm-tools.x86_64 \
python-virtinst.noarch \
qemu-img.x86_64 \
bridge-utils.x86_64 \
libvirt \
virt-manager
验证当前主机是否满足kvm的运行条件
grep -E -o ‘vmx|svm’/proc/cpuinfo //如果有输出就支持虚拟化,intel cpu过滤vmx,amd cpu过滤svm
modprobe kvm //加载KVM模块
lsmod | grep kvm
创建桥接网卡
ifconfig查看当前主机所使用的网卡及ip信息,修改该网卡的配置文件
vi /etc/sysconfig/network-scripts/ifcfg-eth0
只需在末尾处添加Bridge=”br0”即可,同时注释到网卡的ip相关参数
x保存退出
vi /etc/sysconfig/network-scripts/ifcfg-br0
x保存退出
service network restart
ifconfig查看桥接是否设置成功
在kvm虚拟环境中安装CentOS6.5系统
注意:硬盘中要留两个目录给数据存储池与镜像存储池,大小自己设置
数据存储池用来存放安装的系统文件;镜像存储池用来存放iso镜像。
virt-manager //启动virt-manager管理工具
创建数据存储池
创建镜像存储池,与上同。创建完成后,我们将准备好的镜像文件拷贝到镜像存储池所在的目录。刷新一下管理器
安装系统
右击QEMU/KVM,新建
配置完成后,即可安装虚拟机。
克隆
安装完成后,我们开始配置该台虚拟机的IP
vi /etc/sysconfig/network-scripts/ifcfg-eth0,添加开机自启网卡和配置好IP和网卡等相关信息
ONBOOT=yes
IPADDR=192.168.2.83
NETMASK=255.255.255.0
BOOTPROTO=static
x保存退出
service network restart
ping 真机ip//查看能否与真机通信
关闭防火墙
service iptables status//查看防火墙状态
service iptables stop//临时关闭防火墙
chkconfig iptables off//永久关闭防火墙
关闭完成后,记得重启
设置普通用户拥有root操作不需要密码
进入root账户,visudo,找到如下命令
在后面添加你的用户名,如下
User ALL=(ALL)NOPASSWD: ALL
在红箭头处添加注释
修改完一系列的配置后,开始克隆
克隆完成后,由于该系统是克隆另一个系统,所有的信息都是一样的,需修改以下配置:
主机名、IP地址、MAC地址,UUID删除掉
vi /etc/sysconfig/network //永久更改主机名,重启后生效
ifconfig –a //查看网络信息
vi /etc/sysconfig/network-scripts/ifcfg-eth0 //将UUID删除,修改名称、MAC地址、IP地址
x保存退出
service network restart //重启网络服务
ping 真机ip //查看通信情况
根据灾备机器的数量情况,选择克隆机器台数,到这里,kvm的搭建流程就完成了,接下来开始搭建nfs的环境
B.搭建NFS环境
1>.主机环境准备
Linux System:CentOS6.5
2>.NFS安装及配置
由于NFS安装需要yum源支持,若本地服务器的yum源不可用,参照A.2>配置本地yum源即可,若yum源可用,则直接yum安装nfs即可
首先,查看系统是否已安装NFS
rpm -qa|grep nfs
rpm -qa|grep rpcbind
安装NFS
yum -y install nfs-utils rpcbind
配置服务端
由于我们是在单台服务器上模拟灾备效果,我们采用的是将kvm中的虚拟机当作客户端,包含kvm的虚拟机当作服务端。若是两台或是多台机器,同理配置即可。
在NFS服务端上创建共享目录/data/lys/,并设置权限
mkdir -p /data/lys
chmod 666 /data/lys/
编辑export文件
vim /etc/exports
/data/lys 192.168.2.0/24(rw,no_root_squash,no_all_squash,sync)
sync async sync 代表数据会同步写入到内存与硬盘中,async 则代表数据会先暂存于内存当中,而非直接写入硬盘
配置生效
exportfs -r
启动rpcbind、nfs服务
service rpcbind start
service nfs start
查看RPC 服务的注册状况
rpcinfo -p localhost
在你的 NFS 服务器设定妥当之后,我们可以在 server 端先自我测试一下是否可以联机!就是利用 showmount 这个指令来查阅!
showmount -e localhost
出现如上信息,即表示可以联机
客户端配置
安装nfs-utils客户端
yum -y install nfs-utils
创建挂载目录
mkdir /lys
查看服务器抛出的共享目录信息.
showmount -e 服务器端的IP
为了提高NFS的稳定性,使用TCP协议挂载,NFS默认用UDP协议
mount -t nfs 服务器ip:/data/lys /lys -o proto=tcp -o nolock(Tips:由于nfs版本过高,跟Centos版本不匹配,可能会出现挂载后目录出现nobody的情况,降低nfs版本即可,解决版本参照如下命令:mount -t nfs -o vers=3 服务器ip:/data/lys /lys -o proto=tcp -o nolock)
查看挂载结果
dh -h查看挂载状态,如下图,则挂载成功
测试
服务端
echo “test” > test.txt
客户端
cat /lys/test.txt
test
echo “ 1024” > /lys/test.txt
服务端
cat /data/lys/test.txt
test
1024
从上述信息中,我们已经发现,文件信息已经通过nfs这个简单的文件服务器开始进行传递,接下来,解挂nfs,开始进行其他补充设置
解挂nfs
umount /lys
df -h//解挂完成之后,查看下挂载状态,确保已经解挂
固定NFS服务端口
因为NFS启动时会随机启动多个端口并想RPC注册,这样如果使用iptables对NFS端口进行限制就会有点麻烦,可以更改配置文件固定NFS服务相关端口。
rpcinfo -p localhost//查看NFS端口相关信息
vim /etc/sysconfig/nfs//分配端口,编辑配置文件
添加:
RQUOTAD_PORT=30001
LOCKD_TCPPORT=30002
LOCKD_UDPPORT=30002
MOUNTD_PORT=30003
STATD_PORT=30004
service nfs restart//重启nfs服务
rpcinfo -p localhost//再次查看NFS端口相关信息,确保端口信息已修改
至此,kvm和nfs的环境就搭建完成了。接下来,就可以在单台服务器上做灾备了。