JBoss のコネクションプールから IBM Cloud Object Storage のデータ に接続
CData JDBC Driver は、コネクションプーリングの標準手順に従ってJBoss で設定できます。本記事では、JBoss アプリケーションのコネクションプールから IBM Cloud Object Storage のデータ にアクセスする方法を解説します。JBoss 管理インターフェースを使用して CData JDBC Driver for IBM Cloud Object Storage を設定し、コネクションプールから IBM Cloud Object Storage のデータ にアクセスします。
管理コンソールから IBM Cloud Object Storage 用のJDBC データソースを作成
以下の手順に従って、ドライバーJAR を追加し、必要な接続プロパティを定義します。
- Runtime メニューで、管理ドメインにデプロイするかスタンドアロンサーバーにデプロイするかに応じて、Domain またはServer メニューを選択し、「Manage deployments」をクリックしてDeployments ページを開きます。
- Add をクリックします。表示されるウィザードで、インストールディレクトリのlib サブフォルダにあるドライバーのJAR ファイルとライセンスを追加します。デフォルト設定でウィザードを完了し、ドライバーを選択してEnable をクリックします。
- Configuration メニューで、Subsystems -> Connector -> Datasources をクリックします。JDBC Datasources ページが開きます。
- Add をクリックし、表示されるウィザードでドライバーの名前とJNDI 名を入力します。例:
java:jboss/root/jdbc/IBMCloudObjectStorage
- 上記で追加したドライバーを選択します。
JDBC URL とユーザー名、パスワードを入力します。JDBC URL の構文は、jdbc:ibmcloudobjectstorage: の後にセミコロン区切りの接続プロパティを記述します。
Cloud Object Storage 接続プロパティの取得・設定方法
Cloud Object Storage に接続する前に、Cloud Object Storage インスタンスを登録してCloud Object Storage API キーとCRN を取得していきます。
Cloud Object Storage の新規インスタンスの登録
IBM Cloud アカウントにCloud Object Storage がまだない場合は、以下の手順に従ってアカウントにSQL Query のインスタンスをインストールできます。
- IBM Cloud アカウントにログインします。
- Cloud Object Storage ページに移動して、インスタンス名を指定して「作成」をクリックします。Cloud Object Storage の新規インスタンスにリダイレクトされます。
API キー
API キーは以下の手順で取得できます。
- まずは、IBM Cloud アカウントにログインします。
- API キーページに移動します。
- 中央右隅のIBM Cloud APIキーの作成 をクリックして、新しいAPI キーを作成します。
- ポップアップウィンドウが表示されたら、API キーの名前を指定して作成をクリックします。ダッシュボードからはアクセスできなくなるため、API Key を控えておきましょう。
Cloud Object Storage CRN
デフォルトでは、CData 製品はCloud Object Storage CRN を自動で取得します。ただし、複数のアカウントがある場合は、CloudObjectStorageCRN を明示的に指定する必要があります。この値は、次の2つの方法で取得できます。
- Services ビューをクエリする。これにより、IBM Cloud Object Storage インスタンスとそれぞれのCRN がリストされます。
- IBM Cloud で直接CRN を見つける。これを行うには、IBM Cloud のダッシュボードに移動します。リソースリストで、ストレージからCloud Object Storage リソースを選択してCRN を取得します。
IBM Cloud Object Storage への接続
これで準備は完了です。以下の接続プロパティを設定してください。
- InitiateOAuth:GETANDREFRESH に設定。InitiateOAuth を使うと、OAuth 認証を繰り返す必要がなく、さらに自動でアクセストークンを設定できます。
- ApiKey:セットアップ中に控えたAPI キーを指定。
- CloudObjectStorageCRN(オプション):控えておいたCloud Object Storage のCRN に設定。Cloud Object Storage アカウントが複数ある場合のみ設定する必要があります。
プロパティを設定したら、これで接続設定は完了です。
組み込みの接続文字列デザイナー
JDBC URL の作成には、IBM Cloud Object Storage JDBC Driver に組み込まれている接続文字列デザイナーを使用してください。JAR ファイルをダブルクリックするか、コマンドラインからJAR ファイルを実行します。
java -jar cdata.jdbc.ibmcloudobjectstorage.jar
接続プロパティを入力し、接続文字列をクリップボードにコピーします。
一般的な接続文字列は次のとおりです。
jdbc:ibmcloudobjectstorage:ApiKey=myApiKey;CloudObjectStorageCRN=MyInstanceCRN;Region=myRegion;OAuthClientId=MyOAuthClientId;OAuthClientSecret=myOAuthClientSecret;
- 接続をテストしてウィザードを完了します。IBM Cloud Object Storage データソースを選択し、Enable をクリックします。
JBoss のその他の統合
上記の手順は、シンプルなコネクションプーリングシナリオでドライバーを設定する方法を示しています。詳細については、JBoss EAP ドキュメントのData Source Management の章を参照してください。