これまでAWSメインでパブリッククラウド関連業務に携わってきたが、最近OCI(Oracle Cloud Infrastructure)がよく話題に挙がるようになった。
どうも2022年3月まで入門編の公式資格(OCI Foundations Associate)がキャンペーンで無料受験できるらしいので、年末年始の暇潰しとしてチャレンジしてみることにする。
試験自体に関しては@hamham氏がいい感じにまとめてくれているので、この記事では具体的な勉強法や学習内容のサマリーを残していく。
OCI勉強前の個人的なイメージ
- 後発系パブクラ。3大クラウドより知名度も低め。
- 安さがウリ。特にアウトバンド向け通信料が一定まで無料というのはよく聞く。
- Oracle製品との親和性が高い。社内でも「現行システムがRACを使っているのでそのままリフトしたい」需要で話題に挙がりやすい。
- 一度アカウント作って無料試用してみようとしたが、Webフォームのバグ?で先に進めず断念した経験あり。
まずやったこと
公式の学習リソースをざっと確認。
前述の受験記エントリーのほか、オススメ学習方法まとめの良記事もあったので参考にした。
- Oracle University:日本語の動画コンテンツあり。しかし長い。
- OCI活用資料集:サービス別の解説スライドがまとまっている。動画見るよりはサクサク取捨選択できて良さそう。「サービス全般」あたりの資料から眺めてみる。
ここまで漁ったところで、なんとなく「AWSとどう違うのか」がキーワードベースで見えてくる。
- AWSでいう「AZ」→ OCIでは「AD」と「FD」がある?
- AWSでいう「IAM」→ OCIでは「IDCS」と「IAM」がある?
- OCIでは「コンパートメント」という独自概念あり。GCPでいう「プロジェクト」みたいなもの?
- そもそも「OCI」の上位概念として「Oracle Cloud」がある?差分はSaaSらしいけど、具体的にどんなサービスがあるんだろう。
このへんで「Qiitaにいい感じのまとめ記事ないかな」と探してみるとあった。
このシリーズ記事を読み進めながら、気が向いたものは公式スライドを漁りつつ、とりあえず一度Foundationsを受験してレベル感を掴んでみることにする。
OCIってAWSとどう違うの?学習サマリー
そもそもOCIとは
「Oracle Cloud」の中でもPaaS、IaaSサービスの総称が「OCI」。差分はSaaSサービスで、具体的にはERPとかSCMとか公式サイトに紹介あり。
AWSでいうとカウンターパートがあるのか微妙だが、SAPとかSalesforceみたいなSaaSも提供してるんだな程度に理解した。
ADとFD
物理的な稼働ロケーションについて、「リージョン」はAWSと同等。
「AZ」に相当する概念として「AD」があり。さらにOCI独自の概念として「FD」というADの下層単位がある。HW的に影響し合わないよう分かれているとのこと。
ちなみに日本にリージョンは2つ(東京&大阪)あるが、ADは各リージョンに1つしかない。代わりにFDは各AD内に3つずつある模様。
IDCSとIAM
AWSでいう「IAM」に相当する概念として「IDCS(Oracle Cloud共通)」と「IAM(OCI限定)」の2種類あり。
迷った場合とりあえずどっちを作ればいいか、というのは微妙な模様。機能的に優位なのはIDCSっぽい。
IAMには「プリンシパル」「グループ」「ポリシー」の3概念がある。「プリンシパル」はAWSでいうIAMの「ユーザー」と「ロール」をまとめたようなもの。
またポリシーの記述はJSONではなくSQLっぽい独自文法になっている。
デフォルトポリシーはなく「権限ゼロからスタート」であり、「許可ルールしか記述できない」というホワイトリスト的な考え方となっている。(これで実用上困らないのかな?)
テナンシーとコンパートメント
リソース管理の概念として、まずOCIアカウントを作成すると単一の「テナンシー」が割り当てられる。
この「テナンシー」内のOCIリソースの管理単位として「コンパートメント」があり、フォルダーのようなノリでリソースを区分けして権限やコスト管理を分割することができる。
※ コンパートメントは「区画」という意味らしい。Oracle社は特にニッチな英語表現を多用する印象があるので、新語が登場した際は原義をググっておくと意味がイメージしやすいのでオススメ。
コンピュート
EC2でいう「インスタンスタイプ」に相当するマシンスペックを表す概念として「シェイプ」がある。
ラインナップは「Standard」「Dence」「GPU」などAWSよりは直感的に分かりやすいネーミングになっている。
シェイプ変更は可能だが、インスタンス再起動が必要。
また、CPUスペックは「OCPU(Oracle Compute Unit)」という独自概念でカウントされる。
これは物理コア数を表しており、一般的にいう「vCPU=スレッド数」とは異なるので注意。
AutoScallingに相当する「自動スケーリング」機能もあり。
AMIに相当する起動用イメージを「インスタンス構成」という。AutoScallingグループに相当する概念は2つあり、起動するインスタンスをまとめて「インスタンス・プール」と呼び、スケーリングに関する設定を「自動スケーリング構成」という。
ストレージ
主なサービスは以下。
- ローカルNVMe:EC2で言うエフェメラルストレージ(インスタンスストア)。特定のシェイプでしか利用できない。
- ブロック・ボリューム:EBS相当。
- ファイル・ストレージ:EFS相当。
- オブジェクト・ストレージ:S3相当。操作用にS3互換APIも使える。静的Webホスティング機能はなし。
データベース
大きく以下の4パターンでDB利用が可能。
- Database on IaaS:コンピュートインスタンス上にDB自前導入。
- DBCS:RDS相当。OSレイヤー以上はユーザー側で管理(RDS Customに近い)。VM版とベアメタル版がある。
- ExaCS:DBCSのExadata版。RDS(Aurora)的なノリ?
- Autonomous Database:フルマネージドDB。18以降のバージョンのみ提供。
なかでもDBCSの特徴は以下。
- RACやData Guardを採用し可用性を高めることが可能。RACはVM版でのみ利用できる。
- ベアメタル版では、OCPUの動的スケーリング(ダウンタイムなし)が利用できる。
- OSログイン可能な点でRDSよりもIaaSチック?
- 監視ツールにはEMも選択可能。
※ ちなみにちょっと気になったのでExaCSの料金見てみたところ約$14/hでした。月間100万円ぐらい?
ネットワーク
主なプライベートNW系サービスをAWSと比較すると以下。
- VCN:VPC相当。リージョン > VCN > AD という包含関係も同等。
- サブネット:AWSのサブネット同等。ただしパブリックとプライベート以外に「リージョナル・サブネット」という同一リージョン内の全ADを跨ぐタイプのサブネットもあり。
- ルート表:ルートテーブル同等。
- NSG(ネットワーク・セキュリティ・グループ):SGに近い。
- セキュリティ・リスト:NACLに近いが、最終的にNSGと同じくVNICに合算適用されるという点でNACLと異なるため注意。こちらの解説が分かりやすい。
GW系やオンプレ接続関連は以下。
- インターネット・ゲートウェイ、NATゲートウェイ:AWS同等。マネージド。
- サービス・ゲートウェイ:VPCエンドポイントに近い機能?
- DRG(動的ルーティング・ゲートウェイ):VGW相当?
- VCNピアリング:リージョンを跨ぐか否かによってローカル、リモートの区分がある。いずれも前述のDRGを利用する。
- FastConnect:DX相当。これもDRGを利用する。
- IPsec VPN:AWSマネージドVPN同等。
- トランジット・ルーティング:トランジットGW的なサービスがあるわけではなく、条件付きで「間接的VNCピアリングが許可される」という位置付け。利用が許される条件は以下の3パターン。
- FastConnectの共有(DXGW的な利用)
- オンプレからの踏み台VCNとして利用
- リモート・ピアリングの複数VCN間共有(トランジットGW的な利用)。1. と組み合わせればトランジットVIF的なこともできるのかな?
課金
利用料金の支払い方法は以下。
- PAYG(Pay as you go):オンデマンド課金。
- 年間/月間フレックス:前払い。不足時は追加請求されるが、余った場合は返金ではなく失効w
- BYOL
ちなみにリージョンを問わず価格設定は同一のようです。シンプル。
また、SLA違反時の返金ポリシーについては、他のパブクラと異なり「可用性」だけでなく「性能」や「管理性(コンソールAPIエラー率)」を保証しているのも特徴。
実機も触ってみる
以前、ハンズオンを試みた際にアカウント作成画面のバグ?により先に進めなかったのだが、今回リトライしたところ問題なくフリートライアルを開始することができた。
ルートコンパートメントを指定し、「Create Instance」を実行。
デフォルト設定のままで立ち上がるようになっているが、SSH用の秘密鍵だけは忘れずにダウンロードしてから「Create」をクリック。
起動に成功したらSSHしてみる。パブリックIPとユーザー名を確認。
ローカルMacのターミナルからSSH接続。
ダウンロードした秘密鍵に対して chmod 400
しておかないと認証失敗するため注意。
とりあえず試験受けてみる?
まずはOracle UniversityでFoundationsの練習問題に挑戦できるのでやってみる。
ちなみにSafariだとモーダルウィンドウがいつまで待っても描画されなかった。やむなくChromeで実施。
結果、87.5%(8割で合格)。いけそうな気がするのでそのまま本試も受験してみる。
しかしこんな簡単なノリでポチッと開始してしまえる試験なのかw
制限時間は90分だが半分もかからず終了。結果は76%!
ギリギリ不合格かと思いきや、合格ラインは68%だったようでセーフ。めでたい元旦となりました。
まとめ
OCI初めてでも、他のパブクラある程度触ってる人なら1日あれば勉強開始〜試験合格までいけそう。
仕事で使いそうな人はFoundations無料期間中(2022年3末まで)にチャレンジしてみるのがオススメ!