阿里云对象存储使用

提供99.9999999999%的数据可靠性,这究竟是怎么得出来的?

Posted by MatthewHan on 2019-07-17

这两天僵住了,分配给我的项目是提前写完了,但是测试样例却不好弄,索性就划着,反而给了我很多时间去学习其他知识。

图床很有必要

首先GayHub本来就不是很稳定,公司网络访问十分OK,回到家连ping都快ping不通了,clonerepository真的是玩一年,更别说编辑blog了,打开博客图片就加载不出来,家里好歹也是电信100Mbps的,网速应该没问题。像我这种对艺术与美都有追求的人,选的图片都是色影师实拍的高清原图,分辨率都是3K、4K级别的。自己的照片也是高分辨率,容量也不小,要是没有类似CDN之类或者云存储的话,以后blog变多怕是博客在哪里都打不开了,毕竟GayHub也不是用爱发电的。

辣么就选一个方案吧,网上推荐比较多的就是sm.ms、阿里云OSS和七牛了,七牛这个hape,还要身份证正反面实名认证,也没留身份证的照片就懒得搞了,阿里云这个B天天发邮件促销活动,就选择冲阿里云了。

对象存储这个概念之前在带库升级的时候,各家方案和需求都有提及过,当时与百度云团队、IBM、Oracle厂商都有过交流,虽然我是完全不懂都是听个大概,但是概念和特点也略微了解了。不过这和使用这个存储服务没有什么关系,不用管底层照着阿里的文档用就vans了。

开通服务

猛冲成功后,点击创建一个Bucket

对新Bucket设置

其中区域选择,网上说选择香港好像有免费额度,但是普遍反映这个成本极低,所以我就冲了华东1(杭州),读写权限这里要注意
对象存储OSS提供Bucket级别的权限访问控制。
Bucket目前有三种访问权限:public-read-writepublic-readprivate,它们的含义如下:

权限值 中文名称 权限对访问者的限制
public-read-write 公共读写 任何人(包括匿名访问者)都可以对该存储空间内文件进行读写操作。警告:互联网上任何用户都可以对该 Bucket 内的文件进行访问,并且向该 Bucket 写入数据。这有可能造成您数据的外泄以及费用激增,若被人恶意写入违法信息还可能会侵害您的合法权益。除特殊场景外,不建议您配置公共读写权限。
public-read 公共读,私有写 只有该存储空间的拥有者可以对该存储空间内的文件进行写操作,任何人(包括匿名访问者)都可以对该存储空间中的文件进行读操作。警告 互联网上任何用户都可以对该 Bucket 内文件进行访问,这有可能造成您数据的外泄以及费用激增,请谨慎操作。
private 私有读写 只有该存储空间的拥有者可以对该存储空间内的文件进行读写操作,其他人无法访问该存储空间内的文件。

如果设置成私有的话,阿里云没有警告信息,1️⃣0️⃣🐭安全行为,但是读需要鉴权、签名,并且访问有时效性,最大超时时间是18小时;如果设置成公共读私写的话,谁都可以进行读取,并且无超时,有一定的安全隐患;公共读写就8️⃣说了,1️⃣0️⃣🐭弟弟行为,难道是要空手套黄图?

这里我们的需求就是hexo博客存储图片,我选择了公读私写,因为选择全私有的话,貌似不能修改访问的超时机制在静态页面的博客中不好去授权访问,不如公开读取(反正我也8️⃣是冠希哥),反正这个选项在这里总是要给人用的啊!

计费方式

注:该计费方式更新于Jul.29th,2019,实际情况请以阿里云对象存储官网为准,本文计费方式描述仅供参考。

详细的计费方式建议直接去阿里云了解或咨询客服,根据反馈来说应该是比较低廉的(不开启CDN加速服务)。

这里强烈建议选择包年包月的方式:

  • 按量付费:按实际使用量*单价的方式计费,每小时统计前一小时的实际用量并从账户余额中扣除实际消费金额。例如,当前时间是 9:30,结算的是 8:00-9:00 产生的费用。

  • 包年包月:预先购买指定资源包,之后使用资源时,扣除相应的额度。一般情况下,包年包月比按量付费更加优惠。资源包目前仅提供标准型存储包、归档型存储包、下行流量包、 回源流量包,可购买地域请参见购买对象存储OSS资源包。

费用组成

注意: OSS的所有收费项目都是单独计费的,例如:您在OSS 的存储空间内存放了100GB数据,会产生存储费用;若每天有不同的客户通过外网访问您的数据,则您还会额外产生请求费用和外网流出流量费用。

简而言之就是如果你开通了包年包月服务,你实际产生的费用一般是由包年包月的服务费(数据存储、外网流出)+数据处理费用+请求费用。大头其实就是在数据存储和外网流出流量上,所以选择一个合适的套餐开通包年包月服务还是很有必要的。

其他工具

管理页面

管理界面和百度网盘很像,虽然底层是对象存储,但是傻瓜管理界面还是树形结构,这种最简单才是最好用的。这里可以对单一对象进行相关设置(包括获取URL、读写权限,不展开),不过推荐还是使用一款官方application来可视化管理比较好,可以直接拖拽上传下载。GayHub地址:https://github.com/aliyun/oss-browser
其实这里应该是和HexoEditor搭配才是完美的,可惜HexoEditor只支持七牛、腾讯云,不支持阿里云OSS。HexoEditor是一款Markdown的开发工具,预览内容与Hexo生成页面内容高度相似(可以配置主题,虽然我失败了,我的主题比较特殊),并且HexoEditor对图床的支持也8️⃣错,就是不支持阿里云,如下图:
HexoEditor图床
HexoEditor预览
HexoEditor的GayHub地址:https://github.com/zhuzhuyule/HexoEditor

Hexo中使用

最后就可以在你的HexoEditor上编写Markdown博客辣,通过oss-browser进行备份,再次打开你的blog,应该会比原来快很多的吧!