1.概述 由於在單台伺服器上搭建災備環境需要KVM和NFS的支持,下麵先列出KVM的搭建流程,再列出使用NFS實現單台伺服器災備的流程。 A.搭建KVM環境 1>.主機環境準備 Linux System:CentOS6.5 ISO:CentOS-6.5-x86_64-bin-DVD1.iso 2>. ...
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賬戶下:
1 mkdir -p /media/iso 2 mkdir -p /media/cdrom
將CentOS-6.5-x86_64-bin-DVD1.iso移動到/media/iso目錄下
1 mv /home/user/CentOS-6.5-x86_64-bin-DVD1.iso /media/iso
然後掛載到/media/cdrom目錄下
1 mount -o loop /media/iso/CentOS-6.5-x86_64-bin-DVD1.iso /media/cdrom
然後使用df -h查看掛載狀態(出現箭頭處信息即掛載成功)
備份repo文件
1 cd /etc/yum.repos.d/ 2 ls
不建議直接刪除該文件夾下的文件,雖然這樣做是可行的,在這裡,我們給這些文件改名全部加上.bak的尾碼,這樣使用yum命令的時候就不會讀取到這些配置文件了,能讀取到的配置文件一定是以.repo結束
1 mv CentOS-Base.repo CentOS-Base.repo.bak 2 mv CentOS-Debuginfo.repo CentOS-Base.repo.bak 3 mv CentOS-Vault.repo CentOS-Base.repo.bak
編輯CentOS-Media.repo文件
1 vi CentOS-Media.repo 2 將enabled=0(禁用本地源)改為1(開啟本地源) 3 將baseurl改為你鏡像文件所在的掛載目錄,baseurl=file:///media/cdrom 4 x保存退出
檢驗YUM源是否安裝成功
1 yum clean all 2 yum make cache 3 yum -y install git(安裝一個軟體測試yum是否安裝成功)
3>.配置KVM虛擬化
安裝插件及工具
1 yum install -y \ 2 qemu-kvm.x86_64 \ 3 qemu-kvm-tools.x86_64 \ 4 python-virtinst.noarch \ 5 qemu-img.x86_64 \ 6 bridge-utils.x86_64 \ 7 libvirt \ 8 virt-manager
驗證當前主機是否滿足kvm的運行條件
1 grep -E -o ‘vmx|svm’/proc/cpuinfo //如果有輸出就支持虛擬化,intel cpu過濾vmx,amd cpu過濾svm 2 modprobe kvm //載入KVM模塊 3 lsmod | grep kvm
創建橋接網卡
ifconfig查看當前主機所使用的網卡及ip信息,修改該網卡的配置文件
1 vi /etc/sysconfig/network-scripts/ifcfg-eth0
只需在末尾處添加Bridge=”br0”即可,同時註釋到網卡的ip相關參數
x保存退出
1 vi /etc/sysconfig/network-scripts/ifcfg-br0
x保存退出
1 service network restart
ifconfig查看橋接是否設置成功
在kvm虛擬環境中安裝CentOS6.5系統
註意:硬碟中要留兩個目錄給數據存儲池與鏡像存儲池,大小自己設置
數據存儲池用來存放安裝的系統文件;鏡像存儲池用來存放iso鏡像。
1 virt-manager //啟動virt-manager管理工具
創建數據存儲池
創建鏡像存儲池,與上同。創建完成後,我們將準備好的鏡像文件拷貝到鏡像存儲池所在的目錄。刷新一下管理器
安裝系統
右擊QEMU/KVM,新建
配置完成後,即可安裝虛擬機。
克隆
安裝完成後,我們開始配置該台虛擬機的IP
1 vi /etc/sysconfig/network-scripts/ifcfg-eth0,添加開機自啟網卡和配置好IP和網卡等相關信息 2 ONBOOT=yes 3 IPADDR=192.168.2.83 4 NETMASK=255.255.255.0 5 BOOTPROTO=static
x保存退出
1 service network restart 2 ping 真機ip//查看能否與真機通信
關閉防火牆
1 service iptables status//查看防火牆狀態 2 service iptables stop//臨時關閉防火牆 3 chkconfig iptables off//永久關閉防火牆
關閉完成後,記得重啟
設置普通用戶擁有root操作不需要密碼
進入root賬戶,visudo,找到如下命令
在後面添加你的用戶名,如下
User ALL=(ALL)NOPASSWD: ALL
在紅箭頭處添加註釋
修改完一系列的配置後,開始克隆
克隆完成後,由於該系統是克隆另一個系統,所有的信息都是一樣的,需修改以下配置:
主機名、IP地址、MAC地址,UUID刪除掉
1 vi /etc/sysconfig/network //永久更改主機名,重啟後生效 2 ifconfig –a //查看網路信息
1 vi /etc/sysconfig/network-scripts/ifcfg-eth0 //將UUID刪除,修改名稱、MAC地址、IP地址 2 x保存退出 3 service network restart //重啟網路服務 4 ping 真機ip //查看通信情況
根據災備機器的數量情況,選擇克隆機器台數,到這裡,kvm的搭建流程就完成了,接下來開始搭建nfs的環境
B.搭建NFS環境
1>.主機環境準備
Linux System:CentOS6.5
2>.NFS安裝及配置
由於NFS安裝需要yum源支持,若本地伺服器的yum源不可用,參照A.2>配置本地yum源即可,若yum源可用,則直接yum安裝nfs即可
首先,查看系統是否已安裝NFS
1 rpm -qa|grep nfs 2 rpm -qa|grep rpcbind
安裝NFS
1 yum -y install nfs-utils rpcbind
配置服務端
由於我們是在單台伺服器上模擬災備效果,我們採用的是將kvm中的虛擬機當作客戶端,包含kvm的虛擬機當作服務端。若是兩台或是多台機器,同理配置即可。
在NFS服務端上創建共用目錄/data/lys/,並設置許可權
1 mkdir -p /data/lys 2 chmod 666 /data/lys/
編輯export文件
1 vim /etc/exports 2 /data/lys 192.168.2.0/24(rw,no_root_squash,no_all_squash,sync)
sync async sync 代表數據會同步寫入到記憶體與硬碟中,async 則代表數據會先暫存於記憶體當中,而非直接寫入硬碟
配置生效
1 exportfs -r
啟動rpcbind、nfs服務
1 service rpcbind start 2 service nfs start
查看RPC 服務的註冊狀況
1 rpcinfo -p localhost
在你的 NFS 伺服器設定妥當之後,我們可以在 server 端先自我測試一下是否可以聯機!就是利用 showmount 這個指令來查閱!
1 showmount -e localhost
出現如上信息,即表示可以聯機
客戶端配置
安裝nfs-utils客戶端
1 yum -y install nfs-utils
創建掛載目錄
1 mkdir /lys
查看伺服器拋出的共用目錄信息.
1 showmount -e 伺服器端的IP
為了提高NFS的穩定性,使用TCP協議掛載,NFS預設用UDP協議
1 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查看掛載狀態,如下圖,則掛載成功
測試
服務端
1 echo “test” > test.txt
客戶端
1 cat /lys/test.txt 2 test 3 echo “ 1024” > /lys/test.txt
服務端
1 cat /data/lys/test.txt 2 test 3 1024
從上述信息中,我們已經發現,文件信息已經通過nfs這個簡單的文件伺服器開始進行傳遞,接下來,解掛nfs,開始進行其他補充設置
解掛nfs
1 umount /lys 2 df -h//解掛完成之後,查看下掛載狀態,確保已經解掛
固定NFS服務埠
因為NFS啟動時會隨機啟動多個埠並想RPC註冊,這樣如果使用iptables對NFS埠進行限制就會有點麻煩,可以更改配置文件固定NFS服務相關埠。
rpcinfo -p localhost//查看NFS埠相關信息
1 vim /etc/sysconfig/nfs//分配埠,編輯配置文件 2 添加: 3 RQUOTAD_PORT=30001 4 LOCKD_TCPPORT=30002 5 LOCKD_UDPPORT=30002 6 MOUNTD_PORT=30003 7 STATD_PORT=30004 8 service nfs restart//重啟nfs服務 9 rpcinfo -p localhost//再次查看NFS埠相關信息,確保埠信息已修改
至此,kvm和nfs的環境就搭建完成了。接下來,就可以在單台伺服器上做災備了。