0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

(OCI) Oracle Cloud Infrastructure コンパートメントの落とし穴

0
Last updated at Posted at 2023-04-11

AWS と OCI のマルチクラウド環境構築中の社内SEです。
AWS は運用歴5年で OCI は初となります。苦労しながら構築しています。

この記事にはコンパートメントの概念や説明等はありません。
コンパートメントを利用した運用を計画したが頓挫してしまい、
ルートのみの運用に戻したお話となります。

OCI コンソールの利用者(管理者?)は

 1. コンパートメントの概念を知っていないといけない。
 2. 子のリソースが親のリソースに表示されない。
  2-1. 設計(構成)が頭に無いといけない。
  2-2. 画面遷移の度にコンパートメントを変更しなければいけない。
 3. MySQL はリソースの移動に対応していない。

に頭を悩まされます。


「1.」おそらく OCI の売りにしたいのだろうと思うのですが、非常にわかり辛いです。
皆様も検索に苦労されていると思います。はっきり言いまして VMware 時代からやっていた、
アクセス権のコントロールで十分可能です。理由は主に「2.」に記載します。


「2.」が非常につらいです。
「えっと、このセキュリティ・リストはAというコンパートメントにあって…、だけどこのサブネットはBというコンパートメントあって」とか、「あれ?、セキュリティ・リストがないぞ…、どこにあるのかなぁ。A→B→Cとあった」みたいな事になります。

コンパートメントの概念があるリソースと無いリソースがあるのも非常に面倒です。【ロードバランサー】は紐づくリソースの【リスナー】および【バックエンドセット】にはコンパートメントの概念はありません。それに対して【ボールド】に紐づく【キー】はコンパートメントの概念があり、別々に配置可能です。結果「あれボールドの下にキーが無いぞ。作ってなかったかな?」とかになりかねません。というか何度もなりました。


「3.」これはイカンでしょうといいたいです。
MySQL を作り直さないといけません。


利点をあげるとしましたら、プロジェクトや部署ごとにコストを管理することができます。
但し、コストに関したら「タグ別コスト」が出せますのでコンパートメントで括る必要性はないかなと感じます。

予想ですがバージョンアップによって将来的には子のリソースが親のリソースに表示できるようになると思います。これがないとかなり厳しいです。

◆おまけ

Q. コンパートメント削除時にリソースが残っていたらどうなるのか?
A. リソースがまだコンパートメントに存在する場合、削除アクションは失敗し、コンパートメントはアクティブ状態に戻ります。

image.png

失敗の前に警告を出して欲しいです。
一旦「削除中」のステータスになり、しばらく待たされます。画面を見たら「アクティブ」に戻っていました。CLI で探せそうな気がしますが、CLI も学習中なので今は手で探しています。

◆追記(2023/04/11)

「コンパートメントが空ではありません。」と警告が出るパターンもあるようです。
おまけの画像は移動し忘れたリソースが残っていました。
今回の警告は予想ですが、サブコンパートメントのステータスが「削除済み」で残っているからではと思っております。現在調査中です。

image.png

0
0
2

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
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?