当前位置:网站首页>OSS云存储管理实践(体验有礼)
OSS云存储管理实践(体验有礼)
2022-04-23 06:02:00 【阿里云云起实验室】
阿里云对象存储
阿里云对象存储(Object Storage Service,简称OSS),是阿里云对外提供的海量、安全、低成本、高可靠的云存储服务。用户可以通过调用API,在任何应用、任何时间、任何地点上传和下载数据,也可以通过用户Web控制台对数据进行简单的管理。OSS适合存放任意文件类型,适合各种网站、开发企业及开发者使用。
阿里云OSS图片处理服务
阿里云OSS图片处理服务(Image Service,简称 IMG) ,是阿里云OSS对外提供的海量、安全、低成本、高可靠的图片处理服务。用户将原始图片上传保存在OSS上,通过简单的 RESTful 接口,在任何时间、任何地点、任何互联网设备上对图片进行处理。图片处理服务提供图片处理接口,图片上传请使用OSS上传接口。基于IMG,用户可以搭建出跟图片相关的服务。图片服务处理的图片来自于OSS,所以图片的上传实际是上传到OSS的同名Bucket中。
在真实的工作场景中,一般将图片、音频、视频等存储到OSS服务中,这样可以极大的提高用户的页面访问速度。11 月 9 日至 11 月 23 日期间,完成部署即可获得“TOMY 多美卡合金车模一辆”。
地址:https://developer.aliyun.com/adc/series/activity/1111
体验准备
体验需使用自己的账户开通以上服务
ECS资源地址
开始实验后,系统会自动去创建一台Linux ECS。其中,创建的ECS中已经部署了web应用和OSS python SDK。在本实验中,已创建的ECS作为web服务器,浏览器中直接访问其IP地址会显示包含四个小图片的页面,并且四个图片都保存在ECS本地。通过调用OSS API将四个图片上传到OSS中,同时删除保存在ECS本地的四个图片,此时访问ECS IP将会看到页面中没有图片可以显示。为了在页面中显示原有的四个图片,实验中需要修改web应用服务器根目录下默认访问页面中的图片地址,将图片地址修改为四个图片分别在OSS中的访问地址。
连接ECS服务器
1、双击打开虚拟桌面的Chromium浏览器,在RAM用户登录框中单击下一步,复制云产品资源列表中子用户密码,按CTRL+V把密码粘贴到密码输区,登录子账户(后续在远程桌面里的粘贴操作均使用CTRL + V快捷键)。
2、复制云服务器ECS控制台地址,在Chromium浏览器打开新页签,粘贴并访问云服务器ECS控制台。
3、在控制台左侧导航栏中,单击实例。
4、在实例页面顶部菜单栏,切换到资源所在地域。
说明 :
参考如下图片切换地域到华东2(上海)。
5、在实例页面,在目标实例的操作列下单击远程连接。
说明 :
您可在云产品资源列表中查看目标实例的实例ID。
6、在远程连接与命令对话框的Workbench远程连接区域中,单击立即登录。
7、在登录实例对话框中,输入云资源产品列表中ECS服务器的登录密码,单击确定。
返回如下页面,表示您已经成功远程连接到ECS服务器。
基于单ECS的图片网站
本小节将展示一个在 ECS 上已搭建的图片分享网站,以及图片分享网站的源码。
1.在Chromium浏览器打开新页签,在地址栏输入http://<ECS公网地址()弹性IP)>:8080并访问。您可以查看到当前页面中显示1张 “花园” 的图片,该图片实际是由 4 张小图片组成的。
2.切换至终端页面。执行以下命令,进入网站系统的根目录。
cd /alidata/www/default
然后,使用如下查看命令,查看保存在根目录下的四张图片 01.png,02.png,03.png 和 04.png,也就是图片分享网站所展示的 4 张小图片。
ls
在Chromium浏览器打开新页签,在地址栏中输入 <ECS实例外网地址>/01.png,可以查看到 01.png 的图片内容。同理,可以查看 “02.png”, “03.png” 以及 “04.png” 的图片内容。
3.使用如下命令,查看网站首页的源码,可以看到图片分享网页中显示的图片,是从网站根目录 /alidata/www/default 中,读取图片 01.png,02.png,03.png 和 04.png 拼接的。
cat index.html
使用ECS+OSS实现图片网站
1.本小节将存储在本地的图片上传到 OSS Bucket 中,从而,图片分享网站将从 OSS Bucket 中读取图片,本地无需保存图片。
2.在ECS实例的 /alidata/www/default 目录中,执行如下命令,进入 cfg.json 的编辑页面,并修改 OSS 的配置信息。
vim cfg.json
在键盘上输入 “I”,切换到编辑模式,在编辑页面中,修改如下参数信息。
id: 云产品资源 分配的 AK ID 值;
secret: 云产品资源 分配的 AK Secret 值;
endpoint:请根据下面的 OSS地域与Endpoint对应关系表,输入 云产品资源 所分配 地域 相对应的 外网Endpoint 。例如:分配的 地域 为 华东1(杭州),则输入 oss-cn-hangzhou.aliyuncs.com;
bucket: 云产品资源 分配的 OSS资源 Bucket 名称;
object_dir: 云产品资源 分配的 OSS资源 Object路径。
完成后,首先按 esc键 退出编辑状态,然后输入下面命令保存并退出编辑页面。
:wq
OSS 地域 与 外网 Endpoint 对应关系表:
地域
外网Endpoint
华东 1 (杭州)
oss-cn-hangzhou.aliyuncs.com
华东 2 (上海)
oss-cn-shanghai.aliyuncs.com
华北 1 (青岛)
oss-cn-qingdao.aliyuncs.com
华北 2 (北京)
oss-cn-beijing.aliyuncs.com
华南 1 (深圳)
oss-cn-shenzhen.aliyuncs.com
3.执行如下命令,将 01.png 上传到 OSS,该脚本使用 OSS 提供的 API 接口 put_object_from_file() 将本地文件上传到 云产品资源 分配的 Object 路径 中。
python oss_upload.py 01.png
然后,执行相同命令,只把 01.png 改为 02.png 等,将 02.png、03.png 和 04.png三个图片分别上传到 OSS。接下来,用户将访问 OSS 管理控制台,并查看上传到 OSS 的文件。
说明:通过 Python SDK 的方式上传本地文件到 OSS 的具体方法,请参考实验 SL003 使用OSS API上传和下载文件。
4.复制OSS控制台地址,在Chromium浏览器打开新页签,粘贴并访问OSS控制台。
https://oss.console.aliyun.com/
5. 进入 OSS 管理控制台后,在 Bucket 列表中,点击 云产品资源 提供的 Bucket名称,例如 adc-oss-969hd2,进入 adc-oss-969hd2 Bucket 管理页面。
6.点击 【文件管理】 ,可以查看到当前 Object 列表中存在一个或多个文件夹。点击 云产品资源 分配的一级 Object 路径。例如:用户分配的 Object 路径 为 OSSCTY/u-xxx/,则 OSSCTY 为一级 Object 路径。点击 OSSCTY,进入 Object “OSSCTY” 路径中。
在 “OSSCTY” 的 Object 路径中,点击分配的二级 Object 路径。例如:用户分配的 Object 路径 为 OSSCTY/u-xxx/,则 u-xxx 为二级Object 路径。点击 u-xxx 进入Object OSSCTY/u-xxx 路径中。
此时,在 Object 管理的列表的第一行中,用户可以查看到当前 Object 路径信息。在 Object 管理的 Object 列表中,展示已上传并保存到 “SOSSCTY/u-xxx /” 路径下的 4 张图片:01.png,02.png,03.png,04.png。
7.切换回终端页面,执行下面命令进入 alidata/www/default 目录。
cd /alidata/www/default
然后执行如下命令,删除当前目录中的所有 “ .png ” 文件,也就是,图片分享网站中读取的 4 张图片 01.png, 02.png, 03.png 和 04.png。
rm -rf *.png
执行查看文件命令,查看当前目录中无图片文件,证明图片已删除。
ls
8.打开(在浏览器的地址栏中,输入 云产品资源 分配的 ECS 外网地址 并访问)或刷新图片分享网站主页面,查看到当前页面中所有图片均无法正常显示。这是因为图片分享网站读取的是本地图片文件,而本地存储的图片文件已被删除,因此无法读取到图片信息。
注意:
若访问页面仍旧可以显示图片,可能是由于浏览器缓存问题,建议清理下浏览器的缓存或者换一个浏览器查看ECS服务器主页。
9.接下来,将重新配置 index.html 中的图片访问信息,按照以下步骤将图片链接修改为上传到 OSS 的图片的 URL 访问地址:
- 切换回 OSS 管理控制台页面,进入 云产品资源 分配的 Object 路径 中,获取图片的URL访问地址。点击 01.png ,找到并点击右侧弹出框的 【复制文件 URL】。
- 切换回终端页面,执行如下命令,返回 ECS 服务器的 /alidata/www/default 目录下,并进入服务器访问首页 index.html 的编辑界面。
cd /alidata/www/default
vim index.html
- 在 下,找到第一张图片的链接参数 src=“01.png”,删除 01.png,并粘贴上面步骤中复制的上传到 OSS 01.png 图片的访问
地址。 同理,修改 02.png,03.png,04.png 的链接地址为 OSS 的存储地址。
- 完成所有图片的修改后,点击 esc键 退出编辑状态,执行以下命令保存并退出编辑页面。
:wq
10.在浏览器中,刷新 ECS实例的 外网地址 的访问页面,页面将再次显示 花园 的图片,说明现在网站可以使用存储在 OSS 上的图片来显示页面。
版权声明
本文为[阿里云云起实验室]所创,转载请带上原文链接,感谢
https://blog.csdn.net/gangyikeji/article/details/121269440
边栏推荐
- 通过源码探究@ModelAndView如何实现数据与页面的转发
- 基于ECS搭建云上博客(云小宝码上送祝福,免费抽iphone13任务详解)
- Introduction to the top 12 domestic databases in 2021
- Oracle net service: listener and service name resolution method
- Prometheus Thanos与Cortex组件比较
- js 格式化当前时间 日期推算
- 基于EMR离线数据分析-反馈有礼
- Typical application scenarios of alicloud log service SLS
- High performance gateway for interconnection between VPC and IDC based on dpdk
- prometheus告警记录持久化(历史告警保存与统计)
猜你喜欢
Introduction to DDoS attack / defense
Redis FAQ
Winter combat camp hands-on combat - first understand the cloud foundation, hands-on practice ECS ECS ECS novice on the road to get the mouse cloud Xiaobao backpack shadowless
Problems related to Prometheus cortex using block storage
Try catch cannot catch asynchronous errors
搭建基于OSS的图片分享网站-反馈有礼
Winter combat camp hands-on combat - MySQL database rapid deployment practice lead mouse cloud Xiaobao
BPF program of type XDP
Imitation scallop essay reading page
Prometheus Thanos快速指南
随机推荐
switch case时连写常规判断表达式的错误 case和if并用 l
阿里云日志服务sls的典型应用场景
Use the SED command to process text efficiently
基於DPDK實現VPC和IDC間互聯互通的高性能網關
prometheus告警记录持久化(历史告警保存与统计)
[MySQL basics] startup options, system variables and status variables
异常记录-8
Redis 详解(基础+数据类型+事务+持久化+发布订阅+主从复制+哨兵+缓存穿透、击穿、雪崩)
Prometheus Thanos快速指南
Prometheus Cortex架构概述(水平可扩展、高可用、多租户、长期存储)
rdma网络介绍
[step by step, even thousands of miles] MySQL reports a large number of unauthenticated user connection errors
基于ECS搭建云上博客(体验有礼)
异常记录-9
MySQL Server单机部署手册
【漏网之鱼】Ansible AWX调用playbook传参问题
Thanos Compactor组件使用
virtio 与vhost_net介绍
Prometheus Thanos与Cortex组件比较
Ali vector library Icon tutorial (online, download)