【小白教程】如何配置华为云OBS标准文件对象服务?

分享 零代码明道云  收藏
6 / 1301

在 2.2.0 的大版本更新说明中偶然发现了本来我看不太懂的功能。* 文件存储支持配置为 S3 标准文件对象服务(阿里云 OSS、腾讯云 COS、华为云 OBS、七牛云等)
后来一百度,才知道这东西是降低储存成本的好东西。将数据储存和数据计算分开,可以完美解决因为数据增加导致的服务器容量不足的问题。

那么怎么配置呢? 官方教程是以阿里云 OSS 为例的,这里我用的华为的 OBS, 简单分享下搭建过程中需要注意的几点。

1.阿里云或者华为云开通标准文件对象服务 并创建桶(bucket)。

华为云 OBS 传送门

需要几个桶?4 个。 因为明道云的文件储存分别在 mdmedia, mdpic, mdpub, mdoc 四个文件夹内。对应的,在你的云储存里面建 4 个桶,桶名称建议保持一定的规则,例如我的就是 timedia, tipic, tipub, tidoc。都是用的标准配置 如下图:
image.png

2.安装标准对象服务浏览器,可视化管理你的桶。

华为云的叫 obs broswer plus, 阿里的叫 oss brower。 就在你创建桶的页面就可以看到这个工具的下载链接。
image.png

华为云 obs browser plus 支持直接用华为云账号登陆,简直是 easy.

3.给桶里面装上料。

如果你的明道云是初次搭建,你直接就上传对应的预制文件到对应的桶里面。预制文件,是一些基础文件,头现象啊,一些图标啊什么的。 预制文件包里面 mdoc 是空的,就不用上传了。 mdmedia 里面有个 emothion 文件夹,就上传到对应的 timedia 桶。 同理,将 mdpub 下面的文件夹上传到 tipub 桶,mdpic 下面的文件夹上传到 tipic 桶。

如果你的明道云像我一样,正在使用中。 那么就不能用预制文件包了。官方说的是
如果是对已在使用中的明道云系统做文件存储迁移,则预制文件使用 /data/mingdao/script/volume/data/storage/data/ 目录下的资源

好,那么问题是,对于小白,我们怎么把这个放在 CentOS 服务器上的全部依靠命令行的资源下载下来?
我推荐一个工具,SSH Secure File Transfer Client
安装好后,是这样两个程序:image.png

打开 SSH Secure File Transfer Client, 点击 quick connect, 在弹窗输入你的登录 ip 地址和账号(我的华为云主机这个账号是 root,其他的服务商可能不一样,去后台看就知道了)。
image.png

然后点击 connect,有个弹窗点击 yes。然后就是输入云服务器登陆密码。
登陆后就是下图:
image.png
然后需要点击image.png
回到你的主目录。

好的,然后就按照*/data/mingdao/script/volume/data/storage/data/` 这个路径去找到资源。
他们长这样:image.png

然后就把这四个文件夹从右边拖动到左边 你电脑本地目录就下可以啦。文件可能比较多,等待下载完成就可以啦。

然后再将下载到的文件上传到 对应的桶里。比如,我下载下来的 mdoc 文件夹里面有image.png
这两个文件夹, 我就把这两个文件夹上传到 tidoc 桶里面。
好了,到此为止,我们的桶就准备好啦。

4.用 putty 或者你的云端管理后台,进入服务器创建一个叫 s3-config.json 的配置文件。

登陆后,先执行 cd /home
然后执行 VIM s3-config.json

然后将下面代码粘贴进去并按照你的桶名称修改,

{
   "mode": 1,
   "accessKeyID": "你的key",
   "secretAccessKey": "你的密钥",
   "bucketEndPoint": "你的endpoint,例如我的就是obs.cn-south-1.myhuaweicloud.com",
   "bucketName": {
     "mdmedia": "你的media桶名,例如我的就是timedia",
     "mdpic": "你的pic桶名,例如我的就是tipic",
     "mdpub": "你的pub桶名,例如我的就是tipub",
     "mdoc": "你的doc桶名,例如我的就是tidoc"
   },
   "region": "你的地区,例如我的就是cn-south-1"
 }

注意 region 你可以看下你的 endpoint,里面一般都有。 我不确定这个 region 如果填错有多大影响。
另外, 不能有"//固定值"之类的注释哈。

然后保存文件并退出。

5.挂载服务。

去修改 docker 的配置文件
执行:vim /data/mingdao/script/docker-compose.yaml

在 volumes 下面插入一行:- /home/s3-config.json:/usr/local/file/s3-config.json
官方文档说的宿主机路径,就是指 s3-config.json 的存放路径,当然这里我们是存放在/home 下面的。

然后保存退出。

6.重启服务。

cd /usr/local/mingdao

执行 bash ./service.sh restartall 重启服务。 也可以进入明道云点击头像进入系统配置,点击安装管理器, 再重启服务。

或者浏览器输入 http://你的地址:38881/settings 重启服务。

7.测试

用协作套件,再文件里面上传任意一张图片。 然后用你的 obs browser 或者 oss browser 去找 tipic 应该可以找到一个日期为今天的文件夹,然后图片就在里面。

大功告成。

特此感谢:金彪、认真起来、Anne 熊_敏 的大力支持和耐心讲解。