云計(jì)算 KVM+GFS虛擬平臺(tái)的搭建 實(shí)驗(yàn)拓?fù)鋱D:
成都創(chuàng)新互聯(lián)公司長(zhǎng)期為數(shù)千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為廣安企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站設(shè)計(jì),廣安網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。實(shí)驗(yàn)需求為了搭建KVM虛擬平臺(tái),我們需要?jiǎng)?chuàng)建一個(gè)條帶復(fù)制卷,為虛擬主機(jī)提供搭建環(huán)境和分布式存儲(chǔ)功能,
GFS 群集的搭建
在GFS上我們需要為每個(gè)node添加一塊硬盤,將他們作為條帶復(fù)制卷的加載空間。
分別修改為node1、node2、node3、node4
[root@localhost ~]#hostnamectl set-hostname node1
[root@localhost ~]# su
3、將四臺(tái)服務(wù)器上的磁盤格式化,并掛載在這里我們使用腳本執(zhí)行掛載
#進(jìn)入opt目錄
[root@node1 ~]# cd /opt
#磁盤格式化、掛載腳本
[root@node1 opt]# vim a.sh
#! /bin/bash
echo the disks exist list:
fdisk -l |grep \'磁盤 /dev/sd[a-z]\'
echo ==================================================
PS3=chose which disk you want to create:
select VAR in `ls /dev/sd*|grep -o \'sd[b-z]\'|uniq` quit
do
case $VAR in
sda)
fdisk -l /dev/sda
break ;;
sd[b-z])
#create partitions
echo n
p
w | fdisk /dev/$VAR
#make filesystem
mkfs.xfs -i size=512 /dev/${VAR}1 &> /dev/null
#mount the system
mkdir -p /data/${VAR}1 &> /dev/null
echo -e /dev/${VAR}1 /data/${VAR}1 xfs defaults 0 0\\n >> /etc/fstab
mount -a &> /dev/null
break ;;
quit)
break;;
*)
echo wrong disk,please check again;;
esac
done
#給于腳本執(zhí)行權(quán)限
[root@node1 opt]# chmod +x a.sh
將腳本通過(guò)scp推送到其他三臺(tái)服務(wù)器上
scp a.sh root@192.168.45.134:/opt
scp a.sh root@192.168.45.130:/opt
scp a.sh root@192.168.45.136:/opt
在四臺(tái)服務(wù)器上執(zhí)行腳本,并完成這個(gè)只是樣本
[root@node1 opt]# ./a.sh
the disks exist list:
==================================================
1) sdb
2) quit
chose which disk you want to create:1 //選擇要格式化的盤
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0x37029e96.
Command (m for help): Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): Partition number (1-4, default 1): First sector (2048-41943039, default 2048): Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): Using default value 41943039
Partition 1 of type Linux and of size 20 GiB is set
Command (m for help): The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
4、設(shè)置hosts文件在第一臺(tái)node1上修改
#在文件末尾添加
vim /etc/hosts
192.168.45.133 node1
192.168.45.130 node2
192.168.45.134 node3
192.168.45.136 node4
通過(guò)scp將hosts文件推送給其他服務(wù)器和客戶端
#將/etc/hosts文件推送給其他主機(jī)
[root@node1 opt]# scp /etc/hosts root@192.168.45.130:/etc/hosts
root@192.168.45.130\'s password:
hosts 100% 242 23.6KB/s 00:00
[root@node1 opt]# scp /etc/hosts root@192.168.45.134:/etc/hosts
root@192.168.45.134\'s password:
hosts 100% 242 146.0KB/s 00:00
[root@node1 opt]# scp /etc/hosts root@192.168.45.136:/etc/hosts
root@192.168.45.136\'s password:
hosts
在其他服務(wù)器上查看推送情況
關(guān)閉所有服務(wù)器和客戶端的防火墻[root@node1 ~]# systemctl stop firewalld.service
[root@node1 ~]# setenforce 0
在客戶端和node服務(wù)器上搭建yum倉(cāng)庫(kù)
#進(jìn)入yum文件路徑
[root@node1 ~]# cd /etc/yum.repos.d/
#創(chuàng)建一個(gè)空文件夾
[root@node1 yum.repos.d]# mkdir abc
#將CentOS-文件全部移到到abc下
[root@node1 yum.repos.d]# mv CentOS-* abc
#創(chuàng)建私有yum源
[root@node1 yum.repos.d]# vim GLFS.repo
[demo]
name=demo
baseurl=http://123.56.134.27/demo
gpgcheck=0
enable=1
[gfsrepo]
name=gfsrepo
baseurl=http://123.56.134.27/gfsrepo
gpgcheck=0
enable=1
#重新加載yum源
[root@node1 yum.repos.d]# yum list
安裝必要軟件包
[root@node1 yum.repos.d]# yum -y install glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
在四臺(tái)服務(wù)器上啟動(dòng)glusterd,并設(shè)置為開機(jī)自啟動(dòng)
[root@node1 yum.repos.d]# systemctl start glusterd.service
[root@node1 yum.repos.d]# systemctl enable glusterd.service
添加節(jié)點(diǎn)信息
[root@node1 yum.repos.d]# gluster peer probe node2
peer probe: success.
[root@node1 yum.repos.d]# gluster peer probe node3
peer probe: success.
[root@node1 yum.repos.d]# gluster peer probe node4
peer probe: success.
在其他服務(wù)器上查看節(jié)點(diǎn)信息
[root@node1 yum.repos.d]# gluster peer status
創(chuàng)建分布式復(fù)制卷
#創(chuàng)建分布式復(fù)制卷
[root@node2 yum.repos.d]# gluster volume create dis-rep replica 2 node1:/data/sdb1 node2:/data/sdb1 node3:/data/sdb1 node4:/data/sdb1 force
volume create: dis-rep: success: please start the volume to access data
#開啟復(fù)制卷
[root@node2 yum.repos.d]# gluster volume start dis-rep
volume start: dis-rep: success
KVM虛擬主機(jī)操作
1、將我們需要安裝的系統(tǒng)鏡像包掛載到虛擬機(jī)上
#掛載軟件包
mount.cifs //192.168.100.3/lzp /mnt
#先將安裝鏡像包復(fù)制到/opt/目錄下
cp -r /mnt/CentOS-7-x86_64-DVD-1708.iso /opt/ &
2、配置自己的源
#進(jìn)入yum文件路徑
[root@node1 ~]# cd /etc/yum.repos.d/
#刪除剛才在客戶端上創(chuàng)建的私有源
[root@node1 yum.repos.d]# rm -rf GLFS.repo
#將CentOS-文件全部移到到y(tǒng)um.repos.d下
[root@node1 abc]# mv CentOS-* ../
# 重新加載公有源
root@node1 yum.repos.d]#
3、配置KVM必須環(huán)境包
#安裝桌面環(huán)境
yum groupinstall GNOME Desktop -y
#KVM模塊
yum install qemu-kvm -y
# 調(diào)試工具
yum install qemu-kvm-tools -y
#構(gòu)建虛擬主機(jī)的命令工具
yum install virt-install -y
#qemu組件,創(chuàng)建磁盤,啟動(dòng)虛擬機(jī)
yum install qemu-img -y
#網(wǎng)絡(luò)支持工具
yum install -y bridge-utils
#虛擬機(jī)管理工具
yum install libvirt -y
#圖形化管理虛擬機(jī)
yum install virt-manager -y
4、判斷cpu是否支持虛擬化。并查看虛擬機(jī)模塊
egrep \'(vmx|svm)\' /proc/cpuinfo
#查看,模塊
lsmod | grep kvm
5、開啟服務(wù),并設(shè)置開機(jī)自啟動(dòng)
#開啟服務(wù)
systemctl start libvirtd
#開機(jī)自啟動(dòng)
systemctl enable libvirtd
移動(dòng)軟件包,將掛載的軟件包移動(dòng)到/data/目錄下
#創(chuàng)建掛載點(diǎn)
mkdir /data/
#將剛才創(chuàng)建好的條帶復(fù)制卷掛礙到data目錄下
mount.glusterfs node3:dis-rep /data/
#創(chuàng)建兩個(gè)文件
mkdir vdisk viso
#復(fù)制并調(diào)到后臺(tái)運(yùn)行
cp -r /mnt/CentOS-7-x86_64-DVD-1708.iso /data/viso &
配置虛擬機(jī)的橋接網(wǎng)卡
#進(jìn)入網(wǎng)卡文件
cd /etc/sysconfig/network-scripts/
#復(fù)制創(chuàng)建br0網(wǎng)卡
cp -p ifcfg-ens33 ifcfg-br0
#進(jìn)入ens33網(wǎng)卡,設(shè)置橋接命令
vim ifcfg-ens33
#橋接命令
BRIDGE=br0
#配置橋接網(wǎng)卡,將橋接網(wǎng)卡設(shè)置為靜態(tài)的地址
vim ifcfg-br0
TYPE=bridge
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.45.140
NETMASK=255.255.255.0
GATEWAY=192.168.45.2
#重啟網(wǎng)卡
service network restart
查看網(wǎng)卡信息進(jìn)入圖像化管理界面
virt-manager
選擇存儲(chǔ),單擊選擇,進(jìn)入存儲(chǔ)控制界面
選擇創(chuàng)建新的存儲(chǔ)池,然后輸入名稱
然后選擇前進(jìn),然后在里邊跳出的頁(yè)面,單擊瀏覽。進(jìn)入下列界面
點(diǎn)擊,該圖標(biāo)
進(jìn)入選擇data目錄下的vdisk文件夾,然后選擇點(diǎn)擊打開
退出界面后點(diǎn)擊完成,就完成新的存儲(chǔ)池的創(chuàng)建
在dis上選擇添加新加卷,點(diǎn)擊進(jìn)入后輸入名稱,并且在下邊的存儲(chǔ)卷配額上輸入要分配的區(qū)間大小
跟上邊一樣的步驟,創(chuàng)建一個(gè)iso存儲(chǔ)池
在這里選擇/data/z中的viso/中的/鏡像,然后點(diǎn)擊打開
然后點(diǎn)擊完成,就完成了地址池的添加,查看創(chuàng)建好的存儲(chǔ)池,創(chuàng)建好之后,點(diǎn)擊文件中的退出。
點(diǎn)擊文件,選擇生成新的虛擬主機(jī)
在上述選擇前進(jìn),之后,在選擇要安裝的系統(tǒng)鏡像的時(shí)候,選擇iso中的鏡像
鏡像選擇完成,點(diǎn)擊前進(jìn)
分派內(nèi)存的大小,一般根據(jù)自己的實(shí)際內(nèi)存的大小分派
選擇創(chuàng)建自定義存儲(chǔ),選擇自己剛才的vdisk中創(chuàng)建的Centos7文件
點(diǎn)擊選擇,在安裝前自定義配置,然后點(diǎn)擊完成
在引導(dǎo)選項(xiàng)中,選擇主機(jī)引導(dǎo)時(shí)啟動(dòng)虛擬機(jī)
點(diǎn)擊開始安裝,后邊就跟我們安裝CentOS的步驟一樣了
然就就開始了自動(dòng)安裝,可以在虛擬機(jī)管理器上查看到虛擬的使用情況