2024年3月12日火曜日

GCPのVMインスタンスでOracle Autonomous Database Free Container Imageを実行する

Google CloudでVMインスタンスを作成し、Oracle Autonomous Database Free Container Imageを実行してみました。インスタンスを作った後は、Oracle Cloudのコンピュート・インスタンスで動作させた手順とあまり違いはありません。

以下より、実施した作業について紹介します。

作成するGCPのVMインスタンスの名前はadb-freeとします。マシンの構成はもっともリーズナブルそうな汎用E2を選びました。マシン・タイプe2-standard-2 (2vCPU、1コア、8GBメモリ)を選択しています。


ブートディスク変更をクリックし、イメージをOracle Autonomous Database Free Container Imageを動作させた実績のあるCentOS Stream 9へ変更します。


以上の設定で、VMインスタンスを作成しました。この構成での月間予測は$50.92、これは 1 時間あたり約 $0.07 とのことでした。

VMインスタンスが作成されます。割り当てられた外部IPに接続する際にホスト名が使えるように、ローカルのhostsファイルにエントリをgcp-adb-freeとして追加しておきます。

ファイアウォールルールの設定を開き、ポート1522と8443への通過許可を与えます。


ファイアウォールルールを作成します。


ファイアウォールルールの名前rule-for-adb-freeとします。

トラフィックの方向上り一致したときのアクション許可、ターゲットネットワーク上のすべてのインスタンス送信元IPv4範囲0.0.0.0/0を指定しています。

プロトコルとポート指定したプロトコルとポートを選択し、TCPのポート8443,1522を指定しています。


作成したVMインスタンスに接続し、Oracle Autonomous Database Free Container Imageからコンテナadb-freeを作成して実行します。

ブラウザからSSHで接続します。


ターミナルが開いたら、podmanを含むcontainer-toolsをインストールします。

sudo dnf -y install container-tools


設定するパスワードをあらかじめ環境変数MYPASSに設定します。

export MYPASS=<パスワード>

コンテナadb-freeを作成します。

podman run -d \
-p 1521:1522 \
-p 1522:1522 \
-p 8443:8443 \
-p 27017:27017 \
-e WORKLOAD_TYPE='ATP' \
-e WALLET_PASSWORD=$MYPASS \
-e ADMIN_PASSWORD=$MYPASS \
--cap-add SYS_ADMIN \
--device /dev/fuse \
--name adb-free \
container-registry.oracle.com/database/adb-free:latest


少し待つとコンテナadb-freeのステータスがhealthyに変わります。


起動したORDSに接続します。

https://gcp-adb-free:8443/ords/

自己署名証明書によってHTTPSにしているため、証明書のエラーが発生します。エラーを無視して、接続します。


ORDSのランディング・ページが開きます。


以上でGCPのVMインスタンス上の作業は完了です。

クラウド・ウォレットwallet.zipの作成やOracle SQL Developer Extension for VS Codeからの接続は、Oracle Cloudのコンピュート・インスタンスのときと同じ作業で、クラウド・ウォレットを使った一般的な手順になります。

今回の記事は以上になります。