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?

Database Actionsへの接続方法

0
Posted at

はじめに

Oracle Autonomous AI Database(以下、ADB)ではDatabase ActionsというWebベースの高機能なツール群を無償で利用することが可能です。

基本的にはOCIのマネジメントコンソールの「データベース・アクション」から利用することが可能となります。

image.png

ただ、マネジメントコンソールは開放したくない、という場合にどうやって接続しますか?というような情報が少なかったので、ADBのプライベートエンドポイント経由で接続する方法を幾つか紹介します。

  1. VCN内から接続
  2. OCI Bastionを経由して接続

Gemini_Generated_Image_52tr6852tr6852tr.png

本記事はADBがプライベートエンドポイントで接続される構成を前提としています
プライベートエンドポイントで接続できるADBの作成については、「プライベート・エンドポイントのADBを作成してみよう」 で紹介されています

1. VCN内から接続

VCN内からの接続のメリットは、インターネットを介す必要がないため、インターネットからの接続が基本的には制限されるエンプラ勢が嬉しいハズ。

前提としては、ADBのNSGで接続元からの443アクセスを許可している必要があります。

この前提があれば流れも何もないのですが、ブラウザからADBのプライベートエンドポイントに直接接続することで、Database Actionsを利用可能です。

image.png

(Windows Server上のEdgeから接続)

2. OCI Bastionを経由して接続

こちらはOCI Bastionのポート転送機能を経由しての接続になります。ポート転送機能が利用できれば、OCI Bastionでなくても大丈夫(なはず)です。

こちらも前提としては、ADBのNSGでOCI Bastionからの443アクセスを許可している必要があります。

流れは以下になります、①と②はどちらが先でも構いません。

① ポート転送用にローカルのhostsへエントリを追加する
② OCI Bastionのセッションを作成する
③ ローカルPCからOCI Bastion経由のトンネルを作成する
④ ローカルPCのブラウザからADBへ接続する

では、ヤッテイキ。

① ポート転送用にローカルのhostsへエントリを追加する

C:\Windows\System32\drivers\etc\hostsにADBのプライベートエンドポイントのエントリをlocalhost(127.0.0.1)として追加します。

127.0.0.1 xxxxxx.adb.ap-tokyo-1.oraclecloud.com

ADBのプライベートエンドポイントはOCIのマネジメントコンソールから確認できます。
image.png

② OCI Bastionのセッションを作成する

ADBのプライベートエンドポイントがあるサブネットをターゲット・サブネットとしてBastionを作成します。

image.png

Bastionができたら、該当のBastionに「SSHポート転送セッション」タイプのセッションを作成します。
パラメータは次のような形で、IPアドレスはADBのプライベートエンドポイントになります。
SSHキーはBastionに接続するためのものなので、基本的には何でも構わないです。

image.png

③ ローカルPCからOCI Bastion経由のトンネルを作成する

②でセッションが作成されたら、そのセッションを利用してトンネルを作成します。
トンネルを作成するためのコマンドも、Bastionのセッションからコピペできます。

image.png

次のようなコマンドになるハズです。Privatekeyとlocalport(今回は443)を設定して作成しましょう。
(localportは、特権ポートである443番を一般ユーザー権限で使うとエラーになる場合があるため、そのような場合には1024番以降の非特権ポート(例えば8443番など)を利用しましょう)

ssh -i <privateKey> -N -L <localPort>:192.168.1.8:443 -p 22 ocid1.bastionsession.oc1.ap-tokyo-1.xxxxxxxxxxx@host.bastion.ap-tokyo-1.oci.oraclecloud.com

Tipsですが上記のままだとアイドルが5分あると切断されてしまいます。なので、-o ServerAliveInterval=60のようなオプションを追加することでセッション接続時間を延ばすことが可能です。

ssh -i <privateKey> -o ServerAliveInterval=60 -N -L 443:192.168.1.8:443 -p 22 ocid1.bastionsession.oc1.ap-tokyo-1.xxxxxxxxxxx@host.bastion.ap-tokyo-1.oci.oraclecloud.com

④ ローカルPCのブラウザからADBへ接続する

image.png

(Windows11上のChromeから接続)

まとめ

今回は、プライベートエンドポイント構成のOracle Autonomous AI Databaseにて、マネジメントコンソールを経由せずにDatabase Actionsへアクセスする2つの方法をご紹介しました。

VCN内のサーバーから直接開く王道パターンはもちろんですが、手元のPCから直接繋げる「OCI Bastionのポート転送」も非常に便利です。踏み台サーバーの構築・維持コストを削減しつつ、セキュアな経路を確保できます。

特に hosts ファイルの書き換えと、ServerAliveInterval による5分タイムアウト切断の回避は、現場で実際にハマりやすいポイントなので、構築時のTipsとしてお役立てください。
要件に合わせて、安全かつ快適なアクセス経路を選択してヤッテイキましょう!

0
0
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
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?