このマニュアルは、Solution Manager の自動モードを使用して Denodo Platform をデプロイするためのクイックガイドです。
Solution Manager 8.0 で、Amazon AWS に Denodo Platform を自動デプロイすることができます。具体的には以下の処理が自動化されています。
主な利点は、カスタム AWS エレメントを作成して構成する必要がなく、SSH で個々のサーバーに接続して各種設定を構成する必要もなく、AWS でインスタンスを作成し、AWS のデプロイ全体を管理できることです。
Denodo Platform サーバーのインストールと起動を自動化するために、Solution Manager では、組織から提供される AWS のサービスアカウントを必要とします。これにより、Solution Manager で Denodo Platform を自動デプロイしながら、すべてのインフラストラクチャを引き続き組織の管理下に置き、また組織外の人物がアクセスできないようにすることができます。
Solution Manager は、バージョン 8.0 BETA 1 で Amazon AWS での自動化に対応しています。バージョン 8.0 では、Microsoft Azure への対応が計画されています。この間、Denodo Platform は Azure で実行できますが、自動デプロイには対応していません。
このマニュアルでは、以下の手順について説明します。
クラスターを自動モードで作成する場合、Solution Manager は AWS EC2 インスタンスを Denodo Platform のコンポーネントごとに作成します。Virtual DataPort には 1 つまたは複数のインスタンス、Data Catalog には 1 つまたは複数のインスタンス、Scheduler には 1 つのインスタンスになります。
自動クラウドモードで Denodo を利用できるようにするには、AWS アカウントでサービスアカウントを作成する必要があります。これにより、このユーザーアカウントのアクセスキー ID とシークレットアクセスキーを取得できます。
通常は、Denodo の管理者が AWS の管理者にこれらのキーを要求します。この資格情報には、AWS 上でインスタンスを作成することができる、適切な権限が必要になります。
すでに資格情報を保有している場合、次のセクションに進んでください。
管理者から資格情報を取得できない場合、以下の手順を試してください。AWS コンソールでご利用のアカウントに、この手順を完了させる権限がない場合があります。
前提条件: この AWS アカウントで少なくとも 1 つの Amazon Virtual Private Cloud (VPC) を作成する必要があります (AWS ドキュメントの「Amazon VPC の開始方法」を参照)。
AWS では、IAM ポリシーによって、このポリシーに関連付けられたユーザーアカウントの権限が定義されます。
まず、Solution Manager に関連付けられたサービスアカウントで AWS API の必要な処理をすべて呼び出せるようにする、IAM ポリシーを作成する必要があります。
これを行うには、以下の手順に従って実施してください。
IAM ポリシーを作成したら、次の手順に従ってサービスアカウントを作成します。
この時点で、対象のサービスアカウントのアクセスキー ID とシークレットアクセスキーを取得できます。このマニュアルの以降のセクションで、Denodo Solution Manager の初期設定時にこの資格情報を使用します。
重要: 資格情報の値はパスワードと同様、安全に保管してください。
セキュリティグループを作成し、管理者やユーザーのコンピュータと Solution Manager がインストールされる EC2 インスタンスの間の接続を許可する必要があります。
ここでは、この手順について説明します。セキュリティグループの詳細については、AWS ドキュメントの「VPC のセキュリティグループ」を参照してください。
以下のテーブルの各ポートについて、これを繰り返します。
ポート |
[Source] 列で入力する値 |
SSH |
My IP |
カスタム TCP - 10090 |
VPC の CIDR (例: 111.31.0.0/16) |
カスタム TCP - 10091 |
VPC の CIDR (例: 111.31.0.0/16) |
カスタム TCP - 19090 |
- My IP および - VPC の CIDR (例: 111.31.0.0/16) |
カスタム TCP - 19443 |
- My IP および - VPC の CIDR (例: 111.31.0.0/16) |
注: My IP を選択すると、ローカルコンピュータ (例: パブリック IPv4 アドレス) から Solution Manager へのインバウンドコネクションが許可されます。
Amazon Virtual Private Cloud (VPC) にデプロイされるあらゆるインスタンスからの着信コネクションを許可するには、VPC の CIDR ブロックを入力する必要があります。これにより、Denodo Platform サーバーは Solution Manager に接続できるようになります。
上記のポートは、Solution Manager にアクセスする際に必要となります。
Solution Manager 用サービスアカウントの作成後、以下の手順に従い、Solution Manager をインストールする EC2 インスタンスを起動します。
以下の手順に従って実施してください。
Denodo Platform でサポートしているオペレーティングシステムはすべて使用できます (「ソフトウェア要件」を参照)。この例では、Amazon Linux 2 を使用します。
次のセクションでは、このキーペアを使用して SSH でインスタンスに接続します。
インスタンスの起動後、EC2 インスタンスが作成されるのを待ちます。これには数分かかります。
ここでは、Solution Manager を AWS インスタンスにインストールする方法について説明します。
注: この例では、Solution Manager をパス /opt/denodo/denodo-solutionmanager-8.0 にインストールすると仮定しています。 |
このインスタンスの EC2 ホスト名を取得するには、[Instances] に移動し、作成したばかりのインスタンスをクリックします。スクリプトの下部にあるパネル上で、[Public DNS (IPv4)] をコピーします。
unzip denodo-install-solutionmanager-8.0-linux64.zip sudo mkdir /opt/denodo sudo chown --recursive ec2-user:ec2-user /opt/denodo/ unset DISPLAY cd denodo-install-solutionmanager-8.0 chmod +x installer_cli.sh ./installer_cli.sh install |
これにより、Solution Manager のインストール先フォルダーが作成され、インストーラーが起動します。
インストール中に以下の操作を行います。
注: [express] モードを選択した場合、表示上の問題があります。つまり、express インストールの実行中に表示されるサマリでは、Virtual DataPort がポート 9999、9998、9997、9996、および 9995 を使用すると通知されますが、実際には、19999、19998、19997、19996、および 19995 を使用します。Web コンテナーでも同じ問題があり、ポート 9090 でコネクションをリッスンすると通知されますが、実際には、ポート 19090 でリッスンします。
cd /opt/denodo/denodo-solutionmanager-8.0/bin ./licensemanager_startup.sh ./solutionmanager_startup.sh./solutionmanagerwebtool_startup.sh |
上記のコマンドにより必要なサービスがすべて初期化されます。
Solution Manager のインストール後、セットアップを行う必要があります。以下の手順に従って実施してください。
自動モードに必要な構成を行うには、以下の手順に従って実施してください。
ユーザー名: admin
パスワード: admin
重要: 上記のアクセスキーを取得してください。取得しない場合、自動モードで Denodo サーバーのクラスターを作成できるようにするには、Denodo Platform 用のカスタム AMI を作成する必要があります (この作業は容易ではありません)。 |
後で自動モードで Denodo サーバーのクラスターを作成する際、デフォルトでは、Solution Manager はこれらの AMI に基づいて AWS インスタンスを作成します (クラスターの構成で、異なる AMI を指定できます)。
同じ AMI を選択した場合でも、Solution Manager は、ここで選択した AMI に基づいてインスタンスを起動する際、この AMI に対して、Virtual DataPort、Scheduler、または Data Catalog を起動するよう指示します。
自動モードで新しい環境を作成するには、以下の手順に従って実施してください。Solution Manager バージョン 8.0 でも、バージョン 7.0 と同様に、サーバーを登録することができます。
このリストは AWS アカウントから取得されています。管理を簡単にするため、この EC2 インスタンスと同じキーペアを選択します。
評価目的の場合は、1 を設定します。より多くのインスタンスを使用するには、Scheduler の構成を外部データベースに格納する機能を設定し、すべてのインスタンスで同じ構成を共有できるようにする必要があります。
注: 各インスタンスは、Denodo サービスを 1 つだけ実行しています。つまり、Virtual DataPort には EC2 インスタンスが 1 つ、Data Catalog には 1 つ、そして Scheduler には 1 つあることになります。
Solution Manager は指定された AMI に基づき EC2 インスタンスの作成を開始します。
EC2 インスタンスの作成および Denodo サーバーの起動には、通常 5 ~ 10 分かかります。
更新してから数分が経過しても、どのノードもここに表示されない場合、サービスが開始されていないことを意味します。
この後、画面左上の Denodo ロゴをクリックし、[My Applications] に戻ります。Data Catalog、Design Studio、Diagnostic & Monitoring Tool にアクセスするリンクが表示されているはずです。
Solution Manager 8.0 は、Kerberos、OAuth、SAML、または OpenID をサポートする ID プロバイダー (IdP) と統合できます。これにより、ユーザーはシングルサインオンを利用できるようになります。つまり、ユーザーは、ID プロバイダー (IdP) に一度だけ資格情報を入力すればよいことになります。Kerberos の場合は入力の必要はありません。その後は、ユーザー名とパスワードを入力することなく、Solution Manager へログインし、さらにそこから、Design Studio (Virtual DataPort 用の新しい Web インターフェイス)、Data Catalog、そして Scheduler にログインできるようになります。
Solution Manager の権限システムは、Virtual DataPort のシステムと同じです。つまり、Solution Manager は、ユーザーに割り当てられたロールを取得します。そして、ユーザーが行うことのできる操作は、Solution Manager でこのロールに割り当てられた権限に応じて決まります。
シングルサインオンを有効にするには、以下の手順に従って実施してください。
この処理の詳細については、Solution Manager 管理ガイドの「シングルサインオンによる認証」を参照してください。
この手順の後、Solution Manager および接続先の Virtual DataPort で、必要なロールを作成する必要があります。
ロールの作成後、Solution Manager からログアウトします。これで、[Single Sign-On] ボタンが表示されます。すでに ID プロバイダーにログインしている場合、このボタンをクリックすると、自動的に Solution Manager にログインできます。
いいえ。
Solution Manager および Denodo サーバーは、お客様の組織の AWS アカウントで動作しています。そのため、自動クラウドモードで処理を実行するには、お客様の AWS クライアント ID とクライアントシークレットを入力する必要があります。
Solution Manager では、AWS が提供する AWS SDK for Java を使用します。この SDK を使用して、Solution Manager はクラスター作成時に指定した AMI に基づき、新しいインスタンスを起動します。これを実行するために、Solution Manager では AWS の資格情報を使用します。
Solution Manager は、EC2 インスタンスを起動するときに、情報を EC2 インスタンスに渡すことを目的とした、「起動時にインスタンスユーザーデータを指定する」という AWS の機能を使用します。Solution Manager の場合は、以下の情報を渡します。
AWS コンソールでは、Solution Manager が作成して各インスタンスに渡したデータを確認することができます。[Images] ページに移動し、インスタンスを右クリックして [Instance settings] > [User data] の順にクリックします。JSON ドキュメントが表示されます。
Denodo 用 AMI は、インスタンスの起動時に、スクリプト aws_init_config.py (パス: /opt/denodo/denodo-platform-8.0/tools/cloud/aws/) を実行するよう構成されています。このスクリプトは、このインスタンスに渡された「user data」を読み込むほか、以下の処理を実行します。
このメカニズムの詳細については、AWS ドキュメントの (「起動時に Linux インスタンスでコマンドを実行する」) を参照してください。
自動モードで Denodo サーバーのクラスターを作成する場合、コンポーネント (Virtual DataPort、Scheduler、および Data Catalog) ごとに、既存の AWS セキュリティグループを使用するか、Solution Manager でセキュリティグループを作成するかを選択することができます。
評価目的の場合、セキュリティグループを作成するほうが容易です。なぜなら、Solution Manager がコンポーネントごとにセキュリティグループ 1 つ を自動的に作成し、このグループのそれぞれで、そのコンポーネントのポートにのみインバウンドトラフィックを許可するからです。しかし、「現実のシナリオ」では、組織の AWS チームに問い合わせて、ネットワークのアーキテクチャに応じた最適な選択肢を決定する必要があります。
または、Solution Manager 用に作成したセキュリティグループを編集して、以下のポートへのインバウンドコネクションを許可できます。
Denodo ユーザーのコンピュータおよび Denodo に接続するクライアントアプリケーションからの着信コネクションを許可する必要があります。
詳細については、AWS ドキュメントの「VPC のセキュリティグループ」を参照してください。
Linux では、root ユーザーアカウントでアプリケーションを起動しない限り、そのアプリケーションは 1024 未満のポートでコネクションをリッスンできません。
ブラウザーで Denodo サービスに接続するときに、ユーザーが URL でポートを指定しなくてもよいようにするのであれば、ポート 80 と 443 への受信リクエストをポート 19090 と 19943 (Solution Manager の受信 HTTP コネクション および受信 HTTPS コネクション用のデフォルトポート) へリダイレクトするために、以下を実行してください。
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 19090 sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 19943 |
次に、インスタンスのセキュリティグループの構成で、許可された着信コネクションのリストに HTTP および HTTPS ポートを追加します。