はじめに
Oracle Analytics Cloud(OAC)にはEnterpriseとProfessionalの2つのエディションがあります。
プライベート・ネットワークにありパブリックIPアドレスを持たないデータソースにアクセスする場合、EnterpriseエディションではPrivate Access Channelという機能を利用して簡単に接続できますが、こちらの機能はProfessionalエディションでは利用できません。
今回は、Oracleから無償で提供されているData Gatewayを使用して、OAC ProfessionalエディションからプライベートIPアドレスのみを持つMDS(MySQL DB System)にアクセスする手順を検証してみました。
1.Data GatewayをインストールするComputeインスタンスの作成
Data GatewayをインストールするComputeインスタンスをパブリック・サブネット上に作成します。
今回はOracle Linux 7.9のインスタンスを作成しました。
2.Data Gatewayのインストールと起動
こちらのページからData Gatewayのインストーラをダウンロードします。
(ファイルサイズは2GBほどあります。)
1.で作成したComputeインスタンス上のopcユーザのホームディレクトリにData GatewayのインストーラをSFTPでアップロードします。
Computetインスタンスにopcユーザでログインします。
[opc@data-gw ~]$ ls
DataGateway_6.4.0_Linux64.zip
[opc@data-gateway ~]$
zipファイルを解凍します。
[opc@data-gw ~]$ unzip DataGateway_6.4.0_Linux64.zip
Archive: DataGateway_6.4.0_Linux64.zip
inflating: DataGateway_6.4.0_Linux64.bin
[opc@data-gw ~]$ ls
DataGateway_6.4.0_Linux64.bin DataGateway_6.4.0_Linux64.zip
[opc@data-gw ~]$
サイレントインストール用のレスポンスファイル(/home/opcsilentInstall.response)を作成します。
[opc@data-gw ~]$ vi silentInstall.response
CREDENTIALS_PAGE_ADMIN_USERNAMEにData Gatewayの管理画面にアクセスする際の管理者ユーザ名を、CREDENTIALS_PAGE_PASSWORDに管理者ユーザのパスワードを指定します。
[ENGINE]
#DO NOT CHANGE THIS.
Response File Version=1.0.0.0.0
[GENERIC]
ORACLE_HOME=/home/opc/Oracle/Middleware/Oracle_Home
SELECT_RD_VERSION_RADIO_V1=false
CREDENTIALS_PAGE_ADMIN_USERNAME=dgw-admin
CREDENTIALS_PAGE_PASSWORD=Demo#1Demo#1
インベントリポインタファイル(/etc/oraInst.loc)を作成します。
[opc@data-gw ~]$ sudo vi /etc/oraInst.loc
inventory_loc=/home/opc/oraInventory
inst_group=opc
インストーラを実行します。
[opc@data-gw ~]$ ./DataGateway_6.4.0_Linux64.bin -silent -responseFile /home/opc/silentInstall.response
Launcher log file is /tmp/OraInstall2022-01-26_09-41-45AM/launcher2022-01-26_09-41-45AM.log.
Checking if CPU speed is above 300 MHz. Actual 2545.216 MHz Passed
Checking swap space: must be greater than 512 MB. Actual 8191 MB Passed
Preparing to launch the Oracle Universal Installer from /tmp/OraInstall2022-01-26_09-41-45AM
Log: /tmp/OraInstall2022-01-26_09-41-45AM/install2022-01-26_09-41-45AM.log
Copyright (c) 1999, 2019, Oracle and/or its affiliates. All rights reserved.
Reading response file..
Validations are enabled for this session.
Verifying data
Copying Files
Percent Complete : 10
Percent Complete : 20
Percent Complete : 30
Percent Complete : 40
Percent Complete : 50
Percent Complete : 60
Percent Complete : 70
Percent Complete : 80
Percent Complete : 90
Percent Complete : 100
The installation of bi_rdc_client 6.4.0.0.0 completed successfully.
Logs successfully copied to /home/opc/oraInventory/logs.
[opc@data-gw ~]$
インストールが完了しました。
3.Data Gatewayの起動
Data Gatewayのホームに移動します。
[opc@data-gw ~]$ cd /home/opc/Oracle/Middleware/Oracle_Home
Data Gatewayを起動します。
[opc@data-gw Oracle_Home]$ domain/bin/startJetty.sh
Data Gatewayのステータスを確認します。
[opc@data-gw Oracle_Home]$ domain/bin/status.sh
****************************************************************************
******************************** Data Gateway STATUS ********************************
Data Gateway Jetty Home: /home/opc/Oracle/Middleware/Oracle_Home/jetty
Data Gateway Domain Home: /home/opc/Oracle/Middleware/Oracle_Home/domain
Data Gateway Jetty HTTP Port: 8080
Data Gateway Status: UP
URL: http://data-gw:8080/obiee/config.jsp
****************************************************************************
[opc@data-gw Oracle_Home]$
Data GatewayがTCP8080ポートを使用していることが確認できました。
OSのファイアウォールでData Gatewayが使用するポート(TCP8080)を解放します。
[opc@data-gw Oracle_Home]$ sudo firewall-cmd --permanent --add-port=8080/tcp
success
[opc@data-gw Oracle_Home]$ sudo firewall-cmd --reload
success
[opc@data-gw Oracle_Home]$ sudo firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens3
sources:
services: dhcpv6-client ssh
ports: 8080/tcp
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:
[opc@data-gw Oracle_Home]$
4.Data Gatewayの設定
ブラウザからData Gatewayの設定ページにアクセスします。
http://<1.で作成したComputeインスタンスのパブリックIP>:8080/obiee/config.jsp
レスポンスファイルで指定した管理者ユーザ名とパスワードでログインします。
URLにAnalytics CloudインスタンスのURLを入力します。
「Generate Key」をクリックするとキーが表示されるので、その内容をコピーしておきます。
Data Gatewayの設定ページを開いたままにして、Analytics Cloudインスタンスにブラウザからアクセスします。
左上のメニューをクリックします。
「コンソール」をクリックします。
右下の「リモート・データ接続」をクリックします。
リモート・データ接続の画面が表示されます。
データ・ゲートウェイの有効化をオンにします。
「追加」をクリックします。
「公開キー」の欄に先ほどData Gatewayの設定画面でコピーしたキーをペーストします。
「公開キー」の正しいキーを入力すると、名前、ID、ホストが自動的に入力されます。
「OK」をクリックします。
Data Gatewayが追加されました。
Data Gatewayの設定ページに戻ります。
「テスト」をクリックして、画面上部に「Successfully authenticated」と表示されたらOKです。
「Save」をクリックします。
「Enable」をオンにします。
5.Data Gatewayを経由したMDS(MySQL DB System)への接続
Analytics Cloudインスタンスのホーム画面に戻ります。
「作成」をクリックします。
「接続」をクリックします。
「MySQL」を選択します。
MDSのエンドポイントに表示されている情報を元に接続先の情報を入力します。
今回使用するMDSのエンドポイントの情報はこのようになっています。
接続先のMDSの情報を入力したら、「リモート・データ接続の使用」のチェックをオンにし、「保存」をクリックします。
「データのへ接続」をクリックします。
先ほど作成した「MySQL」をクリックします。
MDSに接続できました。
testdbの左側のトグルをクリックします。
testdb内のテーブル「dept」が確認できました。
「dept」をダブルクリックすると「dept」の内容が表示され、データセットに追加することができました。
まとめ
Data Gatewayを使用して、Oracle Analytics CloudのProfessionalエディションから、プライベートIPしか持たないMDS(MySQL DB System)に接続することができました。
参考情報
リモート・データ・ゲートウェイのインストール
Installing Oracle Analytics Cloud Remote Data Gateway Silently