クロスプラットフォーム版

Version 24.2.8965


クロスプラットフォーム版


CData Arc のクロスプラットフォーム版には組み込みEclipse Jetty Web サーバーが含まれ、外部サーバー構成なしでArc を実行できます。さらに、インストールにはApache Tomcat、Eclipse Jetty、またはIBM WebSphere などのJava サーブレットコンテナにデプロイ可能なWAR ファイルが含まれています。

組み込みJetty サーバーの使用には、JDK 11 またはそれ以上のバージョンがマシンにインストールされている必要があります。外部Java サーブレットコンテナへのデプロイにはサーブレット3.0(Jetty 8+、Tomcat 7+、WebSphere 8+、など)が必要です。

Note:Arc のデプロイ方法に関わらず、AppDirectory 内のファイルおよびフォルダは、アプリケーションを実行するユーザーによって読み取り / 書き込み可能である必要があります。Java 版のセットアップに同梱されるサービスインストーラーは、cdataarc を実行しているユーザーとして使用します。

アプリケーションが別のユーザーで以前実行されていて、cdataarc ユーザーがアプリケーションを実行するために必要な権限を復元したい場合は、以下のようなコマンドを使用してください。

sudo chown -R cdataarc:cdataarc /opt/arc

Windows

Windows の場合、Arc はサービスとしてデフォルトでインストールされます。アプリケーションにアクセスするには、まず、サービスが起動していることを確認する必要があります。サービスが起動したら、Web ブラウザを開いてURL にhttp://localhost:8080/ を入力すると、Arc 管理コンソールにアクセスできます。

また、サービスを使用せずにjava コマンドを介してアプリケーションを実行することもできます。CData はサービスの利用を推奨していますが、特定の構成ではこちらの方法が有効です。

サービスの起動と停止

サービスの開始と停止は、次のいずれかの方法で行います。

スタートメニューのショートカット

Arc インストーラーは、アプリケーションを簡単に使用できるスタートメニューのショートカットを作成します。これらのショートカットにアクセスするには、スタートメニューを開いてCData Arc フォルダを展開します。以下のショートカットが利用可能です。

  • CData Arc 管理コンソールを起動:デフォルトのWeb ブラウザでWeb ブラウザウィンドウを開き、管理コンソールURL http://localhost:8080/ にアクセスします。サービスが起動していない場合、Web ブラウザはエラーを返します。

  • CData Arc を起動:Arc サービスを開始します。デフォルトでは、このサービスはWindows 起動時に実行されるため、アプリケーションを実行するたびにこのコマンドを実行する必要はありません。

  • CData Arc を停止:Arc サービスを停止します。このアクションは、Arc のアップグレード時に必要です。

サービス管理コンソール

サービス管理コンソールを開くには、スタートメニューを開きサービスと入力します。表示されたサービスアプリケーションを選択します。

CData Arc というサービスが表示されるまでスクロールダウンします。サービスが起動している場合は、状態カラムに実行中と表示されます。サービスを右クリックすると、サービスを開始停止再開するオプションにアクセスできます。

コマンドプロンプト

高度なユーザーは、Windows のコマンドプロンプトを使用して、サービスに対して手動でコマンドを発行することができます。コマンドプロンプトを開き、ディレクトリをインストールフォルダに変更します(デフォルトはC:\Program Files\CData\CData Arc です)。

Note:Microsoft PowerShell ウィンドウを使用してこれらのコマンドを発行することもできますが、構文が若干異なります。PowerShell を使用する際は、コマンドを適宜修正してください。

Arc サービスを開始するには、次のコマンドを実行します。

arc.exe -start

サービスを再開または停止するには、次のコマンドを実行します。

arc.exe --restart --ServiceName "CData Arc"
arc.exe --stop --ServiceName "CData Arc"

サービスを使わずに起動

サービスを開始せずにArc を実行するには、インストールフォルダでコマンドプロンプトを開きます。アプリケーションを開始するには、次のコマンドを実行します。

java -jar arc.jar

Linux

Arc を任意の場所にインストールしたら、Arc をサービスとして実行するか、アプリケーションを手動で実行することができます。CData は、重要なアプリケーションにArc を使用する場合は、サービスの使用をお勧めします。

Arc をサービスとして実行

Arc をサービスとして実行すると、アプリケーションをユーザープロセスから独立して実行し、再起動時に自動的に再起動することができます。これは、重要なアプリケーションに推奨される方法です。

CData では、Linux 上でArc アプリケーションを管理するデーモンの作成を推奨しています。インストールパッケージに含まれるスクリプトで、これを自動的に行うことができます。必要に応じて、手動でデーモンを作成することも可能です。

システムが systemd デーモンマネージャーを使用している場合に、Arc デーモンを設定する最も安全な方法は、インストールパッケージに含まれているスクリプトを実行することです。

bash ./service.sh

このスクリプトは、arc.service という名前のデーモンを作成します。その後、systemctl を使用してデーモンを管理できます。

systemctl enable arc
systemctl start arc

スタンドアロンアプリケーションの実行

サービスを作成せずにArc を開始するには、ターミナルでインストールディレクトリのarc.jar ファイルを開き、次のように設定ファイルを引数として指定します。

java -jar arc.jar

組み込みJetty サーバーの構成

Arc は、あらゆる環境ですぐに動作するようあらかじめ設定されています。ただし、CData Arc インストールディレクトリにarc.properties ファイルを生成することで、Arc で公開されているデータへのアクセス方法をカスタマイズできます(Windows の場合、インストールディレクトリのデフォルトはC:\Program Files\CData\CData Arc です)。

arc.properties ファイルの生成

組み込みJetty サーバーをカスタマイズする前に、arc.properties ファイルを作成する必要があります。arc.jar があるインストールディレクトリで以下のコマンドを実行します。

java -jar arc.jar -GenerateProperties

これで、インストールディレクトリにarc.properties ファイルが作成されます。このファイルには、ポートを変更したりTLS / SSL を有効化したりするために変更できるパラメータが含まれています。

Note:一度このファイルを生成すると、Arc へのアップグレードでは上書きされません。

ポートの変更

組み込みサーバーがリッスンするポートを変更するには、

  1. InstallationDirectory にあるarc.properties ファイルを見つけ、テキストエディタで開きます。

  2. ポートが設定されている次の行を探します。

    cdata.http.port=8080

  3. この値を、希望するポート番号に変更します。

TLS/SSL の有効化

TLS / SSL 接続(HTTPS)を有効化する場合にも、以下のように、 InstallationDirectory のarc.properties ファイルを修正します。

  1. cdata.tls.keyStoreType 設定を、使用するキーストアのタイプに設定します。有効な値には、jkspkcs12、およびjceks が含まれます。

  2. cdata.tls.keyStorePath 設定を、使用するキーストアのパスに設定します。${cdata.home} は、 InstallationDirectory を参照するために使用される場合があることに注意してください。

  3. cdata.tls.keyStorePassword 設定を、キーストアのパスワードに設定します。

  4. cdata.tls.port 設定を、サーバーをホストするために使用するポートに設定します。

  5. (オプション)cdata.http.port 設定を、プレーンテキスト接続を無効にするために空の文字列に設定します。

最終的にはこのようになります。

;; HTTP
cdata.http.port=

;; TLS
cdata.tls.port=8443
cdata.tls.keyStoreType=PKCS12
cdata.tls.keyStorePath=${cdata.home}/mycertificate.pfx
cdata.tls.keyStorePassword=mypassword

Note:Arc で設定するために外部秘密鍵を取得する場合は、必ず証明書の所有者をArc (cdataarc:cdataarc) をホストするために使用されるサービスアカウントに変更してください。

Jetty XML ファイルの生成

ほとんどのデプロイメントで、arc.properties ファイルは、組み込みJetty サーバーに必要なすべての設定オプションを提供します。ただし、より複雑なデプロイメントが必要な場合は、Jetty XML ファイルを生成し、そこからさらに修正を加えることができます。このファイルを生成するには、arc.jar があるArc インストールディレクトリで以下のコマンドを実行します。

java -jar arc.jar -GenerateXML

コマンドが完了すると、webapp フォルダにarc.xml 設定ファイルが表示されます。そのフォルダに保存されている限り、アプリケーションの起動に使用されます。

サーバーの起動と停止

service.sh スクリプトを使用してArc サービスをセットアップする場合は、サービスとして実行 を参照してください。それ以外の場合は、インプロセスで実行 セクションが該当します。

インプロセスで実行

セットアップ中にアプリケーションダウンロードから抽出されるarc.jar ファイルを実行して、組み込みJetty サーバーを起動します。このファイルを実行してサーバーを起動するには、以下に示すような標準のJava 構文を使用できます。

java -jar arc.jar

サーバーを停止するには、このコマンドに-stop パラメータを渡します。

java -jar arc.jar -stop

サービスとして実行

サービス名としてarc を参照して、標準のシステムサービスコマンドを使用してArc サービスを操作できます。

サービスを起動するには、次のコマンドを送信します。

systemctl start arc

サービスを停止するには、次のコマンドを送信します。

systemctl stop arc

サービスを再開するには、次のコマンドを送信します。

systemctl restart arc

Tomcat での設定

WAR ファイルの配布

Tomcat にWAR ファイルを配布するには2つのオプションがあります。

  • webapps フォルダにWAR ファイルをコピーする。

  • Tomcat の管理コンソール内でWAR ファイルの配布を行う。Apache Tomcat のドキュメントには、この方法のさらに詳しい説明があります。お使いのTomcat のバージョンのドキュメントを参照してください。

WAR ファイルがTomcat のファイルアップロードに許可されているデフォルトの最大サイズを超える可能性があります。デプロイメント中のエラーを解決するために、Manager アプリケーションのweb.xml ファイルを変更して、より大きなファイルを許可することができます。Tomcat の設定に応じて、このファイルは/usr/share/tomcat7-admin/manager/WEB-INF、または別の類似ディレクトリにある可能性があります。このファイルでは、許容される最大ファイルサイズ(バイト単位)を変更できます。例えば、200-MB のWAR ファイルのデプロイメントを許容するには、次の値を変更して許容される最大ファイルサイズを変更します。

<multipart-config>
     <!-- 200-MB max -->
  <max-file-size>209715200</max-file-size>
  <max-request-size>209715200</max-request-size>
  <file-size-threshold>0</file-size-threshold>
</multipart-config>

Java 認証・承認サービス(JAAS)の設定

Arc がアプリケーション内で動的にユーザーを管理できるようにするには、次のサブセクションで説明するようにJAAS を設定する必要があります。

ログインモジュールの作成

$CATALINA_BASE/conf/ フォルダに、jaas.config という名前のJAAS コンフィギュレーションファイルを作成します。

標準認証を使用するには、jaas.config に次の内容を含めます。

Arc {
  arc.LoginModule required;
};

LDAP またはWindows Active Directory を使用してユーザーを認証する場合は、代わりに以下の内容を追加します。

Arc {
  com.sun.security.auth.module.LdapLoginModule REQUIRED
    userProvider="ldaps://ab1cdef234.wfsaas.net:636/CN=Users,DC=example,DC=com"
    authIdentity="{USERNAME}@example.com"
    userFilter="(&(|(samAccountName={USERNAME})(userPrincipalName={USERNAME})(cn={USERNAME}))(objectClass=user))"
    useSSL=false;
  arcesb.LoginModule optional;
};

この例では、userProviderauthIdentity、およびuserFilter 属性の値を環境に合わせて変更する必要があります。

JAASRealm モジュールの作成(または変更)

以下にあるコンフィギュレーションXML ファイルを作成(既存の場合は変更)して、Arc のコンテキストを作成します。

$CATALINA_BASE/conf/Catalina/localhost/arc.xml

Note:Tomcat の構成によっては、このパスが若干異なる場合があります。この例では、Catalina はエンジン名、localhost はserver.xml で定義されたホスト名を示します。

以下で示すように、<Context> ブロックを定義して<Realm> 要素を追加します。

<Context>
  <Realm className="org.apache.catalina.realm.JAASRealm" appName="Arc"
    userClassNames="arc.SimplePrincipal"
    roleClassNames="arc.GroupPrincipal" />
</Context>

次に、Tomcat サーバーのコンフィギュレーションファイルserver.xml の<Host> 要素を、以下のようにcopyXML 属性をtrue に設定して更新します。

<Host name="localhost" appBase="webapps" unpackWARS="true" autoDeploy="true" copyXML="true">
  ...
</Host>

Note:アプリケーション固有のコンテキストがserver.xml に存在する場合は、arc.xml よりも優先されます。次に例を示します。

<Context path="arc">
   ...
</Context>

CData は、APP_DIRECTORY やAPP_DB などのアプリケーションコンテキストをオーバーライドするものは、JAASRealm が定義されているarc.xml に移動することを推奨します。

ログインモジュールの表示

コンフィギュレーションを表示するには、Java 仮想マシン(JVM)がログインモジュール(jaas.config)に誘導される必要があります。JVM のjava.security.auth.login.config システムプロパティをjaas.config ファイルのパスに設定します。これを行うには、次の行を$CATALINA_BASE/conf/catalina.properties ファイルに追加します。

java.security.auth.login.config=${catalina.base}/conf/jaas.config

データディレクトリ権限の設定

Java サーブレットコンテナを実行するプロセスのユーザーに、以下のように、適切な場所にあるデータディレクトリへの読み / 書きのアクセス権限を許可します。

  • Windows:C:\ProgramData\CData\Arc\

  • Linux: ~/cdata/arc

Tomcat サーバーを再起動して、変更を反映します。これでアプリケーションにログインすることができます。

WebSphere での設定

WebSphere クラスローダーの設定

WebSphere がアプリケーションリソースを正しくロードするためには、以下の手順に従ってください。

  1. WebSphere で、アプリケーション -> アプリケーション・タイプ -> WebSphere エンタープライズ・アプリケーションに移動します。

  2. Arc を選択します。

  3. クラス・ロードおよび更新の検出を選択します。

  4. 最初にローカル・クラス・ローダーをロードしたクラス(親が最後)を選択します。

  5. アプリケーションの単一クラス・ローダーを選択します。

  6. OK をクリックします。その後保存をクリックします。

Java 認証・承認サービス(JAAS)の設定

次の手順でJAAS を設定し、Arc がWebSphere Application Server 内で動的にユーザーを管理できるようにします。

  1. Arc をデプロイします。

    1. アプリケーションセキュリティを有効化します(セキュリティー -> グローバル・セキュリティー -> アプリケーション・セキュリティーを使用可能にする)。

    2. 次のように、システムログインにカスタムログインモジュールを追加します。

      1. セキュリティー -> グローバル・セキュリティー -> Java 認証・承認サービス -> システム・ログイン -> WEB_INBOUND に移動します。新規をクリックしてarc.LoginModule という名前の新しいエントリを追加します。arc.LoginModulecom.ibm.ws.security.server.lm.ltpaLoginModule の前にある必要があることに注意してください。

      2. ログイン・モジュール・プロキシーの使用チェックボックスを選択します。

      3. 認証ストラテジーOPTIONAL を選択します。

      4. カスタム・プロパティーisWebSphere を追加してtrue に設定します。

  2. グループを作成します。

    1. ユーザーおよびグループ -> グループの管理 -> 作成に移動します。

    2. cdata_admincdata_standard、およびcdata_support グループを作成します。

  3. グループをロールにマップします。

    1. アプリケーション -> アプリケーション・タイプ -> WebSphere エンタープライズ・アプリケーション -> arc_war -> ユーザー / グループへのセキュリティー・ロールのマッピングに移動します。

    2. cdata_admin グループをcdata_admin ロールにマップします。

    3. cdata_standard グループをcdata_standard ロールにマップします。

    4. cdata_support グループをcdata_support ロールにマップします。

    5. アプリケーションのレルム内で認証済みすべてcdata_user ロールにマップします。

  4. com.ibm.ws.webcontainer.AllowQueryParamWithNoEqual プロパティをtrue に設定します。

    1. サーバー -> サーバー・タイプ -> Web Sphere Application Server に移動し、Arc がホストされているサーバーを選択します。

    2. コンテナー設定 -> Web コンテナー設定 -> Web コンテナーを選択します。

    3. 追加プロパティー -> カスタム・プロパティーを選択します。

    4. 新規プロパティ:com.ibm.ws.webcontainer.AllowQueryParamWithNoEqual を追加します。

    5. 値をtrue に設定します。

  5. WebSphere を再起動します。

データディレクトリ権限の設定

Java サーブレットコンテナを実行するプロセスのユーザーに、データディレクトリへの読み / 書きのアクセス権限を許可します。

  • Windows:C:\ProgramData\CData\Arc\

  • Linux: ~/cdata/arc

WebSphere サーバーを再起動して、変更を反映します。これでアプリケーションにログインすることができます。

Jetty での設定

Arc にはJetty Web サーバーが組み込まれていますが、アプリケーションを外部のJetty 設定で使用することもできます。

WAR ファイルの配布

WAR ファイルをJetty のwebapps フォルダにコピーします。

Java 認証・承認サービス(JAAS)の設定

JAAS を設定してArc がアプリケーションのユーザーを管理できるようにするには、次のサブセクションで説明する手順を実行する必要があります。

JAAS モジュールの追加

JAAS モジュールをインストールするには、次のコマンドを送信します。

java -jar {JETTY_HOME}/start.jar --add-to-start=jaas

ログインモジュールの作成

{JETTY_BASE}/etc/login.conf フォルダに、login.config という名前のログインコンフィギュレーションファイルを作成します。

login.config ファイルに以下の内容を記述します。

Arc {
    arc.LoginModule required debug=true;
};

セキュリティハンドラの更新

セキュリティハンドラの設定は、arc.xml 設定ファイルにあります。securityHandler ブロックを以下のように変更します。

<Set name="securityHandler">
  <New class="org.eclipse.jetty.security.ConstraintSecurityHandler">
   <Set name="loginService">
     <New class="org.eclipse.jetty.jaas.JAASLoginService">
          <!-- This name is the same as **login-config > realm-name** in web.xml.  -->
       <Set name="name">ArcRealm</Set>
          <!-- LoginModuleName must match the name of your LoginModule, as declared in your login-module configuration file. -->
       <Set name="loginModuleName">Arc</Set>
       <!-- Set the principal class name for the custom role. -->
       <Set name="roleClassNames">
           <Array type="java.lang.String">
             <Item>arc.GroupPrincipal</Item>
           </Array>
         </Set>
     </New>
   </Set>
  </New>
</Set>

データディレクトリ権限の設定

Java サーブレットコンテナを実行するプロセスのユーザーに、データディレクトリへの読み / 書きのアクセス権限を許可します。

  • Windows:C:\ProgramData\CData\Arc\

  • Linux: ~/cdata/arc

Jetty サーバーを再起動して、変更を反映します。これでアプリケーションにログインすることができます。

ユーザー管理

初めて起動する際、Arc はユーザー名とパスワードの資格情報を持つユーザーの作成を要求します。最初のユーザーを作成後、アプリケーションの設定ページのユーザータブで、ユーザーの追加、削除、および管理を行うことができます。

Arc を外部のJava サーブレットにデプロイする場合(つまり、アプリケーション付属の組み込みサーバーを使用しない場合)、Arc によるユーザーの管理を可能にするためJAAS の設定が必要です。前のセクションで、特定の外部サーブレットごとにJAAS を設定するプロセスを詳しく説明しています。

アプリケーションディレクトリの検索と設定

Arc ApplicationDirectory フォルダには、アプリケーションで使用されるすべてのデータ(設定データ、アプリケーションデータ、ログデータ、証明書など)が格納されます。ApplicationDirectory のデフォルトの場所は、Arc が組み込みWeb サーバー経由でホストされているか、外部のJava サーブレットコンテナ経由でホストされているかによって異なります。

組み込みWeb サーバーの場合、 ApplicationDirectoryInstallationDirectory と同じです。デフォルトの場所は次のとおりです。

/opt/arc

Arc が外部のJava サーブレットコンテナにホストされている場合、 ApplicationDirectory はサーバーを実行しているユーザーのホームディレクトリからの相対パスです。

~/arc

このパスでは、’~’ はアプリケーションをホストするサーバーを実行しているユーザーのホームディレクトリに解決します。

ApplicationDirectory フォルダを構成でき、これはさまざまなシナリオで役立ちます。

  • Arc の複数インスタンスのクラスタリング

  • アプリケーションデータ用の共有ネットワークドライブの使用

  • 同じフォルダにアクセスする他のシステム内へのArc の組み込み

ApplicationDirectory を変更すると、アプリケーションのデータファイルが移動します。ただし、EXE ファイルやJAR ファイルなどの他のアプリケーションリソースは移動しません。これらのリソースは InstallationDirectory フォルダに格納されます。このフォルダは ApplicationDirectory と同じ場合がありますが、 ApplicationDirectory を変更しても、これらのリソースの場所は変わりません。

組み込みJava サーバー

クロスプラットフォーム版を組み込みJetty サーバーで使用する場合、デフォルトで ApplicationDirectoryInstallationDirectory となります。これを変更するには、arc.properties ファイルを生成します。テキストエディタでファイルを開き、cdata.app.directory 設定を、目的のディレクトリのパスに設定します。次の例は、マウントされたドライブ上の共有フォルダにデータディレクトリを設定した場合を示しています。

cdata.app.directory=/mnt/shared/arc

Arc がcdata.app.directory のパスを見つけることができ、そのパスで読み取りと書き込みができる適切なアクセス許可を持つ場合、指定したディレクトリにデータフォルダを作成します。

外部Java サーバー

クロスプラットフォーム版を外部のJava サーブレット(アプリケーションに含まれるJetty サーバー以外のサーバー)で使用する場合、アプリケーションのデータディレクトリの設定の詳細は使用する特定のサーブレットに依存します。特定のサーブレットに適した構文を使用するAppDirectory 環境変数を必要なディレクトリのパスに設定する必要があります。

Arc がAppDirectory のパスを見つけることができ、そのパスで読み取りと書き込みができる適切なアクセス許可を持つ場合、指定したディレクトリにデータフォルダを作成します。

アプリケーションデータベースの設定

Arc のアプリケーションデータベースは、以下のようなアプリケーションデータの複数のテーブルを保存します。

  • トランザクションログ:アプリケーションによって処理される各トランザクションのメタデータ
  • アプリケーションログ:アプリケーションレベルのエラーとイベント
  • アクセスログ:アプリケーションのWeb エンドポイントへのリクエスト
  • 監査ログ:ユーザーによるArc の設定変更

デフォルトでArc は ApplicationDirectory に存在するDerby データベースをアプリケーションデータベースとして使用します。ただし、SQL Server、PostgreSQL、MySQL などのエンタープライズデータベースを使用するようにアプリケーションを設定できます。

組み込みJava サーバー

クロスプラットフォーム版を組み込みJetty サーバーで使用する場合、デフォルトのアプリケーションデータベースは ApplicationDirectory にあるDerby データベースです。これを変更するには、arc.properties ファイルを生成します。テキストエディタでファイルを開き、cdata.app.db の設定に、必要なデータベースの適切な接続パラメータを含むJava Database Connectivity (JDBC) 接続文字列を設定します。次の例は、この設定をMySQL、PostgreSQL、およびSQL データベースについて示しています。

MySQL

cdata.app.db=jdbc:cdata:mysql:server=localhost;port=3306;database=mysql;user=MyUserName;password=MyPassword

PostgreSQL

cdata.app.db=jdbc:cdata:postgresql:server=localhost;port=5432;database=postgresql;user=MyUserName;password=MyPassword

SQL Server

cdata.app.db=jdbc:cdata:sql:server=localhost;database=sqlserver;user=MyUserName;password=MyPassword

Arc がcdata.app.db 接続文字列で正常に接続を確立できる場合、そのデータベースをアプリケーションデータベースとして使用します。

Note:アプリケーションデータベースとしてSQL Server を使用する際のデッドロックの可能性を減らすため、CData ではREAD_COMMITTED_SNAPSHOT が有効化されていることの確認を推奨しています。

暗号化されたデータベース接続文字列の生成

Arc は、アプリケーションのデータベース接続用に暗号化された接続文字列を生成する機能を提供します。この暗号化された接続文字列を使用することで、Arc 設定ファイルにログイン認証情報をプレーンテキストで保存することなく、アプリケーションデータベースを指定することができます。暗号化された接続文字列を生成するには、arc.jar があるインストールディレクトリで、接続情報を引用符で囲んだ例の文字列に置き換えて、以下のコマンドを実行します:

java -jar arc.jar -EncryptConnectionString "jdbc:cdata:mysql:Server=serverName;Port=1234;Database=databaseName;User=userName;Password=passwordSample"

コマンドを発行すると、コマンドウィンドウに暗号化された文字列が出力されます。次に例を示します。

ENCRYPTEDA:5TWyjE0U4GBEVNkd51SqbMXaBwVGqj5uyMfTHt48y/F5l3sDPZynNnPMb/ppXzuFTzFPywA1/SSKUgLy9nAuvA7RAdZj7WsKI1xAgDMmEFNQ68/lHjFYZpS10sIaoUloyZVDkj4uLHTZ0SaMD5PPUA==

この暗号化された文字列を、上記のように cdata.app.db のプレーンテキスト値の代わりに使用することができます。

外部Java サーバー

クロスプラットフォーム版を外部のJava サーブレット(アプリケーションに含まれるJetty サーバー以外のサーバー)で使用する場合、アプリケーションのデータベースの設定の詳細は使用する特定のサーブレットに依存します。特定のサーブレットに適した構文を使用する、サーバーを設定する際のアプローチを次のいずれかから選択します。

  • ターゲットデータベースの接続プロパティを含むJNDI データソースを定義。

  • APP_DB 環境変数をJDBC 接続文字列に設定。

Arc がJDNI データソースまたはAPP_DB 接続文字列を使用してデータベースに同期できる場合、そのデータベースをアプリケーションデータベースとして使用します。

ログインのロックアウト

Arc は、ブルートフォースアタックを防ぐために、不正なパスワードを何度も入力するユーザーを自動的にロックアウトします。デフォルトでは、5分以内に6回不正なパスワードを入力したユーザーは30分間ロックアウトされます。

Web サーバーの動作を規定するXML 設定ファイルを編集することで、ロックアウトの設定を変更できます。この3つの設定はロックアウトに関係します。

  • LockoutFailedAttempts:ロックアウトのトリガーとなる不正なパスワードの数。ロックアウトを無効にするには、LockoutFailedAttempts を0に設定します。

  • LockoutMinutes:ロックアウトする時間。デフォルトは30分です。

  • LockoutTimeCheckPeriod:失敗した試行回数を0にリセットするまでの時間。デフォルトは5分です。

組み込みJetty サーバー

ロックアウト設定を変更するには、arc.properties ファイルを生成し、以下のようにname:value ペアのカンマ区切りのリストをinitParameters に追加します。

cdata.initParameters=LockoutFailedAttempts:0

Tomcat

Tomcat arc.xml ファイルのロックアウト設定を編集するための構文は以下のとおりです。

<Context>
  <Parameter name="LockoutFailedAttempts" value="0" />
</Context>

一般的な課題と解決方法

このセクションでは、Java 環境にArc をデプロイする際に遭遇する可能性がある一般的な課題をリストアップします。それぞれの課題について推奨ソリューションを記載します。その他のヘルプについては、CData テクニカルサポート:support@cdata.co.jp にお問い合わせください。

課題

Arc が起動しない、または期待されるものとは異なるAppDirectory を使用して起動する

このエラーは、Arc が ApplicationDirectory にアクセスするために必要な権限を持っていない可能性があります( ApplicationDirectory は、ジョブ、接続、変換などの設定に関する重要な情報を保存するフォルダです)。このエラーの原因として考えられるのは、サービスをセットアップする前にローカルユーザーとしてArc を実行している場合です。この場合、アプリケーションで作成される特定のリソースが、ローカルユーザーの下に作成されている可能性があります。結果として、Arc をサービスとして実行する場合にこれらのリソースを利用できません。

推奨ソリューション

Linux オペレーティング環境で、サービスアカウント(またはArc を実行させるための他のアカウント)が ApplicationDirectory にアクセスできることを確認する最も簡単な方法は、chown コマンドを使用することです。例えば、 ApplicationDirectory がLinux のデフォルトの場所にあってArc がサービスアカウントで実行されるべき場合、以下のコマンドでエラーが解決されるはずです。

sudo chown -R cdataarc:cdataarc /opt/arc