hicloud S3雲儲存
目的:將s3的bucket掛載到Caas雲伺服器
主機環境:CentOS 6.4
說明:s3fs base on fuse所以伺服器上必須有fuse的lib
示意圖:
- Resource:
s3fs-fuse 安裝
一、下載s3fs-fuse源碼進行安裝
二、安裝所需套件
- CentOS7
yum install automake fuse fuse-devel gcc-c++ git libcurl-devel libxml2-devel make openssl-devel
- CentOS6
yum install automake gcc-c++ git libcurl-devel libxml2-devel make openssl-devel
fuse fuse-devel 版本必須大於 2.8.4,CentOS6 yum install只有2.8.3,所以必須手動安裝(安裝步驟於下方),安裝完成後,重這裡接續安裝即可.
三、安裝步驟
git clone https://github.com/s3fs-fuse/s3fs-fuse.git
cd s3fs-fuse
./autogen.sh
./configure -prefix=/usr
make
make install
四、設定
要存取Hicloud的s3必須先申請一組access key與secret key
將key info寫入設定檔中
vi /etc/passwd-s3fs
#Access Key:Secret Key 以冒號(:)區隔
#ex:
2d69bf8ca60c2381dd1fg2as4f10s:97761d0f114562r2gfd0256436ec
五、掛載
- Only ROOT
s3fs -o url=http://s3.hicloud.net.tw/,nomultipart test-123 /mnt/test-123
- All USER
s3fs -o url=http://s3.hicloud.net.tw/,nomultipart test-123 /mnt/test-123 -o allow_other
注意:
下 mount 指令時,若出現 should not have others permissions 時,
這時候下 chmod o-rwx /etc/passwd-s3fs
關掉其他人的權限後,再下一次 mount 指令就可以正常運作。
libfuse 安裝
一、下載源碼編譯安裝或者下載release版本安裝
二、安裝
檢查版本如果 <2.8.4 必須安裝至大於的版本
rpm -qa | grep fuse
rpm -qa | grep fuse-devel
yum remove fuse fuse-devel
./configure
make -j8
make install
三、設定
安裝完成後會在 /usr/local/lib 產生連結,將這個路徑加入到 /etc/ld.so.conf 然後執行 ldconfig
刷新
export PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
結語
感覺上s3fs在單一的大檔案傳輸速度還可以,零碎的檔案多的話,就不是很理想了