このページには、 セルフホスト環境にのみ適用されるコンテンツが含まれています。
Windows
Windows の場合、 はサービスとしてデフォルトでインストールされます。アプリケーションにアクセスするには、まず、サービスが起動していることを確認する必要があります。サービスが起動したら、Web ブラウザを開いてURL にhttp://localhost:8181/ を入力すると、 管理コンソールにアクセスできます。 また、サービスを使用せずにjava コマンドを介してアプリケーションを実行することもできます。 はサービスの利用を推奨していますが、特定の構成ではこちらの方法が有効です。
サービスの起動と停止
サービスの開始と停止は、次のいずれかの方法で行います。- スタートメニューのショートカット(推奨)
- サービス管理コンソール
- コマンドプロンプトコマンド
スタートメニューのショートカット
インストーラーは、アプリケーションを簡単に使用できるスタートメニューのショートカットを作成します。以下のショートカットが利用可能です。- Start : サービスを開始します。デフォルトでは、このサービスはWindows 起動時に実行されます。そのため、アプリケーションを実行するたびにこのコマンドを実行する必要はありません。
- Stop : サービスを停止します。このアクションは、 のアップグレード時に必要です。
サービス管理コンソール
サービス管理コンソールを開くには、スタートメニューを開きサービスと入力します。表示されたサービスアプリケーションを選択します。 というサービスが表示されるまでスクロールダウンします。サービスが起動している場合は、状態カラムに実行中と表示されます。サービスを右クリックすると、開始、停止、および再起動のオプションを利用できます。コマンドプロンプト
高度なユーザーは、Windows のコマンドプロンプトを使用して、サービスに対して手動でコマンドを発行することができます。コマンドプロンプトを開き、ディレクトリをインストールフォルダに変更します(デフォルトはC:\Program Files\CData\CData Sync です)。
Microsoft PowerShell ウィンドウを使用してこれらのコマンドを発行することもできますが、構文が若干異なります。PowerShell を使用する際は、コマンドを適宜修正してください。
サービスを使わずに起動
サービスを開始せずに を実行するには、インストールフォルダでコマンドプロンプトを開きます。アプリケーションを開始するには、次のコマンドを実行します。Linux
任意の場所に をインストールしたら、 をサービスとして実行するか、アプリケーションを手動で実行することができます。 は、重要なアプリケーションに を使用する場合は、サービスの使用をお勧めします。をサービスとして実行
をサービスとして実行すると、アプリケーションをユーザープロセスから独立して実行し、再起動時に自動的に再起動することができます。 のLinux インストールがサービスとして期待どおりに機能するよう、以下の手順を実行してください:- をインストールする際は、インストールを実行するユーザーがインストールディレクトリに対する読み取りおよび書き込み権限を持っていることを確認してください。root ユーザーであれば問題ありません。
- service.sh スクリプトを実行します。このスクリプトは、展開したセットアップアーカイブのルートに配置されています。例えば、アーカイブを
/opt/syncに展開した場合、スクリプトは/opt/sync/service.shに配置されています。 - service.sh を実行した後、お使いのLinux ディストリビューションで使用されているサービスマネージャーに従って、サービスを有効化して起動します:
-
次のコマンドを実行してサービスを有効化します:
systemctl enable cdatasync -
サービスマネージャーを有効化します:
init.d の場合は、次のコマンドを実行します:
sudo service cdatasync startsystemd の場合は、次のコマンドを実行します:sudo systemctl start cdatasync
-
次のコマンドを実行してサービスを有効化します:
のデプロイ方法にかかわらず、
ApplicationDirectory 内のファイルおよびフォルダは、アプリケーションを実行するユーザーが読み取りおよび書き込みできる必要があります。Java エディションのセットアップに含まれるサービスインストーラーは、このユーザーとして cdatasync を使用します。sudo chown -R cdatasync:cdatasync /opt/sync
スタンドアロンアプリケーションの実行
サービスを作成せずに を開始するには、ターミナルでインストールディレクトリのsync.jar ファイルを開き、次のように設定ファイルを引数として指定します。組み込みJetty サーバーの構成
は、あらゆる環境ですぐに動作するようあらかじめ設定されています。ただし、 インストールディレクトリにsync.properties ファイルを生成することで、 で公開されているデータへのアクセス方法をカスタマイズできます(Windows の場合、インストールディレクトリのデフォルトはC:\Program Files\CData\CData Sync です)。
sync.properties ファイルの生成
組み込みJetty サーバーをカスタマイズする前に、sync.properties ファイルを作成する必要があります。これを行うには、.jar ファイルがあるインストールディレクトリ(InstallationDirectory)で以下のコマンドを実行します。
sync.properties ファイルを生成すると、 をアップグレードしてもこのファイルは上書きされません。
sync.properties ファイルに機密性の高い値を平文ではなく暗号化された形式で保存できます。詳細については、機密設定値の暗号化を参照してください。
ポートの変更
組み込みサーバーがリッスンするポートを設定するには、-
InstallationDirectoryにあるsync.properties ファイルを見つけ、テキストエディタで開きます。 -
ポートが設定されている次の行を探します。
cdata.http.port=8181 - この値を、希望するポート番号に変更します。
非アクティブ時タイムアウトの変更
デフォルトでは、 の非アクティブ(セッション)タイムアウトは10分(600秒)です。 タイムアウト値を変更するには、以下のようにsync.properties ファイルのcdata.session.timeout プロパティを設定します。
cdata.session.timeout=1200
SSL / TLS の有効化
SSL / TLS 接続(HTTPS)を有効化する場合にも、以下のように、InstallationDirectory のsync.properties ファイルを修正します。
cdata.tls.keyStoreType設定を、使用するキーストアのタイプに設定します。有効な値には、jks、pkcs12、およびjceks が含まれます。cdata.tls.keyStorePath設定を、使用するキーストアのパスに設定します。$cdata.home は、InstallationDirectoryを参照するために使用される場合があることに注意してください。cdata.tls.keyStorePassword設定を、キーストアのパスワードに設定します。セキュリティを強化するために、この値をsync.properties に暗号化された形式で保存できます。cdata.tls.port設定を、サーバーをホストするために使用するポートに設定します。- (オプション)
cdata.http.port設定を、プレーンテキスト接続を無効にするために空の文字列に設定します。
で設定するために外部秘密鍵を取得する場合は、必ず証明書の所有者を をホストするために使用されるサービスアカウント(
cdata:cdata)に変更してください。LDAP 認証の有効化
はLDAP 認証の使用をサポートしています。LDAP 認証を有効にするには、LDAP ユーザーと一致するユーザーが で定義されている必要があります。 でユーザーを作成する方法については、ユーザーを追加を参照してください。 LDAP 認証を有効化する場合は、以下のように、InstallationDirectory のsync.properties ファイルを修正します。
ldap.hostnameをLDAP サーバーのドメイン名またはIP アドレスに設定します。ldap.portをLDAP サーバーが実行されているポートに設定します。ldap.authenticatedMethodをLDAP サーバーに接続するときに使用する認証メカニズムに設定します。オプションはnone およびsimple です。ldap.bindDnとldap.bindPasswordを、LDAP サーバーを認証するユーザーの識別名とパスワードに設定します。セキュリティを強化するために、パスワードの値をsync.properties に暗号化された形式で保存できます。ldap.debugには、サーバーログにデバッグ情報を追加するかどうかについて設定します。オプションはtrue またはfalse です。ldap.user*には、ユーザーエントリを検索するために使用するプロパティを設定します。ldap.role*には、ロールエントリを検索するために使用するプロパティを設定します。
アプリケーションディレクトリの設定
ApplicationDirectory フォルダには、アプリケーションで使用されるすべてのデータ(設定データ、アプリケーションデータ、ログデータ、証明書など)が格納されます。ApplicationDirectory のデフォルトの場所は、 が組み込みWeb サーバー経由でホストされているか、外部のJava サーブレットコンテナ経由でホストされているかによって異なります。
組み込みWeb サーバーの場合、ApplicationDirectory は InstallationDirectory と同じです。デフォルトの場所は次のとおりです。
ApplicationDirectory はサーバーを実行しているユーザーのホームディレクトリからの相対パスです。
~/sync
このパスでは、’~’ はアプリケーションをホストするサーバーを実行しているユーザーのホームディレクトリに解決します。
ApplicationDirectory フォルダを構成でき、これはさまざまなシナリオで役立ちます。
- の複数インスタンスのクラスタリング
- アプリケーションデータ用の共有ネットワークドライブの使用
- 同じフォルダにアクセスする他のシステム内への の組み込み
ApplicationDirectory を変更すると、アプリケーションのデータファイルが移動します。ただし、EXE ファイルやJAR ファイルなどの他のアプリケーションリソースは移動しません。これらのリソースは InstallationDirectory フォルダに格納されます。このフォルダは ApplicationDirectory と同じ場合がありますが、ApplicationDirectory を変更しても、これらのリソースの場所は変わりません。
を組み込みJetty サーバーで使用する場合、ApplicationDirectory は InstallationDirectory にあるsync.properties ファイルに設定されます。このサーバー設定ファイル内で、cdata.app.directory の設定に希望するディレクトリのパスを設定する必要があります。次の例は、マウントされたドライブ上の共有フォルダにデータディレクトリを設定した場合を示しています。
cdata.app.directory のパスを見つけることができ、そのパスで読み取りと書き込みができる適切なアクセス許可を持つ場合、指定したディレクトリ内にデータフォルダを作成します。
アプリケーションデータベースの設定
バージョン26.2 以降、 はデフォルトのアプリケーションデータベースとしてApplicationDirectory にある組み込みH2 データベースを使用します。
既存のインストールでは、引き続きレガシーの組み込みDerby データベースを使用します。 は既存のインストールをH2 に自動的に移行しません。
のアプリケーションデータベースは、以下のようなアプリケーションデータの複数のテーブルを保存します。
- ジョブ
- タスク
- 接続
- 履歴(ジョブとタスク両方)
- アプリケーションログ(アプリケーションレベルのエラーとイベント)
- 監査ログ(ユーザーによる の設定変更)
ApplicationDirectory に存在します。
また、Microsoft SQL Server、PostgreSQL、MySQL などのエンタープライズデータベースを使用するよう を設定することもできます。外部データベースを設定する別の方法もありますが(例えば、AWS-AMI 版で説明されているように)、推奨されるアプローチは移行ドキュメントの手順に従うことです。
組み込みJava サーバー
を組み込みJetty サーバーで使用する場合、アプリケーションデータベースはInstallationDirectory にあるsync.properties ファイルに設定されます。このサーバー設定ファイル内で、cdata.app.db の設定に、希望するデータベースの適切な接続パラメータを含むJava Database Connectivity (JDBC) 接続文字列を設定する必要があります。次の例は、この設定をMySQL、PostgreSQL、およびSQL データベースについて示しています。
MySQL
cdata.app.db 接続文字列で正常に接続を確立できる場合、そのデータベースをアプリケーションデータベースとして使用します。
機密設定値の暗号化
は、sync.properties ファイルに機密性の高い設定値を暗号化された形式で保存することをサポートしています。機密設定値を暗号化することで、通常の設定動作を維持しながら、sync.properties 内の認証情報を保護できます。 組み込みWeb サーバーは、設定を読み取る際に暗号化された値を自動的に復号化します。平文の値を暗号化された同等の値に置き換えた後、追加の手順は必要ありません。 以下の設定プロパティに暗号化された値を使用できます。- アプリケーションデータベース接続:
cdata.app.db - TLS キーストアパスワード:
cdata.tls.keyStorePassword - LDAP ログインサービスの設定:
cdata.loginService.ldap.*
-EncryptConnectionString パラメーターを使用して、コマンドラインから暗号化された値を生成できます。このパラメーターは、接続文字列だけでなく任意の文字列を受け入れます。
例:
SECURE: または ENCRYPTEDA: プレフィックスを確認します。プレフィックスが存在する場合、 は内部で値が使用される前に復号化します。
暗号化された値は、設定の処理およびシリアライズ中も保持されます。この動作により、設定データが書き込まれ再読み込みされる際も、機密性の高い設定が暗号化されたままになります。
ログインのロックアウト
は、ブルートフォースアタックを防ぐために、不正なパスワードを何度も入力するユーザーを自動的にロックアウトします。デフォルトでは、5分以内に6回不正なパスワードを入力したユーザーは30分間ロックアウトされます。 Web サーバーの動作を規定するXML 設定ファイルを編集することで、ロックアウトの設定を変更できます。この3つの設定はロックアウトに関係します。- LockoutFailedAttempts - ロックアウトのトリガーとなる不正なパスワードの数。ロックアウトを無効にするには、LockoutFailedAttempts を0に設定します。
- LockoutMinutes - ロックアウトする時間。デフォルトは30分です。
- LockoutTimeCheckPeriod - 失敗した試行回数を0にリセットするまでの時間。デフォルトは5分です。
initParameters に追加します。
一般的な課題と解決方法
このセクションでは、Java 環境に をデプロイする際に遭遇する可能性がある一般的な課題をリストアップします。それぞれの課題について推奨ソリューションを記載します。その他のヘルプについては、 テクニカルサポート:** support@cdata.co.jp** にお問い合わせください。 課題 が起動しない、または期待されるものとは異なるAppDirectory を使用して起動する このエラーは、 がApplicationDirectory にアクセスするために必要な権限を持っていない可能性があります(ApplicationDirectory は、ジョブ、接続、変換などの設定に関する重要な情報を保存するフォルダです)。このエラーの原因として考えられるのは、サービスをセットアップする前にローカルユーザーとして を実行している場合です。この場合、アプリケーションで作成される特定のリソースが、ローカルユーザーの下に作成されている可能性があります。結果として、 をサービスとして実行する場合にこれらのリソースを利用できません。
推奨ソリューション
Linux オペレーティング環境で、サービスアカウント(または を実行させるための他のアカウント)が ApplicationDirectory にアクセスできることを確認する最も簡単な方法は、chown コマンドを使用することです。例えば、ApplicationDirectory がLinux のデフォルトの場所にあって がサービスアカウントで実行されるべき場合、以下のコマンドでエラーが解決されるはずです。