京东云文件服务(Cloud File Service, 以下简称:CFS)是一种高可靠、可扩展、可共享访问的全托管分布式文件系统。它可在不中断应用服务的情况下,根据您对文件系统的使用,按需扩展或缩减,并按照实际用量计费。采用 NFS 协议,支持 POSIX 文件接口,可为 Linux 系统下的云主机提供共享访问服务。
演示示意图:
一、创建云主机
打开京东云控制台,依次点击左侧导航 弹性计算
– 云主机
,在与云文件服务相同的地域 华北 - 北京
创建 2 台云主机,配置如下:
- 付费类型:按配置
- 地域与可用区:华北 - 北京 / 可用区 C
- 镜像:官方镜像 -CentOS 7.6 64 位
- 规格:1 核 4G(仅作测试)
- 存储:默认
- 网络:选择一个创建好的 VPC 和子网,如果没有就新建一个
- 带宽:1Mbps
- 名称:web
- 自定义数据:如下
1#!/bin/bash
2yum install nginx -y && rm -rf /usr/share/nginx/html/index.html && wget -P /usr/share/nginx/html/ https://pocenv-hcc.s3.cn-north-1.jdcloud-oss.com/cfs/index.html && cd /etc/nginx/ && mv nginx.conf nginx.conf.bak && wget https://pocenv-hcc.s3.cn-north-1.jdcloud-oss.com/cfs/nginx.conf && systemctl enable nginx && systemctl start nginx && systemctl stop firewalld && systemctl disable firewalld
- 购买量:2
自定义数据说明:
1#!/bin/bash #Linux 脚本首行固定内容
2yum install nginx -y #yum 安装 ningx 服务
3rm -rf /usr/share/nginx/html/index.html #删除 nginx 默认首页
4wget -P /usr/share/nginx/html/ https://pocenv-hcc.s3.cn-north-1.jdcloud-oss.com/cfs/index.html #下载自定义首页
5cd /etc/nginx/ #进入到 nginx 配置文件所在目录
6mv nginx.conf nginx.conf.bak #备份 nginx 原配置文件
7wget https://pocenv-hcc.s3.cn-north-1.jdcloud-oss.com/cfs/nginx.conf #下载自定义配置文件
8systemctl enable nginx #设置 nginx 开机自启
9systemctl start nginx #启动 nginx
10systemctl stop firewalld #关闭防火墙
11systemctl disable firewalld #永久关闭防火墙
12&& #这个符号表示前面命令执行成功后才会执行后面的操作
自定义数据内的
index.html
文件内容如下:
1<!DOCTYPE html>
2<html>
3<head>
4<title> 这是一个 Nginx 调用 cfs 文件的展示页面 </title>
5<style>
6.ss {
7width: 800px;
8height: 280px;
9display: flex;
10align-items: center;
11justify-content: center;
12}
13.ssimg {
14width: 100%;
15height: 100%;
16}
17h2 {
18color: red;
19}
20</style>
21</head>
22<body>
23<h1> 下面调用的是 cfs 内的文件【1.png】</h1>
24<h2> 图片路径为 /data/img/1.png</h2>
25<divclass="ss">
26<imgsrc="/img/1.png">
27</div>
28</body>
29</html>
云主机新建完成后结果如下:
现在我们分别复制云主机的公网 IP 到浏览器查看效果如下:
二、创建应用型负载均衡(ALB)
1. 创建负载均衡
打开京东云控制台,依次点击左侧导航 网络
– 负载均衡
,在 应用型
中选择 华北 - 北京
点击 创建
按钮
选择应用负载均衡,点击确定
配置如下:
- 地域与可用区:华北 - 北京 - 可用区选择
可用区 A
、可用区 B
、可用区 C
- 网络:选择和云主机相同的私有网络(子网随意,也可选择与云主机相同的子网,也可创建一个新的子网,因为同一 VPC 下的子网默认是互通的),安全组选择
默认安全组开放全部端口
- 带宽:1Mbps
名称:cfs_alb
创建完成后如下图:
2. 配置负载均衡
2.1 新建虚拟服务器组
点击创建好的负载均衡实例名称,如下图,找到 虚拟服务器组
后点击 新建虚拟服务器组
分组名称填写 tg,将我们创建好的两台云主机添加到这个服务器组里,点击确定
2.2 新建后端服务
如图,找到 后端服务
后点击 新建后端服务
配置如下:
- 基本信息:
- 名称:backend
- 后端协议:默认 Http
- 端口:80
- 调度算法:默认加权轮询
- 其他保持默认
- 健康检查:
- 健康检查方式:HTTP
- 检查端口:80
- 其他保持默认
- 添加服务器组:
- 选择服务器组:选择我们上面创建好的虚拟服务器组 `tg`
2.3 新建监听器
如图,找到 监听器
后点击 新建监听器
配置如下:
- 前端监听配置:
- 监听协议[端口]:Http 80
- 其他保持默认
- 后端转发配置:
- 默认后端服务:选择后端服务
- 后端服务名称:选择前面创建好的后端服务 `backend`
- 其他保持默认
- 健康检查:
- 保持默认
- 添加服务器组:
- 保持默认
2.4 查看效果
复制负载均衡的公网 IP 到浏览器查看效果
三、创建云文件服务
首先我们需要打开京东云官网:http://www.jdcloud.com,点击右上角控制台登陆后点击左侧导航存储 - 云文件服务,在华北 - 北京点击创建文件存储,配置如下:
- 地域:华北 - 北京
- 名称:cfs_test
- 虚拟私有云:选择和云主机相同的私有网络
- 创建挂载目标:选择和云主机相同的子网
创建结果如下:
四、挂载文件存储
如下操作需要登陆两台云主机分别操作!
3.1 登陆我们创建好的云主机,安装 nfs
1yum install –y nfs-utils -y
在 Ubuntu 系统的终端下,运行如下命令:
sudo apt-get install nfs-common
3.2 创建 data
目录用于挂载文件存储
1mkdir -p /data/img
3.3 通过挂载目标的 IP 地址挂载文件存储,挂载目标的 IP 地址可在“控制台 - 存储 - 云文件服务 - 文件存储”页面,点击该文件存储的 ID 后查看。
如,挂载目标的目录为 10.0.0.19:/cfs,挂载到上一步创建的 nfs 目录。
注意,因挂载工具默认 NFS 协议为 4.0 版本,所以 CentOS 7.2 及以下版本的挂载命令略有不同:
CentOS 6.9 至 CentOS 7.2 版本运行以下命令:mount -t nfs,nfsvers=4.0, -o lookupcache=none 10.0.0.19:/cfs /data
CentOS 7.3 及以上版本运行以下命令:mount -t nfs -o lookupcache=none 10.0.0.19:/cfs /data
Ubuntu 系统的终端下,运行如下命令:mount -t nfs 10.0.0.19:/cfs /data
5. 通过运行以下命令,验证是否挂载成功:
1df -h
挂载成功后会出现“Filesystem”为挂载目标 IP,“Mounted on”为上一步指定目录的记录。
五、上传测试文件
首先准备一张 png
格式的图片,重命名为1.png
,保存到桌面;
利用类似 WinSCP 或者 FTP 等工具将准备好的测试图片上传到云主机 web01 的 /data/img 目录下
上传完成后,复制负载均衡公网 IP 到浏览器查看效果如下:
现在我们将云主机 web1 在控制台停止并删除,然后再刷新浏览器,发现测试图片仍能够正常显示,原因在于测试图片是直接上传到了京东云云文件服务 CFS 中,云主机 web1、web2 共享 CFS 内的数据,所以删除云主机对上传的图片不会产生影响。
点击“京东云”了解京东云云文件服务产品