0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

s3fsでLinode Object StorageをLinuxサーバーにマウントする

Last updated at Posted at 2022-09-08

Linodeとは

Linode (https://www.linode.com/) は Akamaiが提供するIaaS (Infrastructure as a Service) プラットフォームプロバイダーのサービスです。リノードと発音します。
Akamaiは2022年2月にLinode社の買収を発表しました。
https://www.akamai.com/ja/newsroom/press-release/akamai-to-acquire-linode
クラウドコンピューティングをよりシンプルに、手頃な価格で、誰もが利用できるようにすることで、イノベーションを加速することができます。
https://www.linode.com/ja/alternative-cloud-provider/

Linode Object Storage とは

image.png

Linode Object Storageは様々なリージョンで利用可能なS3互換の低価格なAkamai Cloud Computing Serviceのストレージソリューションです。
ストレージはNVMe SSDにて動作しており、HDDに比べて高いパフォーマンスと低レイテンシーなアクセスを実現することができます。
データ量は250GBから100TB(※1)まで拡張することができ、オブジェクトはリージョン内でレプリケートされており冗長性が担保されています。
インバウンド転送無料、アウトバウンド1TBまでの転送が標準の価格に含まれており、追加の転送料金は1GBあたり0.005ドルとかなり低コストなのが特徴です(※1)。
今後のアップデートではデータ量が最大1PB、オブジェクト数は最大10億に対応する予定があります。

※1 リージョンによって制限や価格が異なります、詳しくはこちらを参照ください。

S3FSとは

クラウドオブジェクトストレージをファイルシステムとして扱えるオープンソースのツールですとなります。
FUSE Filesystem in Userspace を利用して S3 のバケットを Linuxにマウントさせることができます。
GitHub: https://github.com/s3fs-fuse/s3fs-fuse

s3fsでLinode Object StorageをLinuxサーバーにマウントする

Linode Object StorageはS3互換のAPIを備えているため、s3fsを利用することができます。
今回はs3fsを利用してサーバーにObject Storageをマウントする手順となります。
サーバーOSに関してはUbuntuを利用します。

インストール

s3fsをUbuntu 22.04 LTSにインストールし、コマンドが動作するか確認します。

apt update
apt install s3fs
s3fs --version

アクセスキーの準備

Linode Object Storageのアクセスキーをファイルに記載します。

echo "[access_key]:[secret_access_key]" > /etc/passwd-s3fs
chmod 600 /etc/passwd-s3fs

Linode Object Storageのアクセスキーは以下から発行が可能です。

image.png

ディレクトリの作成

Linode Object Storageをマウントするディレクトリを作成します。

mkdir -p /s3fs

fstabの記載

サーバー起動時に自動的にマウントを行うため、fstabにs3fsの記載を行います。

vim /etc/fstab

s3fs#[bucket_name] /s3fs fuse nonempty,allow_other,url=https://[region-id].linodeobjects.com,endpoint=[region-id],passwd_file=/etc/passwd-s3fs 0 0

[bucket_name] : Linode Object Storageで作成したバケット名
[region-id]:Linode Object Storageを作成したregion-id

Bucket Nameはコンソールから確認が可能です。
image.png

各リージョンのRegion IDはこちらから確認できます。

ディスクをマウント

fstabを記載した後に、Linode Object Storageのマウントを行う。

mount -a

dfコマンドでマウントが行われているか確認します。

df -Th
Filesystem     Type       Size  Used Avail Use% Mounted on
s3fs           fuse.s3fs   16E     0   16E   0% /s3fs

以上でインストールは完了となります。

動作検証

参考までに、Linode Object Storageをマウントした際のファイル作成、閲覧の時間を確認します。

今回の検証では、シンガポールリージョンにサーバーを立て、同じリージョンにObject Storageを作成し、s3fsでマウントを行っています。

500個のファイルを作成した際の時間

1分33秒かかりました。

root@localhost:/s3fs# i=1; time while [ $i -le 500 ]
> do
> touch test_$i > /dev/null 2>&1
> i=$((i+1))
> done

real	1m33.043s
user	0m0.451s
sys	0m0.219s

500個のファイルを一覧化する時間

10秒かかりました。

root@localhost:/s3fs# time ls -laR /s3fs > /dev/null

real	0m10.715s
user	0m0.004s
sys	0m0.000s

まとめ

Linode Object Storageをサーバーにマウントすることで、共有ディスクのような利用方法も検討することができます。
通常のディスクと比べて速度が格段に遅いため、利用用途が適しているか慎重に確認する必要があります。
尚、Linodeがs3fsのツールに関してサポートしているわけではありませんのでご注意ください。

関連記事

アカマイ・テクノロジーズ合同会社のQiitaではLinode関連など開発者向けの記事を記載しております。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?