一、基礎(chǔ)概要
1. 主要的存儲類型
不管是本地存儲還是在云環(huán)境中,都有三種主要的存儲類型: 塊存儲、文件存儲和對象存儲。
1.1 塊存儲
塊存儲是一種將數(shù)據(jù)存儲為固定大小塊的數(shù)據(jù)存儲方式。
塊存儲將數(shù)據(jù)分成多個塊,每個塊的大小通常是固定的,比如4KB、8KB、16KB等。
塊存儲的數(shù)據(jù)結(jié)構(gòu)相對固定,無法進行自由的調(diào)整。
塊存儲通常用于文件系統(tǒng)、關(guān)系型數(shù)據(jù)庫等領(lǐng)域,常常用于存儲大量的數(shù)據(jù),以提高數(shù)據(jù)讀寫效率。
塊存儲的優(yōu)勢在于存儲效率較高,可以快速存儲和檢索數(shù)據(jù)。
1.2 文件存儲
文件存儲是一種將數(shù)據(jù)存儲為文件的數(shù)據(jù)存儲方式。
文件存儲將數(shù)據(jù)分成多個文件,每個文件可以包含多個數(shù)據(jù)塊。文件存儲通常用于存儲大量的數(shù)據(jù),可以通過文件系統(tǒng)等方式進行管理和訪問。
文件存儲的優(yōu)勢在于可以靈活地管理和訪問數(shù)據(jù),并且可以支持大規(guī)模的數(shù)據(jù)存儲和管理
1.3 對象存儲
對象存儲是一種新型的云存儲服務(wù),它將數(shù)據(jù)存儲為對象的形式,可以更好地滿足大量非結(jié)構(gòu)化數(shù)據(jù)存儲和管理的需求。
對象存儲將數(shù)據(jù)分為多個層次,每個層次都有自己的命名空間和屬性。每個對象都有一個唯一的標(biāo)識符,可以通過這個標(biāo)識符訪問和管理數(shù)據(jù)。
對象存儲經(jīng)濟高效,是一個非常適用于靜態(tài)數(shù)據(jù)的存儲系統(tǒng),其靈活性和扁平性意味著它可以通過擴展來存儲極大量的數(shù)據(jù)。對象具有足夠的信息供應(yīng)用快速查找數(shù)據(jù),并且擅長存儲非結(jié)構(gòu)化數(shù)據(jù)。
2. 對象存儲OSS
2.1 存儲空間
用戶用于存儲對象(Object)的容器,所有的對象都必須隸屬于某個存儲空間,提供了標(biāo)準(zhǔn)存儲、低頻訪問存儲、歸檔存儲、冷歸檔存儲等存儲類型。
個人網(wǎng)盤頻繁的進行文件上傳、下載、分享等操作;個人網(wǎng)盤需要頻繁的進行文件上傳、下載、分享等操作,該實驗我們選擇使用“標(biāo)準(zhǔn)存儲”。
標(biāo)準(zhǔn)存儲適用于各種社交、分享類的圖片、音視頻應(yīng)用、大型網(wǎng)站、大數(shù)據(jù)分析等業(yè)務(wù)場景。
2.2 地域
OSS的數(shù)據(jù)中心所在物理位置。
阿里云地域選擇可以遵循就近原則,優(yōu)先選擇更靠近用戶群的地域節(jié)點。本實驗地域優(yōu)先選擇“華東2(上海)” 。
2.3 對象
對象是OSS存儲數(shù)據(jù)的基本單元,也被稱為OSS的文件。
在個人網(wǎng)盤場景中,Object為存放在對象存儲OSS Bucket中的照片文件、文本文件、視頻文件等。
2.4 讀寫權(quán)限
通過Bucket ACL權(quán)限列表與權(quán)限描述,本實驗設(shè)置Bucket ACL權(quán)限為私有,Bucket的擁有者可以對該Bucket內(nèi)的文件進行讀寫操作,其他人無法訪問該Bucket內(nèi)的文件。
2.5 訪問域名(Endpoint)
OSS對外服務(wù)的訪問域名,Endpoint格式為:
外網(wǎng)Endpoint是oss-{Region}.aliyuncs.com
,
內(nèi)網(wǎng)Endpoint是oss-{Region}-internal.aliyuncs.com
。
通過OSS內(nèi)網(wǎng)地址訪問OSS資源時,不收取流量費用。個人網(wǎng)盤場景中ECS實例部署的網(wǎng)盤軟件可以調(diào)用OSS內(nèi)網(wǎng)Endpoint。
2.6 訪問密鑰
簡稱AK,指的是訪問身份驗證中用到的AccessKeyId和AccessKeySecret。
OSS通過使用AccessKeyId和AccessKeySecret對稱加密的方法來驗證某個請求的發(fā)送者身份,可通過控制臺創(chuàng)建AccessKey
AccessKey的來源有:
1、Bucket的擁有者申請的AccessKey。
2、被Bucket的擁有者通過RAM授權(quán)給第三方請求者的AccessKey。
3、被Bucket的擁有者通過STS授權(quán)給第三方請求者的AccessKey。
了解Endpoint和Accesskey的概念后,在使用SDK或工具時,需要配置訪問域名(Endpoint)和訪問密鑰(Accesskey)。
2.7 常用功能
(1)創(chuàng)建存儲空間
根據(jù)實際需求,創(chuàng)建不同類型的存儲空間來存儲不同的數(shù)據(jù);
(2)上傳文件
上傳文件到OSS前,必須先在阿里云的任意一個地域創(chuàng)建一個存儲空間。
創(chuàng)建存儲空間后,您可以上傳任意文件到該存儲空間。有簡單上傳、分片上傳、追加上傳等方式;
(3)列舉文件
Object上傳成功后,默認(rèn)按照字母序排列??梢粤信e出當(dāng)前Bucket的所有Object、指定前綴的Object、指定個數(shù)的Object等;
(4)搜索文件
Object上傳成功之后,可以通過搜索文件或者文件夾的方式進行搜索,快速查找目標(biāo)文件;
(5)分享文件
文件上傳至存儲空間后,您可以將文件URL分享給第三方,供其下載或預(yù)覽;
(6)下載文件
當(dāng)文件(Object)上傳至存儲空間(Bucket)后,您可以將文件下載至瀏覽器默認(rèn)路徑或本地指定路徑;
(7)刪除文件
可以一次刪除單個或者多個文件、碎片等。您可以定期刪除過期文件,節(jié)省您的存儲空間。
2.8 資源訪問方式
阿里云對象存儲OSS提供了多種訪問及操作OSS資源的方式:阿里云控制臺、OSS提供的工具、OSS提供的SDK。
3. 個人網(wǎng)盤架構(gòu)
本實驗使用ECS安裝Cloudreve提供網(wǎng)盤服務(wù),OSS提供存儲服務(wù)。
當(dāng)用戶使用個人網(wǎng)盤時,訪問部署Cloudreve ECS的公網(wǎng)IP地址即可完成文件上傳、下載、刪除、分享等服務(wù)。
3.1 Cloudreve
Cloudreve可快速構(gòu)建出兼?zhèn)渥杂没蚬玫木W(wǎng)盤服務(wù),通過多種存儲策略的支持、虛擬文件系統(tǒng)等特性實現(xiàn)靈活的文件管理體驗。
3.2 ossfs
ossfs能讓您在Linux系統(tǒng)中,將對象存儲OSS的存儲空間(Bucket)掛載到本地文件系統(tǒng)中,能夠像操作本地文件一樣操作OSS的對象(Object),實現(xiàn)數(shù)據(jù)的共享。
二、基于OSS快速搭建個人網(wǎng)站
1. 登錄OSS控制臺
在阿里云臺首頁點擊創(chuàng)建資源,會生成如下內(nèi)容,AK ID和AK Secret
創(chuàng)建好之后,默認(rèn)進入如下命令行界面,我們選擇右側(cè)的遠(yuǎn)程桌面
進入遠(yuǎn)程桌面后,單擊桌面Chromium Web Browser圖標(biāo),打開瀏覽器會自動打開阿里云RAM用戶登錄頁面。
在登錄界面輸入剛剛生成資源中的用戶名
輸入密碼
完成RAM用戶登錄后,然后單擊瀏覽器阿里云控制臺首頁頁面左上角圖標(biāo)
搜索框輸入"OSS",單擊搜索結(jié)果中的對象存儲OSS,進入OSS管理控制臺。
已經(jīng)進入OSS管理控制臺
2. 創(chuàng)建OSS Bucket
在OSS管理控制臺,選擇Bucket列表,單擊創(chuàng)建Bucket,進行Bucket的創(chuàng)建。
創(chuàng)建Bucket時,填入Bucket名稱,選擇正確的地域,其它參數(shù)使用默認(rèn)值,單擊確認(rèn)完成Bucket的創(chuàng)建。
這里名稱我用九芒星的英文
ninemangstars
地域根據(jù)最開始生成的資源,找到對應(yīng)的地域
個人網(wǎng)盤場景中需要和ECS實例處于同一個地域。這里用的上海
3. 安裝Cloudreve
提交之后,在實驗頁面右側(cè)導(dǎo)航欄,單擊圖標(biāo),切換至Web Terminal。
3.1 下載安裝包
執(zhí)行如下命令,下載cloudreve安裝包。
wget https://labfileapp.oss-cn-hangzhou.aliyuncs.com/cloudreve_3.3.1_linux_amd64.tar.gz
wget 是Linux系統(tǒng)用于從Web下載文件的命令行工具。wget加上需要下載文件的鏈接,即可完成文件的下載。
返回結(jié)果如下所示,即完成cloudreve安裝包的下載。
3.2 解壓
下載完畢后,執(zhí)行如下命令,解壓cloudreve安裝包。
tar -zxvf cloudreve_3.3.1_linux_amd64.tar.gz
tar是Linux系統(tǒng)用于解壓與壓縮命令,解壓參數(shù)中
z表示配合解壓.gz類型的壓縮包
x表示解壓縮
v表示顯示解壓縮詳細(xì)信息
f表示被處理文件。
返回結(jié)果如下所示,即完成cloudreve安裝包的解壓。
3.3 授權(quán)
執(zhí)行如下命令,給cloudreve授予權(quán)限。
chmod +x ./cloudreve
chmod用于改變文件或目錄的訪問權(quán)限,+x表示賦予可執(zhí)行權(quán)限,下一步需要運行cloudreve程序,所以必須賦予cloudreve可執(zhí)行權(quán)限。
執(zhí)行如下命令,運行cloudreve。
./cloudreve
返回結(jié)果如下所示,可以看到初始管理員賬號、初始管理員密碼和監(jiān)聽端口。
初始密碼是隨機生成的,這需要記錄初始管理員賬號、密碼和端口,后面會用到
初始管理員賬號:admin@cloudreve.org
初始管理員密碼:7jx2gsnr
開始監(jiān)聽 :5212
3.4 驗證Cloudreve
網(wǎng)盤訪問時,需要使用到公網(wǎng)IP,故需要獲取ECS實例的公網(wǎng)地址。
通過實驗室左側(cè)導(dǎo)航欄,點擊云產(chǎn)品資源,通過ECS云服務(wù)器下方彈性IP選項獲取。
在本地瀏覽器中,打開,訪問http://<ECS公網(wǎng)地址>:<cloudreve監(jiān)聽端口>
http://47.103.110.136:5212
進入登錄頁
依次輸入初始化管理員賬號和初始化管理員密碼,單擊登錄。
登錄成功
可以看到,后臺接收到登錄的日志
在終端中按下Ctrl+C鍵,停止cloudreve運行。
4. 安裝ossfs
ossfs可以在Linux系統(tǒng)中,將對象存儲OSS的存儲空間(Bucket)掛載到本地文件系統(tǒng)中
能夠像操作本地文件一樣操作OSS的對象(Object),實現(xiàn)數(shù)據(jù)的共享。
在本實驗場景中通過ossfs掛載OSS Bucket到ECS實例中,作為個人網(wǎng)盤的存儲使用。
4.1 下載ossfs
執(zhí)行如下命令,下載ossfs安裝包。
wget https://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos8.0_x86_64.rpm
下載完用ls來查看是否下載成功
4.2 安裝ossfs
這里用到y(tǒng)um安裝
yum是一個在 Fedora 和 RedHat 以及 SUSE 中的 Shell 前端軟件包管理器。
能夠從指定的服務(wù)器自動下載 RPM 包并且安裝,可以自動處理依賴性關(guān)系,并且一次安裝所有依賴的軟件包,無須繁瑣地一次次下載、安裝。
在本場景中我們需要安裝ossfs軟件,在安裝ossfs過程中通過yum可以自動下載和安裝ossfs軟件的依賴軟件包。
實驗環(huán)境ECS系統(tǒng)為Centos 8,由于Centos8 yum官方源下線,需要更換為阿里云yum源。
4.2.1 刪除過期.repo
先刪除系統(tǒng)內(nèi)過期的.repo文件
rm -f /etc/yum.repos.d/*
然后下載新的 CentOS-Base.repo 到 /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-vault-8.5.2111.repo
最后運行 yum makecache 生成緩存
yum clean all && yum makecache
最終完成yum源的更換
4.3 安裝ossfs
使用yum命令安裝ossfs時
yum install xx.rpm表示為安裝xx.rpm軟件包
-y參數(shù)表示安裝過程中自動選擇yes
回車,安裝
yum install -y ./ossfs_1.80.6_centos8.0_x86_64.rpm
執(zhí)行安裝命令后返回結(jié)果顯示Complete!表示ossfs安裝成功。
4.4 配置ossfs
首先要獲取到OSS Bucket和AccessKey ID和AccessKey Secret信息。
名字在OSS控制臺可以看到,我用的九芒星英文
nine-mangstars
ID和KEY可以在最開始生成的資源中找到
執(zhí)行下列命令,將Bucket名稱以及具有此Bucket訪問權(quán)限的AccessKey ID和AccessKey Secret信息存放在/etc/passwd-ossfs文件中。
echo nine-mangstars:LTAIEGhXytkJ8tmA:GVOL1mQPdcnJ23dKStnaY6mz3cl8DH > /etc/passwd-ossfs
執(zhí)行如下命令,給passwd-ossfs文件授予權(quán)限。
注意:后續(xù)掛載OSS Bucket階段,需要使用passwd-ossfs中的AccessKeyId和AccessKeySecret去驗證是否具有passwd-ossfs文件中Bucket的權(quán)限。
chmod 640 /etc/passwd-ossfs
5. 掛載OSS Bucket
5.1 創(chuàng)建掛載點
執(zhí)行如下命令,創(chuàng)建一個名為oss文件夾
mkdir oss
5.2 手動掛載OSS Bucket
執(zhí)行如下命令
將Bucket掛載到指定目錄/root/oss,
ossfs nine-mangstars /root/oss -o url=oss-cn-shanghai-internal.aliyuncs.com
OSS的ECS的經(jīng)典網(wǎng)絡(luò)訪問(內(nèi)網(wǎng))的Endpoint,可在Bucket列表>>Bucket概覽>>訪問端口中查看(也就是url后面的內(nèi)容)
查看是否掛載成功
df -h
返回如下則說明掛載成功
5.3 設(shè)置開機自動掛載
執(zhí)行如下命令,在/etc/init.d/目錄下建立文件ossfs
設(shè)置ECS開機自動啟動腳本進行OSS Bucket自動掛載。
進入Vim編輯器。
vim /etc/init.d/ossfs
在編輯器模式中粘貼這段腳本
其中最后一行的Bucket名字和url要換成自己的
#! /bin/bash
#
# ossfs Automount Aliyun OSS Bucket in the specified direcotry.
#
# chkconfig: 2345 90 10
# description: Activates/Deactivates ossfs configured to start at boot time.
ossfs nine-mangstars /root/oss -o url=oss-cn-shanghai-internal.aliyuncs.com -oallow_other
粘貼
保存后:wq退出
執(zhí)行如下命令,為新建立的ossfs腳本賦予可執(zhí)行權(quán)限。
chmod a+x /etc/init.d/ossfs
執(zhí)行如下命令,把ossfs啟動腳本作為其他服務(wù),開機自動啟動。
chkconfig ossfs on
6. 配置個人網(wǎng)盤
6.1 運行Cloudreve
執(zhí)行如下命令,運行cloudreve。
./cloudreve
6.2 配置Cloudreve
配置cloudreve主要是對存儲策略進行配置,并將存儲策略與用戶組進行綁定。
存儲策略定義了文件的存儲平臺、上傳和功能限制。用戶組與存儲策略綁定,此用戶組下的用戶將共享同一個存儲策略。
首先切換為遠(yuǎn)程登錄cloudreve。打開瀏覽器,訪問
http://47.103.110.136:5212
說明:通過云產(chǎn)品資源列表查看ECS的公網(wǎng)地址
http://<ECS公網(wǎng)地址>:<cloudreve監(jiān)聽端口>
輸入之前隨機生成的賬號和密碼
在cloudreve主界面右上角,單擊管理面板。
在確定站點URL設(shè)置對話框中,單擊更改。
6.2.1 配置存儲策略
在左側(cè)導(dǎo)航欄中,單擊存儲策略,添加存儲策略
選擇本機存儲
在添加本機存儲策略的上傳路徑頁面中,將存儲目錄修改為
/root/oss/uploads/{uid}/{path}
/root/oss為oss Bucket的掛載點。
然后默認(rèn)下一步
在添加本機存儲策略的直鏈設(shè)置頁面中,單擊下一步。
在添加本機存儲策略的上傳限制頁面中,單擊下一步。
在添加本機存儲策略的完成頁面中,輸入存儲策略名OSS,單擊完成。
6.2.2 配置用戶組
在左側(cè)導(dǎo)航欄中,單擊用戶組,管理員編輯
在編輯管理員頁面的存儲策略中,選擇oss,然后單擊保存
6.2.3 上傳文件
返回主頁后,任意上傳一個文件到個人網(wǎng)盤
6.2.4 OSS驗證結(jié)果
切換到命令行界面,可以看到剛剛上傳的文件
然后再次回到遠(yuǎn)程桌面
https://oss.console.aliyun.com/
在RAM用戶登錄框中單擊下一步,并復(fù)制粘貼頁面左上角的子用戶密碼到用戶密碼輸入框,單擊登錄。
在左側(cè)導(dǎo)航欄中,單擊Bucket列表。找到創(chuàng)建的Bucket,單擊Bucket名稱。
在文件列表頁面,根據(jù)云產(chǎn)品資源列表中的Object路徑,單擊對應(yīng)的文件夾名稱,在文件名為1的文件夾下存放著剛剛上傳的文件
即CSDN九芒星.txt文章來源:http://www.zghlxwxcb.cn/news/detail-623795.html
文章來源地址http://www.zghlxwxcb.cn/news/detail-623795.html
到了這里,關(guān)于【云存儲】使用OSS快速搭建個人網(wǎng)盤教程(阿里云)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!