AWS第一个云计算服务—S3

这篇具有很好参考价值的文章主要介绍了AWS第一个云计算服务—S3。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、什么是S3

传统方式处理静态内容(图片、视频、CSS、纯HTML页面等)是将其放到磁盘里,随着访问量增大,磁盘压力就会增大,磁盘压力大可能就会坏掉,所以我们需要一个海量、高并发、可靠的存储,这就是AWS提供的第一个云计算服务——S3

二、S3的特点

S3(Simple Storage Service)是一个存储服务,是AWS第一个公开提供的服务(2006),最多支持5T大小的单个对象,设计为99.999999999%的可靠性,叫十一个九的持久性的可靠性的服务,如果文件存储到S3里上万年都不会丢失,所以你也不用担心存储设备坏了丢失,也不用担心他的可用性。

三、深入了解S3

存储桶是一个存数据对象的管理的一个单位,存放文件都会进行一个分类,每个类别可以放入一个存储桶中,再比如哪些文件可以公开访问的,哪些文件只能特定的人进行访问的,就可以用存储桶来区分。放到存储桶里的东西就叫数据对象,数据对象由文件本身以及描述这些文件的元数据组成的。

AWS第一个云计算服务—S3

Amazon S3概念

数据对象由内容和元数据组成,元数据(最后修改、内容类型、用户自定义),每个对象由键来确定,存储桶可提供访问控制、存储桶位于一个区域中(region)

四、如何使用S3

1、第一步从控制台登入,选择S3服务

AWS第一个云计算服务—S3

2、创建S3存储桶,为我们的存储桶起好名称

AWS第一个云计算服务—S3

下面还会有一些加密选项,这里我们只做到创建功能,详细的加密内容后面会讲。

AWS第一个云计算服务—S3

点击创建我们就可以看到创建好的S3存储桶

AWS第一个云计算服务—S3

3、下面我们上传一个静态的图片资源,点开存储桶再点击上传

AWS第一个云计算服务—S3

从我们的电脑中选择要上传的资源,我这里选择了AWS的logo,然后点击上传就可以成功把静态资源上传到S3存储桶中

AWS第一个云计算服务—S3

这就是刚刚我们上传的静态资源

AWS第一个云计算服务—S3

五、如何在Web中直接嵌套S3

当想上传静态文件时,首先需要创建存储桶,这个存储桶要落到某一个特定的region里,当文件上传到S3中会拿到一个URL,格式:(https://bucket-name.s3.amazonaws.com/sample+key/name.jpg)

,前面是存储桶的名字,中间是对象的键名,后面是文件名,URL方便和Web页面代码整合,无需担忧并发问题,可以后续使用CloudFront等CDN服务进行加速,就拿我们刚刚上传的静态资源举例,我们上传成功后会得到一个URL路径。

AWS第一个云计算服务—S3

像这样直接把URL路径嵌进去就可以了

AWS第一个云计算服务—S3

六、S3数据加密以及命令行CLI

S3加密工作原理

server端的加密

server端的加密实际上是将数据传输到aws,由aws进行加密,知道用户请求读取数据时,再进行解密。根据加密秘钥存放位置的不同,有三种不同的加密方式,每次加密只能使用其中一种加密方法。

如下图所示,在对象传输到S3之前,用户必须在header处指明加密的方式,当数据进入到aws,可以使用KMS(秘钥管理工具)里面的key进行加密或者选择使用S3来管理key进行加密。当对安全性要求比较高时,比如用户希望由自己管理秘钥,那么用户就可以提供自己的秘钥再对数据进行加密,这种加密方法必须通过命令行的方式实现,而且通过这种方法加密,aws并不会记录秘钥以保证数据的安全性,秘钥需要用户自己进行管理。

AWS第一个云计算服务—S3

client 端的加密

如下图所示,client端加密和解密都是在客户端完成的,S3收到的数据是已经加密过的。客户端的加密主要有两种方式,第一种是由KMS(秘钥管理工具)管理key;第二种方式是客户管理key,同样这个key是不会发送到aws上的,由客户自行保障。

AWS第一个云计算服务—S3

使用aws内置功能加密

进入S3,开启默认加密选项,在Default encryption处勾选,随后选择下面的S3管理秘钥的方法。

AWS第一个云计算服务—S3

进入该bucket上传文件,查看文件的属性,可以看到其加密方法(注意之前上传过的文件,其加密方式仍为修改前的)。如果需要修改桶的加密方式,使用上面的方法即可。注意第一个文件的加密方法即时在修改加密方式后也不会改变,依旧是首次加密时使用的方法。

AWS第一个云计算服务—S3

七、S3对象锁

进入s3的管理界面,创建一个新bucket,创建时勾选Advanced setting处的permanently alow objects in this bucket to be locked即可。

AWS第一个云计算服务—S3

上传一个文本文件,点击该上传好的文本文件,点击上面的属性,进入后找到 object lock,点击进入,enable governance mode (表示当操作的用户由权限时,那么这个锁的功能时不起作用的),enable compliance mode (表示任何用户都不可以再操作 )选择这一项即可。

AWS第一个云计算服务—S3
AWS第一个云计算服务—S3

在下面弹出的 confirm compliance mode出输入confirm,确定一下

查看刚才上传文件的属性,可以看到其当前的object lock变为了enabled的状态,此时删除该文件,可以看到改文件后面多了一个delete marker。如果再选中原文件进行删除,会有错误提示,警告删除的操作被拒绝。但是如果对标有delete marker的文件进行删除操作是可以成功的。也就是起到了文件的保护作用,只有到文件的期限到期后,才能进行删除的操作。

八、S3版本控制及生命周期管理

版本控制就是指当一个对象有多个版本时,可以将其产生的所有版本保存到一个bucket里。

工作原理:

将某个文件保存后,其之前的版本都会存在,不过版本号不同;在delete操作时,没有写删除哪一个版本时,会生成一层带有delete marker的版本;此时如果执行get操作,获取这个删除版本,就会得到一个错误;当精确到某个版本时,则会将该版本直接删除,而不是生成一个delete marker版本层

我们来试验一下,先创建一个新的bucket,勾选versloning,其他默认即可,此时该bucket就是一个带有版本控制功能的bucket

AWS第一个云计算服务—S3

上传文件,看到上传成功。此时打开该本地文件,添加新的内容并保存,此时在上传该文件,可以看到文件的size发生变化,此时没有看到之前的版本,需要点击 显示版本 来查看,此时就可以查看到历史版本。注意有的版本被删除后,会产生 删除标记 ,实际上查看版本后发现源文件并未被删除,只有再次删除后才会彻底删除生效

AWS第一个云计算服务—S3
AWS第一个云计算服务—S3

与生命周期管理功能结合使用

进入bucket管理界面,下面有一个lifecycle,点击add lifecycle rule,自定义名称,下面是策略,默认下一步即可,勾选previous版本。点击下面的add处,在下拉菜单路里选择 “移动到是s……IA”,右边写入30,表示在30天后,将之前的版本移动;可以点add再添加一层策略,选择“移动到G……”,右边写180,表示180天后移动到G……这个区域;可以点add再添加一层策略,选择“移动到D……A”,右边写365,表示365天后移动到D……A这个区域;next,选previous(表示多久后将这些版本自动永久删除),next,保存即可

AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3
AWS第一个云计算服务—S3

九、S3网站托管

特点:

该功能只服务静态网页

网页的内容是放在s3的bucket里的,bucket必须可公开访问

s3 url不支持https,其托管的静态网站url(url的形式:[bucket-name].s3-website-[AWS-region].amazonaws.com)。注意区分与普通S3的url的区别,普通s3的url以https开头(https://s3.区域.amazonaws.com/其他内容)

支持客户化域名

实验一下:准备一个html文件,创建一个bucket,注意取消组织所有公开访问选项,否则无法通过网页访问,将网页文件上传

AWS第一个云计算服务—S3
AWS第一个云计算服务—S3

在bucket的属性里打开网站托管功能

AWS第一个云计算服务—S3

此时进入该bucket的属性中的静态网站托管处中,复制url,将其在网页中打开,就可以看到刚才上传的页面

AWS第一个云计算服务—S3
AWS第一个云计算服务—S3

十、S3跨域资源共享(CORS)

同源策略:在该策略下某个网页文档只能调用和它在同一个服务器上的网页资源

跨域资源共享:控制跨不同域资源的访问,比如网站A的网页请求网站B的图片,字体等

CORS的特点

绝大部分浏览器支持CORS

服务端和客户端浏览器共同使用http头信息来完成验证

浏览器根据header决定是否发出请求

服务器端根据header决定是否给予访问

十一、 S3数据查询Athena服务

概念:Athena是一种交互式查询服务,可以使得我们使用标准SQL直接在S3中轻松分析数据

特点:

无需管理底层架构

仅为查询付费

自动扩展,并行查询文章来源地址https://www.toymoban.com/news/detail-507939.html

到了这里,关于AWS第一个云计算服务—S3的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 使用亚马逊(AWS)云服务在S3上实现图片缩放功能(CloudFront/S3[AccessPoint/LambdaAccessPoint])

    使用亚马逊(AWS)云服务在S3上实现图片缩放功能(CloudFront/S3[AccessPoint/LambdaAccessPoint])

    亚马逊云服务中的S3对象存储功能和国内阿里云的oss对象存储使用基本一致。但是涉及到存储内容处理时,两家有些差别。 比如:对于云存储中的图片资源,阿里云比较人性化对于基本的缩放裁剪功能已经帮我们封装好了,只需要在url地址后面拼接参数即可,但是亚马逊S3存

    2024年02月16日
    浏览(8)
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹

    [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹

    本文收录于【#云计算入门与实践 - AWS】专栏中,收录 AWS 入门与实践相关博文。 本文同步于个人公众号:【 云计算洞察 】 更多关于云计算技术内容敬请关注:CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文: [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶

    2024年02月08日
    浏览(12)
  • [ 云计算 | AWS ] Java 应用中使用 Amazon S3 进行存储桶和对象操作完全指南

    [ 云计算 | AWS ] Java 应用中使用 Amazon S3 进行存储桶和对象操作完全指南

    本文收录于【#云计算入门与实践 - AWS】专栏中,收录 AWS 入门与实践相关博文。 本文同步于个人公众号:【 云计算洞察 】 更多关于云计算技术内容敬请关注:CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文: [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶

    2024年02月11日
    浏览(16)
  • [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶和对象操作完全指南

    [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶和对象操作完全指南

    本文收录于【#云计算入门与实践 - AWS】专栏中,收录 AWS 入门与实践相关博文。 本文同步于个人公众号:【 云计算洞察 】 更多关于云计算技术内容敬请关注:CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文: [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶

    2024年02月08日
    浏览(10)
  • [ 云计算 | AWS 实践 ] 使用 Java 检查指定的密钥是否存在于给定的 Amazon S3 存储桶中

    [ 云计算 | AWS 实践 ] 使用 Java 检查指定的密钥是否存在于给定的 Amazon S3 存储桶中

    本文收录于【#云计算入门与实践 - AWS】专栏中,收录 AWS 入门与实践相关博文。 本文同步于个人公众号:【 云计算洞察 】 更多关于云计算技术内容敬请关注:CSDN【#云计算入门与实践 - AWS】专栏。 本系列已更新博文: [ 云计算 | AWS 实践 ] Java 应用中使用 Amazon S3 进行存储桶

    2024年02月05日
    浏览(31)
  • MINIO服务器基于AWS S3 SDK 文件分片上传及下载(C++实现)

    MINIO服务器基于AWS S3 SDK 文件分片上传及下载(C++实现)

    安装环境依赖: 获取SDK源码并安装: 项目中CMakeLists.txt配置: SDK文档资料 C++_SDK.pdf 实现下载的整体类代码下载 具体内容如下

    2024年04月10日
    浏览(32)
  • 【AWS系列】第八讲:AWS Serverless之S3

    【AWS系列】第八讲:AWS Serverless之S3

    目录 序言 1.基础介绍 1.1 概念介绍 1.2 原理介绍 1.3 应用场景 1.3.1 构建数据湖 1.3.2 备份和还原关键数据 1.3.3 以最低成本存档数据 1.3.4 运行云原生应用程序 1.4 S3 的功能 1.4.1 存储类 1.4.2 存储管理 1.4.3 访问管理 2 使用方法 2.1 创建存储桶 ​2.2 配置 CORS 规则 3 投票 三言两

    2024年02月03日
    浏览(9)
  • AWS——04篇(AWS之Amazon S3(云中可扩展存储)-02——EC2访问S3存储桶)

    AWS——04篇(AWS之Amazon S3(云中可扩展存储)-02——EC2访问S3存储桶)

    关于AWS的前几篇入门文章,如下: AWS——01篇(AWS入门 以及 AWS之EC2实例及简单使用). AWS——02篇(AWS之服务存储EFS在Amazon EC2上的挂载——针对EC2进行托管文件存储). AWS——03篇(AWS之Amazon S3(云中可扩展存储)-01入门). 我这里使用的都是前面创建好的,关于怎么创建,请

    2024年02月13日
    浏览(16)
  • laravel aws s3

    laravel aws s3

    由于公司有境外项目,服务器、文件存储都是用的亚马逊,真真地是没有用过,在此记录一下自己的s3研究结果       1、创建存储桶时,以下内容均不要勾选,其他默认就行    2、编辑策略: {     \\\"Version\\\": \\\"2012-10-17\\\",     \\\"Statement\\\": [         {             \\\"Sid\\\"

    2024年02月11日
    浏览(10)
  • 云计算平台与传统平台的区别是什么?怎么理解?

    云计算已经风靡全球,且应用越来越广。生活中我们经常可以听到云计算这个词,但到底什么是云计算?云计算平台与传统平台的区别是什么?怎么理解? 什么是云计算? 准确的说,云计算只是一种计算的方式,不是租用资源的方式,但是云计算资源服务我们能以租用的形

    2024年02月11日
    浏览(10)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包