本ブログは、オラクル・クラウドの個人ブログの1つです。
初めに
冒頭ですが、この記事の位置付けは、次のシリーズ記事の1つです。
データ統合 (ODI On-P, ODI MP, OCI DI)
今回は、OCI MarketplaceからODIインスタンスを作成して、VNCでの接続方法を紹介したいと思います。
事前準備
Oracle Cloud Infrastructure(OCI)アカウント
SSHキーペア (ODIインスタンスに接続用)
SSHクライアント (e.g. Teraterm, Putty)
VNCクライアント (e.g. Tiger VNC, VNC Viewer)
Autonomous DB インスタンス (レポジトリ格納用)
*Autonomous DBとODIインスタンスは、同じコンパートメントに格納しないといけません。
ステップ
1. 動的グループを作成する
2. ポリシーを作成する
3. OCI MarketplaceからODIインスタンスを作成する
4. SSHを使用してODIインスタンスに接続する
5. VNCを使用してODIインスタンスに接続する
うまくいかない時
1. 動的グループを作成する
ODIインスタンスに権限を付与するため、動的グループを作成します。
グループ名:ODI_MP_DG
ルール:ALL {instance.compartment.id = '<compartment_ocid>'}
2. ポリシーを作成する
ステートメント:Allow dynamic-group ODI_MP_DG to manage all-resources in COMPARTMENT PoC
ODIインスタンスを作成するOCIユーザーが、管理者グループに属していない場合は、このユーザーに特定のコンパートメントのリソースの管理権限を付与する必要があります。上記ポリシー作成画面に、下記ステートメントを追加します。
Allow group ODI_MP_GRP to manage all-resources in COMPARTMENT PoC
(OCIユーザーは、ODI_MP_GRPに属しています。)
3. OCI MarketplaceからODIインスタンスを作成する
MENU->Marketplace->All Applications
検索ボックスに「data integrator」と入力すると、ODIの関連製品が表示されます。この例ではClassic-BYOLを使用します。
「利用条件」に同意し、「スタックの起動」ボタンをクリックして開始します。
全体の設定 (General Settings)
項目 | コメント |
---|---|
Networking Options | この例では、"Existing networking components will be used"を指定します。 ほかの選択肢: "New networking components will be created" |
ODI Repository Location | この例では"Create a new Repository in an Autonomous Database"を指定します。 ほかの選択肢: "Connecting to an Existing Repository in an Autonomous Database" あるいは、"Create an Embedded Repository" |
Resource Display Name Prefix (Optional) | 空白のままにすると、プレフィックスは「odi_xxxxxxxx」になります。(odi_<自動作成される8桁文字列> ) |
ネットワーク構成 (Network Configuration)
VCNとサブネットを選択します(この例ではパブリックサブネットを使用します)。
デフォルトで、「パブリックIPアドレスの割り当て」はチェックされていません。
ODIインスタンスの設定 (ODI Instance Settings)
項目 | コメント |
---|---|
ODI Node Shape | デフォルトはVM.Standard2.4です。 |
SSH Public Key | 公開鍵を貼り付けます。 |
ODI Availability Domain | 複数のドメインがある場合は、任意のドメインを選択できます。単一のドメインがある場合は、それを直接選択してください。 |
ODI VNC Password | VNCパスワードを入力します(VNCクライアントからODIに接続する場合に使用します)。確認用の再入力はありませんので、入力間違いのないことをご注意ください。 |
新しいODIメタデータ・リポジトリ (New ODI Metadata Repository)
"Create a new Repository in an Autonomous Database"を指定した場合、以下の入力項目が表示されます。
項目 | コメント |
---|---|
Autonomous Database Compartment | ADBが所属するコンパートメント。 |
Autonomous Database Instance | ADBのインスタンス名を指定(リストから選択)。 |
Autonomous Database Admin Password | adminユーザのパスワード(ADB作成時、決めたもの)。 |
Supervisor Password | ODI Supervisor用のパスワード(決めるもの)。 英数字のみ |
Schema Prefix | レポジトリ用スキーマの接頭辞(決めるもの)。 |
Schema Password | レポジトリ用スキーマのパスワード(決めるもの)。 12桁以上、かつ大文字、小文字、特殊文字が混在する必要がある |
注意点
"Create a new Repository in an Autonomous Database"を指定しても、上記項目が表示されない場合、"ODI Repository Location"の選択肢を切り替えて、もう一度試してください(既知の問題のようです)。
Review
"Run Apply"(適用の実行)はデフォルトでチェックされています。これは、リソースがすぐにプロビジョニングされることを意味します。
確認後、「作成」ボタンをクリックして開始します。
数分後、リソース・マネージャー・ジョブが完了しました。状態が「成功」であることを確認してください。
4. SSHを使用してODIインスタンスに接続する
MENU-> Compute -> Instances
OCIコンソールからパブリックIPを取得します。
SSHクライアントを起動してログインします。
ユーザ名: opc
接続後、次のような情報が表示されます。ご覧のとおり、OSはAutonomous Linuxです。つまり、手動でパッチを適用する必要はありません。
VNCポート(5901)を開く
このステップは重要です。デフォルトでは、VNCポート(5901)は開いていないため、firewall-cmdを使用してVNCポートを開く必要があります。
[opc@oracle-odi-inst-wc4b ~]$ sudo firewall-cmd --permanent --add-port=5901/tcp
success
[opc@oracle-odi-inst-wc4b ~]$ sudo firewall-cmd --reload
success
[opc@oracle-odi-inst-wc4b ~]$ sudo firewall-cmd --list-ports
5901/tcp
[opc@oracle-odi-inst-wc4b ~]$
レポジトリのスキーマを確認
Autonomous DBにレポジトリ関連のスキーマが作成されましたら、SQL Developerで確認した結果は、以下のようです。
ADBにレポジトリを作成するのに、少し時間がかかります。作成の進捗を確認したいなら、ログファイルをご参照ください。
コマンド: tail -f /u01/oracle/logs/odiConfigure.log
...省略...
Repository Creation Utility - Checking Prerequisites
Checking Component Prerequisites
Repository Creation Utility - Creating Tablespaces
Validating and Creating Tablespaces
Create tablespaces in the repository database
Repository Creation Utility - Create
Repository Create in progress.
Percent Complete: 12
Executing pre create operations
Percent Complete: 30
Percent Complete: 30
...省略...
5. VNCを使用してODIインスタンスに接続する
VNCサービスの状態を確認する
コマンド:sudo systemctl status oraclevncodi.service
[opc@oracle-odi-inst-pujd ~]$ sudo systemctl status oraclevncodi.service
● oraclevncodi.service - VNC server for ODI- instance
Loaded: loaded (/usr/lib/systemd/system/oraclevncodi.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2024-06-26 09:15:19 GMT; 9min ago
Tasks: 302
Memory: 847.9M
CGroup: /system.slice/oraclevncodi.service
tq3843 /bin/Xvnc :1 -auth /home/oracle/.Xauthority -desktop oracle-odi-inst-pujd:1 (oracle) -fp catalogue:...
tq4135 /usr/libexec/gnome-session-binary --session=gnome-classic
tq4136 vncconfig -iconic
tq4148 dbus-launch --sh-syntax --exit-with-session
<中略>
Jun 26 09:18:14 oracle-odi-inst-pujd gsd-color[4746]: could not find device: property match 'XRANDR_name'='VNC-0'...xist
Hint: Some lines were ellipsized, use -l to show in full.
VNCクライアントを起動する
VNC Viewerを起動し、<Server_IP_Address>:<Port_Number>
でODIインスタンスに接続します(事前に、ODI Marketplaceに関連するNSGか、セキュリテ・リストを編集して、イングレス・ルールを追加してください)。
VNCパスワードを入力すると、ODIインスタンスに接続できます。 (ODIインスタンスの作成時に指定したパスワードです。)
ODIインスタンスに接続すると、次のようなウェルカムページが表示されます。画面の指示に従って、言語とキーボードを設定します。
ODI Studioを起動する
デスクトップ上のアイコンをクリックして、ODI Studioを起動します。 ("Trust and Launch"(信頼して起動)を選択します。)
以前のODI設定をインポートできます。 (ここでは、「いいえ」を選択してスキップします。)
ODI Studioを起動すると、次のようなスタートアップページが表示されます。
レポジトリに接続する
左上の"Connect to Repository..."をクリックすると、以下のように、ログイン画面表示されます。
既にログイン名が作成されますので、そのまま「OK」をクリックしてログインできます。
「Topology」のタブで、OracleDIAgent1が既に作成済のことが確認できます。
エージェント作成後、/u01/oracle/logs/odiConfigure.log
には、以下のようなメッセージが表示されます。
2022-03-31 08:29:15.011 NOTIFICATION ODI-1111 Agent OracleDIAgent1 started. Agent version: 12.2.1. Port: 20910. JMX Port: 20810.
2022-03-31 08:29:15.012 NOTIFICATION ODI-1136 Starting Schedulers on Agent OracleDIAgent1.
2022-03-31 08:29:16.002 NOTIFICATION ODI-1137 Scheduler started for work repository WORKREP on Agent OracleDIAgent1.
2022-03-31 08:29:25.847 NOTIFICATION Inside cleanStaleSessions ::::::::::::::::::::::::::::::::::::
2022-03-31 08:29:26.048 NOTIFICATION Not an InternatlAgent ::::::::::::::::startContinueLoadPlansThread:::::::::::::::
うまくいかない時
ODI MPインスタンスに接続できない場合
OCIセキュリティ・リストとルート・テーブルの関連設定を省略しました。もしSSH/VNC接続に問題がある場合は、OCIセキュリティ・リストに入力ルール(22/5901 Port)が追加されていることを確認してください。
レポジトリが未作成の場合
トラブルシューティングの時、以下のログファイルをご利用ください。
/u01/oracle/logs/odiConfigure.log
もし、ログに以下のようなメッセージがありましたら、レポジトリ・スキーマのパスワードがルールに満たさない可能性があります。
[opc@oracle-odi-inst-tpsu ~]# cat /u01/oracle/logs/odiConfigure.log
ODI Marketplace configuration started.
Invoking ADB config
ODI configuration for ADB technology
Start wallet download
Finished MP configuration
Going to start Apps
[ERROR] Storing the MP Repo Mode fails, Hence exiting the process !!!
[opc@oracle-odi-inst-tpsu ~]#
詳細以下のMOSドキュメントをご参考ください。
ODI Instance Creation in MP Fails with "[ERROR] Storing the MP Repo Mode fails, Hence exiting the process !!!" (Doc ID 2806808.1)
スキーマのパスワードは、12桁以上、かつ大文字、小文字、特殊文字が混在する必要があります。
以上
関連記事
オラクル・クラウドの個人ブログ一覧
ODI On-PとODI MarketplaceとOCI Data Integrationの比較
Autonomous DBにODIレポジトリの作成方法
マニュアル
Using Oracle Data Integrator on Oracle Cloud Marketplace
MOS ドキュメント
Oracle Data Integrator on Marketplace Provisioning with Autonomous Database Fails to Create Repository (Doc ID 2663331.1)
ODI on Marketplace Repository Not Created if Using Autonomous DB with Complex Admin Password (Doc ID 2675895.1)
オフィシャル・ブログ
Deploying Oracle Data Integrator Marketplace in a Public Subnet with Autonomous Database
Deploying Oracle Data Integrator Marketplace in a Private Subnet with Autonomous Database