S3 Browser配置命令使用及客户端连接

S3文件管理器   与 CEPH相似

一、客户端这个样纸:

二、连接

Accounts --> Add New Account

1.随便起个名字

2.Access key ID :id

3.Secret Access Key :密码

三、Linux 命令使用

客户端是为了查看使用,真正实现自动化需要使用命令,来读取文件。

使用命令教程:

AWS官方文档:

http://docs.amazonaws.cn/cli/latest/userguide/using-s3-commands.html

管理存储桶

  创建桶;

$ aws s3 mb s3://bucket-name

  删除桶:

$ aws s3 rb s3://bucket-name

删除非空桶:

$ aws s3 rb s3://bucket-name --force

列出存储桶

$ aws s3 ls

列出存储桶中所有的对象和文件夹

$ aws s3 ls s3://bucket-name

列出桶中 bucket-name/MyFolder 中的对象

$ aws s3 ls s3://bucket-name/MyFolder

管理对象

命令包括 aws s3 cp、aws s3 ls、aws s3 mv、aws s3 rm 和 sync。cp、ls、mv 和 rm 命令的用法与它们在 Unix 中的对应命令相同。

// 将当前目录里的 MyFile.txt文件拷贝到 s3://my-bucket/MyFolder $ aws s3 cp MyFile.txt s3://my-bucket/MyFolder/ // 将s3://my-bucket/MyFolder所有 .jpg 的文件移到 ./MyDirectory $ aws s3 mv s3://my-bucket/MyFolder ./MyDirectory --exclude '*' --include '*.jpg' --recursive // 列出 my-bucket的所有内容 $ aws s3 ls s3://my-bucket // 列出my-bucket中MyFolder的所有内容 $ aws s3 ls s3://my-bucket/MyFolder // 删除 s3://my-bucket/MyFolder/MyFile.txt $ aws s3 rm s3://my-bucket/MyFolder/MyFile.txt // 删除 s3://my-bucket/MyFolder 和它的所有内容 $ aws s3 rm s3://my-bucket/MyFolder --recursive

当 --recursive 选项与 cp、mv 或 rm 一起用于目录/文件夹时,命令会遍历目录树,包括所有子目录

sync命令

sync 命令的形式如下。可能的源-目标组合有:

  • 本地文件系统到 Amazon S3
  • Amazon S3 到本地文件系统
  • Amazon S3 到 Amazon S3

$ aws s3 sync <source> <target> [--options]

例如:本地文件系统到S3中:

$ aws s3 sync 本地目录/. s3://my-bucket/目录

四、配置(没有S3环境的,试着配一下,大多数公司是早就弄好了的)

来源:https://blog.csdn.net/cloudqiu/article/details/62422191

配置流程:

这两天Web这边有一个功能需求,使用到了AWS 的S3服务,这个东西在国内访问很慢,所以,一般也少有人使用,我们的业务主要在美国,所以,使用这个服务还是非常好的。国内的阿里云做到了云计算的龙头,我还是希望AWS北京数据中心能够尽快的开放出来,从去年中就开始公测,现在依然也没有个信儿,国内的境外企业的管制可真是严格。希望两方的加快工作进度吧。亚马逊给出的SDK实在是很多,各种语言的都有,不愧是大厂。人家这写的SDK也很好弄,只要搞清楚几个概念,也是很快就能够集成到自己的代码中的。AWS对资源的访问做了很好的权限控制。在CLI和SDK中操作AWS的EC2、S3等各种资源,需要一个独立的账号,账号需要隶属于一个组。组对资源的访问权限可以在管理控制台分配,该组的成员继承组的权限,也可以单独分配权限。

   第一步,在IAM页面中,先创建组,再创建一个s3的用户,最好把用户的权限控制了小一点。注意有几个概念,生成用户后,最后会给出用户的“访问密钥 ID”,“私有访问密钥”,这两个相当于临时的用户名和访问密码,需要把页面内的CSV下载下来保存好。给用户“添加权限”,选择“直接附加现有策略”,在搜索框内输入“AmazonS3FullAccess”,就给用户赋予了S3的全部访问权限。

   第二布,创建S3 Bucket。这个很好操作,注意选择好所在region的代码和bucket的名字,选择访问速度最快的区域us-west-1(加利福尼亚北),比如说你起名字myBucket,将来对外公开的url就是https://s3-us-west-1.amazonaws.com/myBucket/。

  第三部,配置CLI和SDK。现在,我们可以在本地机器配置CLI信息了。我们可以使用类似Linux Shell的方式来控制在亚马逊上所有的资源。可以写Shell脚本来完成你的工作,也可以使用PHP或Python的SDK来写程序,做到更精细的控制。需要pip,安装命令很简单 pip install --upgrade --user awscli。运行aws configure 来配置认证信息,填入上面创建用户页面的“访问密钥 ID”,“私有访问密钥”。先在CLI里测试一下,比如aws s3 sync myLocalDir s3://myBucket/。如果能够在正确运行,就表示可以继续了。PHP的SDK很简单,如果使用Laravel,也可以使用composer来引入这个SDK。PHP的SDK可能会用到当前机器上的CLI配置信息,如~/.aws/config 或者~/.aws/credentials文件,这里面存放的就是上面提到的用户名和密码,还有s3 桶所在的区域,也可以把这些信息直接写到PHP文件里,如创建的S3 Client对象时传入。

  在EC2的虚拟机上上传文件到S3,速度快的飞起。S3的文件夹删除速度太慢了,慢的让人受不了。(后来一看,发现我在老版本的S3控制页面的删除操作异常的慢,在新的页面就很快,这是什么鬼?使用的内部接口不一样?)

   文档还是要好好读的。aws的文档写的很容易懂。国内用户想要使用aws,推荐试一试韩国的数据中心,速度还是很快的。搭个梯子什么的,可以搞一搞的。

大数据、数据分析、爬虫群:

《453908562》

猜你喜欢

转载自blog.csdn.net/qq_31032181/article/details/81382968