3.1 实验介绍
3.1.1 关于本实验
本实验通过搭建视频流媒体服务,实践华为云上存储云服务,本实验通过操作 ECS、EVS、
SFS、OBS 搭建一个 H5 视频网站,通过 ELB 将请求分发到不同的 AZ 实现视频网站的高可用
部署,最后通过 SDRS 服务实现容灾部署。
3.1.2 实验目的
理解华为云存储服务的基本原理。
理解数据上云、云上数据管理、数据备份、数据恢复的业务场景。
3.1.3 实验组网介绍
本实验通过部署一个视频播放网站演示了华为云上的相关存储服务。实验中涉及到了 EVS 存
储的挂载,了解 EVS 的挂载流程;文件存储 SFS 的使用及挂载,了解 SFS 的使用及特性;视
频流媒体服务的部署,了解 OBS 的基本使用;通过高可用部署及 SDRS 服务的使用了解容灾
备份服务的必要性。通过该实验,用户可以深入理解块存储服务 EVS 的使用及备份,文件存
储服务 SFS 的使用及自动挂载,对象存储服务 OBS 的使用,了解存储容灾服务 SDRS 的特
性。
3.1.5 实验准备
步骤 1 准备 VPC
创建虚拟私有云
步骤 2 创建 VPC
确认 VPC 配置信息后点击“立即创建”创建 VPC
创建完毕后检查 VPC
步骤 3 安全组
新增安全组
确认安全组
安全组名称为“sg-video”
步骤 4 开放 80 端口
确认入方向端口信息:
步骤 5 准备实验文件
在自己的电脑上准备好需要操作的视频文件、封面图片、nginx 安装包、js 文件、css 文件
在本地电脑通过浏览器打开以下链接下载实验文件:
https://hcie-lab-2020.obs.cn-north-4.myhuaweicloud.com/video.zip
实验文件介绍:
huawei-cloud.jpg:视频播放封面图
index.html:播放页面源码
nginx-1.15.9.tar.gz:nginx 安装包,用作 web 服务器
SampleVideo_1280x720_5mb.mp4:测试视频
video.js:视频播放插件
3.2 实验步骤
3.2.1 新增 SFS 文件存储
步骤 1 新建 SFS 文件存储池
登录华为云账号,选择弹性文件服务
步骤 2 单击新建 SFS
点击“创建文件系统”
步骤 3 设置 SFS 文件系统参数
步骤 4 确认参数后单击提交
步骤 5 SFS 创建完毕后确认域名
3.2.2 新增 OBS 对象存储桶
步骤 1 打开 OBS 对象存储
步骤 2 新增存储桶
点击“创建桶”
步骤 3 设置存储桶参数
参数设置完毕后点击“立即创建”
步骤 4 上传实验文件
在新建的 bucket 上传本次实验的文件:
查看文件列表,确认文件上传成功:
3.2.3 新增弹性云服务器 ECS01
步骤 1 选择弹性云服务器 ECS
步骤 2 点击“购买弹性云服务器”
步骤 3 设置 ECS01 的参数
ECS01 的参数:
参数 参数介绍 参数值
ECS
参数
计费模式 按需计费
区域 根据实际情况而定
可用区 可用区 1
规格 选择最小规格
镜像 CentOS7.6
系统盘 普通 IO,40G/SATA
虚拟私有云
vpc-video,与 SFS 的
VPC 保持一致
安全组 sg-video
弹性公网 IP
现在购买
规格:全动态 BGP
计费方式:按流量计费
/按宽带计费
宽带:10Mbit/s
云服务器名称 ECS01
登录方式
密码或者秘钥(秘钥方
式需要自行保管私钥)
用户名/密码 root/自行设置并保管
高级配置 暂不配置
云备份 暂不购买
购买数量 1
根据参数配置选择配置
参数选择完毕后点击“立即购买”
步骤 4 确认 ECS01 是否创建成功
3.2.4 挂载 SFS 文件系统
步骤 1 登录 ECS01
有两种方法登录 ECS 实例:
使用终端模拟工具(putty,xshell,crt)通过密码或者密钥登录 ECS01 的终端,并进行
操作。
通过下面的 ssh 命令登录终端:
ssh root@ECS01 公网 ip
通过控制台,选择对应的 ECS 实例,点击“远程登录”登录 ECS
然后输入用户名和密码登录系统
步骤 2 挂载 SFS 文件系统,可以让不同 region 的弹性云服务器都可以访问到视频文件
首先复制 SFS 文件系统的域名:
步骤 3 通过命令挂载 SFS
挂载 SFS 文件系统,登录 ECS01,通过以下步骤并输入命令挂载 SFS 文件系统。
创建 video 文件夹:
mkdir /video
安装 nfs-utils:
yum -y install nfs-utils
挂载 SFS:
mount -t nfs -o
vers=3,timeo=600,nolock,rsize=1048576,wsize=1048576,hard,retrans=3,noresvport,async,noatime,
nodiratime 步骤二中复制的 sfs 域名 /video
通过 mount|grep 命令筛选 video 关键词查看挂载是否成功:
mount|grep video
步骤 4 设置自动挂载
输入以下命令设置自动挂载:
echo -e "步骤二中复制的 sfs 域名 /video nfs
vers=3,timeo=600,nolock,rsize=1048576,wsize=1048576,hard,retrans=3,noresvport,async,noatime,
nodiratime 0 0" >>/etc/fstab
通过 cat 命令确认/etc/fstab 内容,如果文件有错误,请通过 vi 命令编辑修改:
cat /etc/fstab
首先将挂载的文件系统卸载,再重新挂载文件中的所有分区,最后确认自动挂载是否生效:
umount /video
mount -a
mount |grep video
步骤 5 从 OBS 下载实验文件到 SFS
复制 OBS 下载地址
步骤 6 下载实验文件
通过以下命令在 ECS01 的 SFS 挂载点下载该视频文件(替换红色字体)
cd /video/
wget 步骤五中复制的 OBS 实验文件地址
ls -l
下载后查看下载的文件:
步骤 7 购买 EVS 磁盘
打开云硬盘 EVS 服务
磁盘参数:
名称 参数
volume-ecs01
计费模式:按需计费
区域:根据实际情况而定
可用区:保持与 ECS01 一致
磁盘规格:普通 IO 10GB
磁盘名称:volume-ecs01
购买量:1
购买 EVS 磁盘
步骤 8 挂载 EVS 磁盘
选择新的磁盘,点击“挂载”
选择挂载到 ECS01,选择挂载点(默认为“数据盘”)
登录 ECS,通过 fdisk 命令查看磁盘是否已经挂载:
fdisk -l
新添加的磁盘盘符为/dev/vdb
步骤 9 创建文件系统
为/dev/vdb 创建文件系统,挂载到/opt 目录:
mkfs.ext4 /dev/vdb
mount /dev/vdb /opt
mount | grep opt
步骤 10 设置自动挂载
通过如下命令设置自动挂载(也可以通过 vi 手动编辑):
echo -e "/dev/vdb/\t/opt\text4\tdefaults\t1 1" >>/etc/fstab
通过以下命令验证自动挂载是否生效:
umount /opt
mount -a
mount | grep opt
3.2.5 部署视频流播放服务
步骤 1 编译安装 nginx
通过以下命令编译安装 nginx
cd /video
yum install -y unzip
unzip -o video.zip
cd video
cp nginx-1.15.9.tar.gz /opt/
cd /opt
yum install -y pcre*
yum install -y zlib*
tar -xvf nginx-1.15.9.tar.gz
cd nginx-1.15.9
./configure --prefix=/opt/nginx
make && make install
步骤 2 编辑 html 文件
通过 sed 命令修改 nginx.conf,将"root html"修改为"root /video/video"
cd /opt/nginx/conf
sed -i "0,/root html/s/root html/root \/video\/video/" nginx.conf
步骤 3 验证视频播放
通过以下命令启动 nginx
cd /opt/nginx/sbin/
./nginx
在浏览器验证视频能否播放
步骤 4 设置开机自启动
通过以下命令设置自动启动
echo -e "\n#start nginx\nsleep 10\ncd /opt/nginx/sbin\n./nginx" >> /etc/rc.local
chmod +x /etc/rc.d/rc.local
3.2.6 高可用部署
步骤 1 准备新建 ECS01 的镜像
打开镜像服务,点击“创建私有镜像”:
创建私有镜像:
步骤 2 新建云服务器备份存储库
选择云服务器备份存储对的参数:
设置存储对的名称为 video,然后点击“立即购买”
查看已经购买的存储库:
步骤 3 在创建私有镜像界面选择刚刚创建的存储库
选择云服务器备份存储为 video,镜像名称为 ECS-video,然后点击“立即创建”
确认无误后点击“提交申请”
步骤 4 等待 ECS01 私有整机镜像创建完成
步骤 5 通过 ECS01 整机镜像创建 ECS02
根据私有镜像点击“申请服务器”
ECS02 的参数:
参数 参数介绍 参数值
ECS参数
计费模式 按需计费
区域 根据实际情况而定
可用区 可用区2,保持与ECS01不一致
规格 无强制要求
镜像 私有镜像
系统盘 高IO,40G/SATA
虚拟私有云
vpc-video,与SFS的VPC保持一
致
安全组 sg-video
弹性公网IP
现在购买
规格:全动态BGP
计费方式:按流量计费/按宽带计
费
宽带:10Mbit/s
登录方式
密码或者秘钥(秘钥方式需要自行
保管公钥)
用户名/密码 root/自行设置并保管
高级配置 暂不配置
云服务名称 ECS02
云备份 否
购买数量 1
确认镜像为刚刚生成的整机镜像
命名为 ECS02,然后点击购买。
步骤 6 登录 ECS02
通过终端模拟工具或者 ECS 控制台登录 ECS02,通过以下命令确认服务状态
netstat -ntpule
步骤 7 配置负载均衡
打开负载均衡服务
购买负载均衡
配置负载均衡
确认已经购买的负载均衡
步骤 8 为负载均衡添加监听器
设置前端端口为 80
配置监听器参数
配置健康检查参数
步骤 9 为负载均衡添加后端服务器
选择 ECS01,ECS02 添加到后端服务器组
确认后端服务器组状态
步骤 10 验证可用性
确认负载均衡器的外网 ip 地址
在浏览器打开负载均衡器的外网地址,确认服务状态
3.2.7 配置存储容灾服务
步骤 1 配置容灾保护组 Protection-Group-video01
打开存储容灾服务
点击“创建保护组”
创建保护组 Protection-Group-video01,容灾方向为可用区 1 到可用区 2
步骤 2 再次新建保护组 Protection-Group-video02
创建保护组 Protection-Group-video02,容灾方向为可用区 2 到可用区 1
步骤 3 为保护组 01 新增保护实例
进入保护组 01
在保护实例分页中点击“创建”
添加 ECS01 为保护实例
等待创建完毕
步骤 4 为保护组 02 新增保护实例
添加 ECS02 为保护实例
等待创建完毕
步骤 5 查看新增的保护实例
打开 ECS 控制台,查看存储容灾服务创建的保护实例(处于关机状态)
步骤 6 开启保护
保护实例添加后,点击“开启保护”
查看同步状态:
步骤 7 在负载均衡中添加存储容灾服务创建的保护实例
步骤 8 确认保护组 01 的同步进度为 100%
查看保护组 01
确认同步状态为 100%(否则请等待同步完成)
步骤 9 确认保护组 02 的同步进度为 100%
点击查看保护组 01
确认同步状态达到 100%
步骤 10 切换保护组 01 的实例
进入保护组 01,关闭保护中的实例,然后点击“切换”
确认切换
等待切换完成
切换完成,容灾方向变为可用区 2 到可用区 1,开启切换后的虚机
步骤 11 切换保护组 02 的实例
首先点击“关机”,然后点击“切换”
等待切换完成
切换完成后容灾方向变为可用区 1 到可用区 2,开启切换后的实例
步骤 12 查看 ECS 列表和负载均衡器组
查看 ECS 列表,ECS 实例已经切换到不同的可用区
负载均衡中原来的 ECS01 和 ECS02 已经关机停止服务,但是容灾实例的服务已经正常运行,
容灾切换正常
步骤 13 验证服务容灾结果
验证服务可用性,在浏览器打开负载均衡的外网 IP,查看视频能否播放
3.3 结果验证
3.3.1 查看视频能否播放
在浏览器打开负载均衡的外网 IP,查看视频能否正常播放