19
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

知られざる OCI 容量予約 の落とし穴

Last updated at Posted at 2025-08-28

OCIを使っていると、以下のような「インスタンスが起動できない」事態に遭遇することがあります

  1. 重要なワークロードでサービス継続が必要な時
  2. リリースされたばかりの最新シェイプを試したい時
  3. GPU搭載インスタンスなど人気があって品薄が続くシェイプを確実に確保したい時

そんな時に使うのが 容量予約(Capacity Reservation) 機能ですが、
この機能には知っておくべき仕様や落とし穴があります。

今回は、OCIの容量予約について、実際に運用で遭遇する問題を中心に解説します。

容量予約とは

必要なときにCPU・メモリリソースを確実に使うために、コンピュートリソースを事前に確保する仕組みです。
他のパブリッククラウドと同様、OCIにも標準されている機能です。

  • 課金
    • 未使用の予約済容量は85%で請求されます。予約完了した時点から即課金されます
    • 容量予約に対して作成されたインスタンスは、100%で請求されます
  • 期間
    • 作成後、容量予約済となればすぐに使えます
  • 公式ドキュメント

容量予約の作成方法(コンソール操作のみ紹介します

1. コンソール操作

OCIコンソール画面にて、左上 1.ハンバーガーメニュー → 2.コンピュート → 3.容量予約
CleanShot 2025-08-28 at 16.30.47.png

2. [容量予約の作成]ボタンを押下

CleanShot 2025-08-28 at 16.32.42.png

3. 容量予約の作成画面

  • 容量予約名: 任意でOK。リージョン、AD、シェイプがわかると見やすいと思います
  • コンパートメント: 作成するコンパートメントは必ず指定、別コンパートメントの容量予約は使用できません
  • 可用性ドメイン: 東京や大阪リージョンは1つしか無いのでそのままでOK。その他複数ADあるリージョンは適切に指定してください

CleanShot 2025-08-28 at 16.34.01.png

  • フォールトドメイン: 既存のインスタンスを容量予約する場合、Dault-Domainの1・2・3を必ずあわせる必要があります
  • シェイプ: 対象のシェイプを指定
  • コア: OCPU数を指定。 ComputeにアタッチするOCPU数を指定してください。 4 OCPUのComputeに 2 OCPUだけ容量予約するようなことはできません
  • メモリ: メモリ数を指定。 Computeにアタッチするメモリ数を指定してください
  • 数: 同じ構成が複数ある場合、まとめて作成することが出来ます

CleanShot 2025-08-28 at 16.40.34.png

4. 作成完了

[次]ボタン → [作成]ボタン

画面遷移後のコンソール中段にて、対象のシェイプ・OCPU数・メモリ数・数が予約されていることを確認
CleanShot 2025-08-28 at 16.46.35.png

Q. 容量予約してるのに、起動できないんですけど!?

A1. それ実は容量予約出来てませんよ?

容量予約作成後、容量構成を見ると、予約済容量が0になってるケースがあります。
これは、指定された数にたいし、「0」個の予約を完了しました、という状態となります。

これはバグでは・・・?と言いたいところですが、残念ながら仕様のようです(2025年8月現在)

CleanShot 2025-08-28 at 16.51.18.png

なので、この状態で容量予約を適用しようとしても、キャパシティが無いよ、と怒られていまいます。

要注意
0で作成されたあと、自動的にリトライする機能はありません!!!!
予約済が確保できるまで再作成する必要があります。

新規Computeに適用

0個予約済(笑)の容量予約を指定
CleanShot 2025-08-28 at 16.59.27.png

別の画面で警告も表示されている
CleanShot 2025-08-28 at 17.01.15.png

作成ボタンを押下するとAPIエラーが表示される
CleanShot 2025-08-28 at 17.02.45.png

既存Computeに適用

既存で起動しているComputeに対して、0個予約済の容量予約を適用とした場合
CleanShot 2025-08-28 at 17.09.42.png

変更の保存を押した際に以下のAPIエラーが表示される
CleanShot 2025-08-28 at 17.10.48.png

A2. インスタンスと容量予約を明示的にアタッチしていないですよ!

容量予約しても、Compute作成時、または既存Computeの変更時に、明示的に容量予約をアタッチしないと使ってくれません。

この状態だと、せっかく容量予約済でもキャパシティ無い旨のAPIエラーが表示されてしまいます
CleanShot 2025-08-28 at 17.33.12.png

既存Computeに適用する手順

コンソールの対象のComputeにて、画面左の 1.アクション → 2.その他のアクション → 3.編集
CleanShot 2025-08-28 at 17.18.23.png

拡張オプションメニューを展開
CleanShot 2025-08-28 at 17.20.09.png

メニュー一番下の「配置」部分のチェックボックスをクリックし、予約済の容量を指定
CleanShot 2025-08-28 at 17.21.15.png

  • 公式の手順

A3. 対象のFD(もしくはAD)が違いますよ?

FD(もしくはAD)が違う容量予約を指定すると以下のAPIエラーが表示されます。
CleanShot 2025-08-28 at 17.23.26.png

19
8
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
19
8

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?