实验环境
4 台 GFS 节点服务器做 GlusterFS 集群, 提供存储服务给 KVM 客户端做虚拟化 | 服务器角色 | IP 地址 | 磁盘空间 |
---|---|---|---|
gfs-node1 | 192.168.142.152 | 40G+40G | |
gfs-node2 | 192.168.142.154 | 40G+40G | |
gfs-node3 | 192.168.142.162 | 40G+40G | |
gfs-node4 | 192.168.142.163 | 40G+40G | |
kvm-client | 192.168.142.163 | 40G |
第一步: 部署 GFS 节点服务器
1. 为四台 GFS 节点服务器服务器每台添加一个新磁盘
2. 使用脚本一键部署 GFS 节点
- #!/bin/bash
- systemctl stop firewalld.service
- setenforce 0
- # 格式化磁盘
- 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
- # 授予执行权限
- chmod +x a.sh
- # 执行脚本
- ./a.sh
- # 注意修改主机地址!!!
- cat>>/etc/hosts<<-EOF
- 192.168.142.152 node1
- 192.168.142.154 node2
- 192.168.142.162 node3
- 192.168.142.163 node4
- 192.168.142.163 kvm
- EOF
- # 创建 yum 源仓库
- # 进入 yum 仓库目录
- cd /etc/yum.repos.d
- # 创建备份文件夹
- mkdir bak
- # 移动使用文件到备份文件夹
- mv C* bak
- # 清除 yum 缓存
- yum clean all
- # 创建私有 yum 源
- cat>GLFS.repo<<-EOF
- [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
- EOF
- # 重新加载 yum 源
- yum list
- # 安装必要软件包
- yum install -y glusterfs glusterfs-server glusterfs-fuse glusterfs-rdma
- # 启动 glusterd 服务
- systemctl start glusterd.service
- # 设定开机自启动 glusterd 服务
- systemctl enable glusterd.service
- # 设定时间同步阿里时间服务器
- ntpdate ntp1.aliyun.com
3. 四台节点部署完毕, 在 node1 节点上操作
- # 添加其他节点信息
- gluster peer probe node2
- gluster peer probe node3
- gluster peer probe node4
- # 创建分布式卷
- gluster volume create dis-volume replica 2 node1:/data/sdb1 node2:/data/sdb1 node3:/data/sdb1 node4:/data/sdb1 force
- # 启动分布式卷
- gluster volume start dis-volume
第二步: 客户端部署 KVM 操作
1. 调试客户端环境, 内存最少 4G, 开启虚拟化引擎
2. 挂载 GFS 到客户端
- # 创建挂载目录
- mkdir /data
- # 挂载分布式卷到客户端目录
- mount.glusterfs node1:dis-vol /data
- # 查看磁盘分区信息
- df -hT
- # 远程挂载微软宿主机上的镜像, 后面再用
- mount.cifs //192.168.142.1/ISO /mnt
3. 安装 KVM
- # 安装桌面环境组件包
- yum groupinstall "GNOME Desktop" -y
- # 安装 KVM 模块
- yum install qemu-kvm -y
- # 安装 KVM 调试工具
- yum install qemu-kvm-tools -y
- # 安装构建虚拟机的命令行工具
- yum install virt-install -y
- # 安装 qemu 组件, 创建磁盘, 启动虚拟机
- yum install qemu-img -y
- # 安装网络支持工具
- yum install bridge-utils -y
- # 安装虚拟机管理工具
- yum install libvirt -y
- # 安装图像化管理虚拟机
- yum install virt-manager -y
- # 查看 CPU 是否支持虚拟化 (虚拟机需要配置中开启虚拟化功能)
- egrep '(vmx|svm)' /proc/cpuinfo
- # 查看 kvm 模块是否安装
- lsmod | grep kvm
- # 开启 libvirtd 服务
- systemctl start libvirtd
- # 查看 libvirtd 服务状态
- systemctl status libvirtd
- # 开机自启动 libvirtd 服务
- systemctl enable libvirtd
4. 部署 Linux 虚拟机环境
- # 切换至挂载点
- cd /data
- # 创建备份目录
- mkdir vdisk viso
- # 后台复制镜像
- cp -r /mnt/CentOS-7-x86_64-DVD-1708.iso /data/viso/ &
- # 切换网卡配置目录
- cd /etc/sysconfig/network-scripts/
- # 复制 ens33 网卡配置文件作为桥接网卡的模板
- cp -p ifcfg-ens33 ifcfg-br0
- # 编辑 ens33 网卡配置文件
- VIM ifcfg-ens33
- # 尾行追加桥接
- BRIDGE=br0
- # 编辑桥接 网卡配置文件
- VIM ifcfg-br0
- # 替换类型为 bridge 桥接模式
- TYPE=bridge
- # 修改为静态模式
- BOOTPROTO=static
- # 改名
- NAME=br0
- # 改驱动名称
- DEVICE=br0
- # 追加 IP 地址, 掩码和网关
- IPADDR=192.168.142.164
- NETMASK=255.255.255.0
- GATEWAY=192.168.142.1
- # 重启网络服务
- service network restart
第三步: KVM 图形化管理
1. 打开终端以 root 身份输入一下命令切换图形化管理界面
- # 打开终端输入一下命令切换图形化管理界面
- virt-manager
2. 创建部署虚拟化环境
创建存储池, 双击 QEMU/KVM, 选择 "存储" 选项卡, 然后单击 "+" 按钮新建存储池.
单击 "前进" 按钮, 根据提示输入或浏览用以设置存储目录, 如 / data_kvm/store, 最后单击 "完成" 按钮即可
到这里就完成了 GFS+KVM 全部部署了, 谢谢阅读!!!
来源: http://www.bubuko.com/infodetail-3343372.html