AWS Backup Storageという謎サービスについて調べてみた

2024.06.16

しばたです。

私は定期的にAWS CLIの更新をチェックしているのですが、最近のバージョンでいくつか終了済みサービスのコマンド廃止がありました。

  • Ver.2.16.3
    • Alexa for Buisiness (alexaforbusiness) : The alexaforbusiness client has been removed following the deprecation of the service.
    • Amazon Honeycode (honeycode) : The honeycode client has been removed following the deprecation of the service.
  • Ver.2.16.7
    • AWS Backup Storage (backupstorage) : The backupstorage client has been removed following the deprecation of the service.

Alexa for Buisinessは2023年5月31日 *1、Amazon Honeycodeは2024年4月30日 *2にサービス終了しているので問題ないのですが、AWS Backup Storageについては「そもそもこれは何?そんなサービスあったっけ?」というレベルで謎です。

というわけで本記事ではこの「AWS Backup Storage」について調べてみました。

AWS Backup Storageとは?

このサービスはAWS API Changesによれば2022年8月11日に追加されています。

This is the first public release of AWS Backup Storage. We are exposing some previously-internal APIs for use by external services. These APIs are not meant to be used directly by customers.

とある様にAWS内部APIのいくつかを特定用途向けに公開した模様です。

These APIs are not meant to be used directly by customers.

と記載されている通り、APIはPublicにしたものの全顧客向けでは無く、特定パートナーのみの利用を想定していた様です。
その後は特に変更されることが無いまま2024年6月12日ごろに各種SDKおよびAWS CLIでの廃止が公になりました。

何のためのサービス?

私の記憶の範囲だとこのサービスに関するドキュメントは2022年時点からほとんど無かったはずです。
(当時AWS API Changesの更新を見て調査したが空振りに終わった記憶があります...)
最低限存在していたことが確実なAPIのドキュメントも既に消失しており、他にドキュメントがあったとしても最早消えてしまっている可能性が非常に高いです。

ただ、AWS CLIのドキュメントはまだ残っており、こちらには

The frontend service for Cryo Storage.

という記述がなされています。

また、公開されたAPIは

  • ListChunks
  • PutObject
  • StartObject
  • GetObjectMetadata
  • ListObjects
  • PutChunk
  • DeleteObject
  • NotifyObjectComplete
  • GetChunk

の9つです。

「Cryo Storage *3」が何を指すのかは不明ですが、何らかのバックアップストレージとそれに対する低レベルなデータ操作を行うものと見受けられます。

APIの引数を見るにこのバックアップストレージは

  • バックアップ操作は「ジョブ」単位で制御され、「ジョブ」はストレージの保存領域を兼ねている様に見える
  • オブジェクトとメタデータを持つ
  • オブジェクトにはPrefixが存在する

という特性を持っており、なんとなくS3に似た雰囲気を感じます。

AWSの各種サービスにおいて「バックアップはS3上に保存される (但し利用者には見えないAWS専用領域)」とされており、全く根拠はありませんが、もしかしたらこのAWS Backup Storageサービスはバックアップ用のS3にアクセスするAPIなのかもしれません。
くどいようですが全く根拠は無いので鵜呑みにはしないでください...

加えて、

  • オブジェクトのアップロードには個別にIDが割り当てられる
  • オブジェクトへの書き込みは「チャンク単位」

と操作は低レベルでありEBS Direct APIと似た感じです。
EBS Direct APIは完全にストレージベンダー向けなので、おそらくはこのAWS Backup Storageもストレージベンダーやバックアップソフトベンダー向けなのでしょう。

権限まわり

API周りのドキュメントは既に消失しているのですが、IAMの権限に関するドキュメントはまだ残っていました。

こちらによると前述の9APIの他に

  • CommitBackupJob
  • DescribeBackupJob
  • GetBaseBackup
  • GetIncrementalBaseBackup
  • MountCapsule
  • UpdateObjectComplete

というアクションが存在するのが見て取れます。

エンドポイント

botocoreやAWS CLIの実装からサービス名前空間は「backupstorage」であり、以下のリージョンで利用可能だった様です。

  • af-south-1
  • ap-east-1
  • ap-northeast-1
  • ap-northeast-2
  • ap-northeast-3
  • ap-south-1
  • ap-south-2
  • ap-southeast-1
  • ap-southeast-2
  • ap-southeast-3
  • ap-southeast-4
  • ca-central-1
  • eu-central-1
  • eu-central-2
  • eu-north-1
  • eu-south-1
  • eu-south-2
  • eu-west-1
  • eu-west-2
  • eu-west-3
  • me-central-1
  • me-south-1
  • sa-east-1
  • us-east-1
  • us-east-2
  • us-west-1
  • us-west-2
  • (中国) cn-north-1
  • (中国) cn-northwest-1
  • (AWS GovCloud) us-gov-east-1
  • (AWS GovCloud) us-gov-west-1

中国リージョンやAWS GovCloudも含むほぼ全リージョン *4が対象となっています。
なお、本日時点で既にエンドポイントは消失済みなのでAPIを試すことはできませんでした。

最後に

簡単ですが以上となります。

我々一般の利用者にとっては特に気にする必要はなく「いつの間にか増え、いつのまにか終了した」サービスです。
本記事の内容はちょっとしたトリビアくらいに捉えて頂ければ幸いです。

脚注

  1. 公開されたブログ等は無いものの利用者向けに個別の通知は行われています。
  2. https://dev.classmethod.jp/articles/honeycode-end-the-beta-service/
  3. 一般的には凍結保存容器を指す模様
  4. 最近増えたテルアビブやカルガリーリージョンは対象外