Vultr Object Storageのレビュー:実際に使ってみた

Vultr Object Storageは、クラウドプラットフォームのVultrが提供しているAWS S3互換のクラウドストレージです。

本記事では、現役ウェブエンジニアの筆者が、Vultr Object Storageの構造、パフォーマンス指標、料金、使ってみて感じたメリット・デメリット、および具体的な使い方を解説します。

Vultr Object Storageとは

Vultr Object Storageは、クラウドプラットフォームのVultrが提供しているストレージソリューションです。Vultrは他にもファイルストレージやブロックストレージなどのストレージソリューションを提供していますが、Object StorageはHTTPエンドポイントを使ってインターネットからアクセスできるという点が異なります。

S3互換APIを持つため、S3に対応しているツール(例:s3cmd、AWS CLI)をほぼそのまま使うことが可能です。

主な用途:

  • メディアサーバ:画像、音声、動画などアプリケーションのメディアアセットのホスティング。
  • バックアップ:データの自動バックアップ。
  • ログ:長期ログ保存。

Vultr Object Storageの階層別用途

Vultrには異なる階層(Tier)のObject Storageがあり、階層ごとに性能や想定用途が異なります。

  • Standard Tier:大容量を低コストで保存したり、VPSと連携するための階層。
    • 主な用途:長期ストレージ、バックアップ、ログなど
  • Premium Tier:Standardよりも高スループットの階層。
    • 主な用途:コンテンツ配信、動的サイト、アプリケーションデータ、トランザクションデータの書き込み
  • Performance Tier:NVMeを使った高パフォーマンス用の階層。
    • 主な用途:AI・機械学習モデルトレーニングのデータ、クラウドネイティブ・アプリ、在庫データ追跡。
  • Accelerated Tier:NVMeを使った高速、低遅延、大量の書き込みに適した最上位の階層。
    • 主な用途:リアルタイム解析、リアルタイムの意思決定用AIデプロイ
  • Archival Tier:アーカイブ用の最安値ストレージ。1ヶ月に1回ほどのアクセスを想定。
    • 主な用途:データアーカイブ、バックアップ、災害復旧、コンテンツの長期保管

各階層の最大パフォーマンス

階層保存インデックスI/Oスループット
StandardHDDSSD800 IOPS600 Mbps
Premium HDDSSD1,000 IOPS800 Mbps
Performance NVMeNVMe4,000 IOPS1 Gbps
AcceleratedNVMeNVMe10,000 IOPS5 Gbps

注)Archivalはアーカイブ用のため、パフォーマンス指標は非公開となっています。

オブジェクトストレージはバケットの上位の概念で、同じオブジェクトストレージの中に複数のバケットを作成できます。また、同じ階層のオブジェクトストレージを同一リージョンで複数作成することはできません。

Object Storageのツリー構造:

  • リージョン(例:シンガポール)
    • Object Storage 1 (Standard階層)
      • Bucket 1
        • Folder
          • Object
        • Object
      • Bucket 2
    • Object Storage 2 (Premium階層)
      • Bucket 3
      • Bucket 4

1TBあたりの保存容量の料金も階層ごとに異なるため、自身のアプリケーションと予算に適した階層を選択することが重要です。

もし自身のアプリケーションにどの階層が適しているかがわからない場合は、まずはStandardで試してみて、もっとパフォーマンスが必要になったら上位階層に切り替えると良いでしょう。

Vultr Object Storageの料金

Vultr Object Storageの料金は、階層ごとに異なる月額固定料金制です。すべての階層で1TB(テラバイト)の保存容量が基本契約に割り当てられ、超過分は従量課金となります。

階層別の月額料金表

階層ディスク容量の月額1TB以上の料金
Standard$18/TB$0.018/GB
Premium $36/TB$0.036/GB
Performance $50/TB$0.05/GB
Accelerated$100/TB$0.10/GB
Archival$6/TB$0.006/GB

すべての階層には1TBの無料転送枠が付いており、超過した場合の転送料金は$0.01/GBです。また、インバウンド・トラフィックは無料で、アウトバウンド・トラフィックのみが転送枠に対してカウントされます。

Vultr Object Storageのリージョン

Vultr Object Storageは、Vultrが運営している世界33のリージョンの内、14リージョンで利用可能です。

日本では東京リージョンが利用可能です。

ただし、オブジェクトストレージの階層によって利用可能リージョンは異なりますので、注意が必要です。

例:Standard Tierの利用可能リージョン

Vultr Object Storageのメリット

筆者が使って感じたVultr Object Storageのメリットです。

固定金額で複数バケットを運用できる

VultrのObject Storageは階層ごとの月額固定料金制です。

そのため、用途の異なる複数のバケットがあっても、同じ階層ストレージ内であれば追加料金はかかりません。

例えば以下のように、アプリケーション別、環境別、用途別のバケットを同じ階層ストレージにまとめることが出来ます。

  • Standard階層ストレージ
    • バケット1(アプリケーション1本番環境メディアファイル)
    • バケット2(アプリケーション1本番環境ログ)
    • バケット3(アプリケーション1本番環境DBバックアップ)
    • バケット4(アプリケーション1ステージング環境メディアファイル)
    • バケット5 (アプリケーション2本番環境メディアファイル)

同じ階層内の複数バケット:

ギガバイトあたりの保存コストが激安

Vultr Object StorageのGB(ギガバイト)あたりの料金は、Standard階層で月額$0.018($18/TB = $0.018/GB)で非常に安価です。

どれほどコスパが良いのかは、S3と比べてみるとよくわかります。

S3標準クラス(東京リージョン)の料金表

最初の 50 TB/月USD 0.025/GB
次の 450 TB/月USD 0.024/GB
500 TB/月以上USD 0.023/GB

S3も保存容量が多くなるほど単価は下がりますが、500TB以上の容量があってもVultrの方がはるかに安いことがわかります。

S3互換APIによる既存資産活用

いくらコスパが良くても、移行コストがかかるのであればS3からの乗り換えは困難です。

その点、Vultr Object StorageはS3互換APIを持つため、エンドポイントやクレデンシャルなどの設定を変えるだけで既存コードやツールをそのまま使い続けられます。

VultrのS3互換エンドポイントとクレデンシャル:

デメリット

メリットだけでなく、筆者が感じたデメリットもお伝えします。

東京リージョンでStandardとArchival階層が未対応

メディア配信ならStandard階層、長期保存ならArchival階層(またはStandard階層のアーカイブ機能)がコスパの良い運用ですが、本記事執筆時点ではこの2つの階層は東京リージョンで未対応です。

そのため、日本国内向けにメディア配信したい場合は、東京リージョンでPerformanceなどの上位階層にするか、別のリージョン(最寄りはシンガポール)でStandard階層を運用するかが現実的な選択になります。

ただ、保管場所が別リージョンであっても、VultrのCDNソリューションと組み合わせればエンドユーザに遅延は発生しないので、そこまで致命的なデメリットではないでしょう。

また、東京リージョンでもすべての階層が使えるよう近い将来整備される可能性は十分にあります。

保存容量が少ないとS3より割高

Vultr Object Storageはギガバイトあたりの単価は安いですが月額固定料金のため、1TBの容量を有効活用できないと従量課金のAWS S3と比べて割高になる可能性があります。

VultrのStandard階層が月額$18、AWS S3標準ストレージクラスが$0.025 / GBなので、保存容量だけの単純計算だと720GB(18 / 0.025)以下ではVultrの方が割高です。S3には転送量の課金もあるので、転送量によってはもう少し少ない容量で損益分岐点に到達する可能性はあります。

初期コストを抑えるためには、以下のような対策が有効です。

  • 1つの階層ストレージで複数バケットを集中運用して容量をまとめる。
  • 容量が少ないうちはS3で運用し、増えてきたらVultrに移行する。

静的ウェブサイトをホストできない

Vultr Object Storageには、静的ウェブサイトのホスティング機能はありません。

VultrのVPSを使えば月額数ドルでホスティングできますが、静的ウェブサイトだけのためにサーバ設定や管理をしたくない方は素直にS3など別のソリューションを使った方が良いでしょう。

Vultr Object Storageの使い方

前提:Vultrのアカウントを作成

Vultrのアカウントを持っていない方は、以下の公式サイトで作成してください。本サイト経由であれば$300クレジットがアカウント登録時に付与されるため、Object Storageを始めとするVultrの各種機能を無料で試すことができます。

登録方法は以下の記事内で詳しく解説していますので、参考にしてください。

オブジェクトストレージの作成

管理コンソールの左メニューから「Storage」->「Object Storage」-> 「Create Object Storage」をクリックします。

Tier、Name、Locationを入力し、「Create Object Storage」ボタンをクリックします。本記事では以下の通り設定します。

  • Tier: Standard
  • Name: test
  • Location: Singapore

バケット作成

オブジェクトストレージのステータスが「Active」になったら、ストレージ名をクリックします。

ストレージ詳細画面に遷移するので、「Create Bucket」ボタンでバケットを作成します。

バケット名を入力し、「Create Bucket」をクリックします。

作成されたバケット名をクリックします。

「Upload File」をクリックしてファイルをアップロードします。

ファイルが表示されたら保存成功です。

オブジェクトのパーミッション

アップロードしたオブジェクトのパーミッションはデフォルトではプライベートで、アクセスにはクレデンシャル(アクセスキーとシークレットキー)が必要です。

Vultr Object Storage Credentials

保存したオブジェクトをウェブサイトで表示するなど一般向けに公開するには、オブジェクトの設定で「Permission Based Access」を無効にして保存します。

一般公開になったオブジェクトの設定画面で「Copy URL」をクリックしてブラウザに貼り付けると、オブジェクトにアクセスできます。

なお、本記事のデモでは個別オブジェクトのパーミッションを管理画面から設定していますが、以下のようにバケットポリシーをJSONで一括設定することも可能です。

{
"Version": "2012-10-17",
"Statement": [
    {
    "Sid": "PublicReadGetObject",
    "Effect": "Allow",
    "Principal": "*",
    "Action": [
        "s3:GetObject"
    ],
    "Resource": [
        "arn:aws:s3:::BUCKET_NAME/*"
    ]
    }
]
}

オブジェクトのアーカイブとライフサイクル

専用のアーカイブ階層に加え、Standard階層ではライフサイクルポリシーによって特定バケット内のオブジェクトをアーカイブすることが可能です。

アーカイブされたオブジェクトにはStandard階層の通常料金(月額$0.018/GB)ではなく、割引料金(月額$0.006/GB)が適用されます。

1.オブジェクトストレージ詳細画面のバケット一覧で設定アイコンをクリック。

2. 「Archival Storage」を有効化し、「Save Changes」で保存。

再度バケット設定を開くと、ライフサイクルが表示されます。デフォルトでは0日ですが、「Days」タグの数字を編集することで変更可能です。

まとめ:Vultr Object StorageはS3よりも低コストのオブジェクトストレージ

まとめると、Vultr Object Storageは以下のような人におすすめです。

  • Vultr VPSを使っている人:VPSとObject Storage間でオブジェクトの受け渡しが可能です。
  • S3よりも安価にオブジェクトを保存したい人:複数バケットの合計でおおよそ700GB以上の容量であれば、S3よりも安く運用できます。

興味がある方はぜひ以下の公式サイトから登録して試してみてください。