1
3

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 POC環境にリソース・スケジューラで自動起動自動停止を設定する

Last updated at Posted at 2024-08-13

はじめに

各クラウドの競争と発展により4大クラウドのどれを選んでも同じ技術要件の環境を実現することが可能となってきました。そうすると次に求められるのはコストです。同じサービスをいかに安く高品質のまま提供できるかという検討に移ります。そこでOCIでは2024年5月21日に新しいサービスであるOCIリソース・スケジューラがリリースされました。これによりインスタンスの自動起動自動停止をサービスで簡単に設定することができるようになります。

目次

1.設定可能リソース
2.検証環境
3.POC環境事前構築手順
4.リソーススケジューラ構築手順
5.確認テスト

1.設定可能リソース

現在では下記のリソースをスケジュール設定することが可能です。今後は設定できる対象リソースも拡大していくと考えられますので続報に期待しましょう。
image.png

2.検証環境

今回は下記のPOC環境を準備して検証を実施いたします。
リソース
・Compute1台
・Autonomous Database1台
・リソース・スケジューラ(起動用と停止用)
・Policies
image.png
※注意点
こちらの環境は設定を行いやすいようにルートコンパートメント、管理権限を持ったユーザーを利用しています。検証時にサブコンパートメントや管理権限のないユーザーを利用する場合はポリシー設定が異なるためこちらの記事の手順をご確認ください。
[参照]OCI リソース・スケジューラでインスタンスの自動起動と停止を設定する

3.POC環境事前構築手順

OCIへログインしてください。ネットワークから作成していきます。

VCNの作成
[左上メニュー]→[ネットワーキング]→[仮想クラウドネットワーク]を選択
image.png

[VCNウィザード]→[インターネット接続性を持つVCNの作成]→[VCNウィザードの起動]を選択
image.png
image.png

[各種ネットワーク部分の設定]→[次]→[作成]を選択
image.png
image.png

完了後[VCNの表示]で作成されたVCNを確認します。
image.png
image.png

POC用APサーバ(Compute)の作成
[コンソール]→[左上メニュー]→[コンピュート]→[インスタンス]を選択
image.png

[インスタンスの作成]を選択
image.png

APサーバ内は設定しないためリソース名、VCN、SSH Keyのダウンロードなど必要項目を確認入力し[作成]を選択
image.png

作成後のPOC用APサーバが問題なくできたか確認します。
image.png

スケジューラで自動起動設定を入れるために[アクション]→[停止]→[停止]でComputeを停止しておきます。
image.png
image.png

POC用Autonomous Databaseの作成
[コンソール]→[左上メニュー]→[Oracle Database]→[Autonomous Database]を選択
image.png

[Autonomous Databaseの作成]→内部設定は行わないのでDBバージョン、パスワードやワークロード・タイプなど必要項目を入力し[Autonomous Databaseの作成]を選択
image.png
image.png

作成後のPOC用Autonomous Databaseが問題なくできたか確認します。
image.png

スケジューラで自動起動設定を入れるために[アクション]→[停止]→[停止]でAutonomous Databaseを停止しておきます。
image.png
image.png

4.リソーススケジューラ構築手順

ここから自動起動用と自動停止用のスケジューラを設定していきます。
自動起動用リソース・スケジューラの作成

[コンソール]→[左上のメニュー]→[ガバナンスと管理]→[リソース・スケジューラ]を選択
image.png

[スケジュールの作成]を選択
image.png

[スケジュール名]を入力→実行するアクションで[起動]を選択→[次]を選択
image.png

[静的]→検索とフィルタをクリック→[リソースタイプ]→[Instance]と[AutonomousDatabase]→[適用]を選択
image.png
image.png

今回自動起動を設定するAPサーバとADBにチェックを入れ[次]を選択
image.png

今回は起動間隔に[毎日]を選択し、[時間]と[開始日]を設定し[次]を選択
※時間はUTC時間なのでスケジューラを起動したい日本時間から-9時間したものを入れてください。
例:JST(日本時間)10:00→UST(米国時間)01:00
image.png
image.png

※(毎週を選び曜日指定をすることで平日のみの実行もできます)
image.png

情報を確認し[スケジュールの作成]を選択
image.png

スケジューラのステータスが作成中から有効になったことを確認します。名前の下の[リソース]を選択
image.png

起動用Policiesに記載するための起動用リソース・スケジューラのOCIDをコピーします。
image.png

リソース・スケジューラはpolicy設定がないと実行エラーとなるためpolicyを作成していきます。

Policyは下記サイトに記載があるためこちらをベースに今回のPolicyを記載していきます。
[参照]:スケジュールの作成

基本ステートメント
Allow any-user to manage <リソースタイプ> in tenancy where all {request.principal.type='resourceschedule', request.principal.id='='***'}
赤色の<リソースタイプ>の部分に対象のリソースを記載
赤色の***部分に先ほどのコピーしたOCIDを入れることでPolicyが作成できてスケジューラが起動します。

今回の記載例
[Compute用のスケジュール実行ポリシー]
Allow any-user to manage instance in tenancy where all {request.principal.type='resourceschedule', request.principal.id='='ocid1.resourceschedule.oc1.ap-tokyo-1.ama...uq'}

[Autonomous Database用のスケジュール実行ポリシー]
Allow any-user to manage autonomous-database in tenancy where all {request.principal.type='resourceschedule', request.principal.id='='ocid1.resourceschedule.oc1.ap-tokyo-1.ama...uq'}

起動用Policiesの作成
[コンソール]→[アイデンティティとセキュリティ]→[ポリシー]を選択
image.png

[名前の入力]→[説明の入力]→[コンパートメントの指定]→[手動エディタの表示にチェック]→[ポリシー・ビルダーの記載]
Compute用のポリシーをコピーしてocid1.resourceschedule.oc1.ap-tokyo-1.ama...uqの部分をコピーした自動起動スケジューラのOCIDに書き換えてポリシー・ビルダーへ貼り付けます。
貼り付け後[作成]を選択
image.png
作成したポリシーを表示し[ポリシーステートメントの編集]を選択
image.png
[+別のステートメント]で項目を増やしポリシー・ビルダーに記載したポリシーのinstance→autonomous-databaseに書き換えたものを追記して[変更の保存]を選択
image.png

自動停止用スケジューラの作成
手順は起動用スケジューラと基本的に同じになります。
[コンソール]→[左上のメニュー]→[ガバナンスと管理]→[リソースとスケジューラ]を選択
image.png

[スケジュールの作成]を選択
image.png

[スケジュール名]を入力→実行するアクションで[停止]を選択→[次]を選択
image.png

[静的]→検索とフィルタをクリック→[リソースタイプ]→[Instance]と[AutonomousDatabase]→[適用]を選択
image.png
image.png

今回自動停止を設定するAPサーバとADBにチェックを入れ[次]を選択
image.png

今回は停止間隔に[毎日]を選択し、[時間]と[開始日]を設定し[次]を選択
※時間はUTC時間なのでスケジューラを起動したい日本時間から-9時間したものを入れてください。
例:JST(日本時間)10:00→UST(米国時間)01:00
image.png
image.png

※(毎週を選び曜日指定をすることで平日のみの実行もできます)
image.png

情報を確認し[スケジュールの作成]を選択
image.png

スケジューラのステータスが作成中から有効になったことを確認します。名前の下の[リソース]を選択
image.png

停止用Policiesに記載するための停止用リソース・スケジューラのOCIDをコピーします。
image.png

停止用Policiesの作成
[コンソール]→[左上のメニュー]→[アイデンティティとセキュリティ]→[ポリシー]を選択
image.png

[名前の入力]→[説明の入力]→[コンパートメントの指定]→[手動エディタの表示にチェック]→[ポリシー・ビルダーの記載]
記載例のCompute用のポリシーをコピーしてocid1.resourceschedule.oc1.ap-tokyo-1.ama...uqの部分をコピーした停止用スケジューラのOCIDに書き換えてポリシー・ビルダーへ貼り付けます。
貼り付け後[作成]を選択
!image.png

作成したポリシーを表示し[ポリシーステートメントの編集]を選択
image.png

[+別のステートメント]で項目を増やしポリシー・ビルダーに記載したポリシーのinstance→autonomous-databaseに書き換えたものを追記して[変更の保存]を選択
image.png

これで全構築手順は完了です。

確認テスト

リソーススケジューラが問題なく起動しAPサーバとAutonomous DBの起動停止が行われたか確認します。
起動用のポリシーと停止用のポリシーの実行時間が過ぎた後
[コンソール]→[左上のメニュー]→[ガバナンスと管理]→[リソース・スケジューラ]を選択
image.png
最終実行日とSUCCEEDEDになっているかを確認します。
※(失敗している場合はFailedと表示されています)
image.png
※自動起動スケジューラが実行された後のAPサーバとAutonomous DBの表示です。先ほどの停止状態から無事起動を確認できました。
image.png
image.png

まとめ
このようにスケジューラを使って環境実行時間を最適化できるようになりました。今後も自動起動自動停止をうまく活用しながら積極的にOCIを利用してみてください。

1
3
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
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?