美文网首页aws工作专题
基于AWS S3协议搭建个人云存储服务

基于AWS S3协议搭建个人云存储服务

作者: Liberalman | 来源:发表于2017-03-29 23:45 被阅读588次

相信风靡全球的亚马逊 AWS S3 的存储云服务大家已经耳熟能详了,如何自己搭建一个私有的S3存储云服务呢?

Minio 提供对象存储服务,兼容了 AWS S3 存储协议,用于非结构化的数据存。非结构化对象,比如图像,音、视频,日志文件,备份镜像…等等管理不方便,不定长,大小变化大、类型多,云端的访问复杂,minio就是来解决这种场景的。非结构化的文件从数KB到5TB都能很好的支持。开源并且用Go语言开发,有web操作界面,我们可以用它来搭建兼容S3协议的存储云服务。

官网 https://minio.io/

详情见如下操作

[root@localhost ~]# mkdir /data/aws_s3
[root@localhost ~]# wget https://dl.minio.io/server/minio/release/linux-amd64/minio
[root@localhost ~]# mv minio /usr/local/bin/
[root@localhost ~]# minio server /data/aws_s3/
Created minio configuration file successfully at /root/.minio

Endpoint:  http://10.5.10.89:9000  http://127.0.0.1:9000  http://172.17.0.1:9000
AccessKey: U3XLU4IMXY3IDKHU268F 
SecretKey: /6NCL6HGacviaCgRqr2qLbVOjhkkJdRpV7wz0JJD 
Region:    us-east-1
SQS ARNs:  <none>

Browser Access:
   http://10.5.10.89:9000  http://127.0.0.1:9000  http://172.17.0.1:9000

Command-line Access: https://docs.minio.io/docs/minio-client-quickstart-guide
   $ mc config host add myminio http://10.5.10.89:9000 U3XLU4IMXY3IDKHU268F /6NCL6HGacviaCgRqr2qLbVOjhkkJdRpV7wz0JJD

Object API (Amazon S3 compatible):
   Go:         https://docs.minio.io/docs/golang-client-quickstart-guide
   Java:       https://docs.minio.io/docs/java-client-quickstart-guide
   Python:     https://docs.minio.io/docs/python-client-quickstart-guide
   JavaScript: https://docs.minio.io/docs/javascript-client-quickstart-guide

Drive Capacity: 8.3 GiB Free, 9.1 GiB Total

以上我们就成功启动了minio的s3服务,默认端口9000,可以通过网页访问http://localhost:9000

注意:第一次打开时候需要填写AccessKey和SecretKey才能进入,我们上面启动服务的时候,已经看到屏幕有输出了

AccessKey: U3XLU4IMXY3IDKHU268F 
SecretKey: /6NCL6HGacviaCgRqr2qLbVOjhkkJdRpV7wz0JJD 

把这两个Key填入,就能顺利进入,进入后展开页面如下

minio web ui 1

这就是我们的S3云存储的管理页面了,看着是不是和七牛什么的提供云存储的产品页面挺像的,原来大家都是基于S3协议开发的啊。

上传个文件试试。点击右下角的红色小加号按钮,弹出的菜单选择"create bucket"则会创建一个桶,输入名字"test",然后再点击刚才那个红色小加号按钮,这次选择"Upload file"上传文件,给这个桶上传了一个叫login.txt的文本文档,此时页面如下

minio web ui 2

至此我们可以看到文件已经上传,要访问这个文件,可以点击文件右侧的三个点的按钮,选择分享就可以得到一个外链,在浏览器中访问这个外链就可以直接访问文件。

那么文件到底被存到哪里去了呢,我们启动命令中其实指定了工作路径/data/aws_s3/,所以到服务器这个目录下看看

[root@localhost ~]# ls /data/aws_s3/   
test
[root@localhost ~]# ls /data/aws_s3/test/
login.txt

桶名称test是一个目录,其下就有我上传的login.txt文件。

另外,如果想指定ip和端口,可以这样写

[root@localhost ~]# minio server /data/aws_s3/ --address=0.0.0.0:9000

想运行到后台

[root@localhost aws_s3]# nohup minio server /data/aws_s3/ --address=0.0.0.0:443 &
[1] 19882
nohup: 忽略输入并把输出追加到"nohup.out"

这样会把标准输出重定向到当前目录下的nohup.out文件中,然后进程就放到后台运行了。

据说minio可以搭建分布式存储系统 GlusterFS,这样就成了真正的云存储了,有时间再研究下把它从现在的单机测试,变成一朵存储云,哈哈!


创建于 2017-03-29 成都,更新于 2017-03-29 成都

该文章在以下平台同步

  • [1] 引用

相关文章

  • 2018-12-09基于AWS S3协议搭建个人云存储服务

    基于AWS S3协议搭建个人云存储服务 su root mkdir /data mkdir /data/aws_s...

  • 基于AWS S3协议搭建个人云存储服务

    相信风靡全球的亚马逊 AWS S3 的存储云服务大家已经耳熟能详了,如何自己搭建一个私有的S3存储云服务呢? Mi...

  • minio

    相信风靡全球的亚马逊 AWS S3 的存储云服务大家已经耳熟能详了,如何自己搭建一个私有的S3存储云服务呢? Mi...

  • minio分布式存储使用

    Minio 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口...

  • MinIO简单超实用对象存储服务

    MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口...

  • aws s3 命令

    管理存储桶 管理对象命令包括 aws s3 cp、aws s3 ls、aws s3 mv、aws s3 rm 和 ...

  • MinIO的安装使用及Java SDK使用方式

    MinIO 是一个基于 Apache License v2.0 开源协议的对象存储服务。它兼容亚马逊 S3 云存储...

  • minio原理和使用

    简介 Minio 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服...

  • MinIO linux安装并整合spring boot

    一、简介 MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存...

  • 构建可靠的S3服务

    S3服务基础 AWS S3是亚马逊推出的海量、安全、低成本、高可靠的对象存储服务,相对于块设备服务或者文件系统服务...

网友评论

    本文标题:基于AWS S3协议搭建个人云存储服务

    本文链接:https://www.haomeiwen.com/subject/ybxuottx.html