Product Documentation

XenMobileの動作の調整

2018年2月27日

XenMobileの動作のパフォーマンスと安定性にはXenMobile全体にわたる多くの設定が関連しており、NetScalerとSQL Serverデータベースの構成によっても異なります。この記事では、XenMobileの調整と最適化に関連して構成される、代表的な設定に注目します。XenMobileを展開する前に、この記事の各設定を評価することをお勧めします。

次のサーバープロパティは、XenMobileインスタンス全体の動作、ユーザー、およびデバイスにグローバルに適用されます。

これらの調整のガイドラインは、クラスタ環境と非クラスタ環境の両方に適用されます。

hibernate.c3p0.idle_test_period

この[Custom Key]というXenMobileサーバープロパティでは、接続が自動的に検証されるまでのアイドル時間を秒単位で指定します。このキーは次のように構成します。デフォルトは30です。

  • キー:カスタムキー
  • キー:hibernate.c3p0. idle_test_period
  • 値:30
  • 表示名:hibernate.c3p0. idle_test_period
  • 説明:Hibernate idle test period

hibernate.c3p0.max_size

このカスタムキーでは、XenMobileでSQL Serverデータベースに対して開くことのできる最大接続数を指定します。XenMobileでは、このカスタムキーに指定した値が上限として使用されます。接続は必要な場合のみ開かれます。値は、データベースサーバーの処理能力に合わせて設定します。

クラスター構成では、次の式に注意してください。c3p0接続にノード数を掛けた値は、XenMobileがSQL Serverデータベースに対して開くことができる実際の最大接続数と等しくなります。

クラスター構成と非クラスター化構成では、小型のSQL Serverに対してこの設定値が大きすぎると、ピーク負荷時にSQL側でリソースの問題が発生する場合があります。設定値が小さすぎると、使用可能なSQLリソースを利用できなくなる場合があります。

このキーは次のように構成します。デフォルトは 1000 です。

  • キー:hibernate.c3p0.max_size
  • 値:1000
  • 表示名:hibernate.c3p0.max_size
  • 説明:DB connections to SQL

hibernate.c3p0.min_size

このカスタムキーでは、XenMobileがSQL Serverデータベースに対して開く最小接続数を指定します。このキーは次のように構成します。デフォルトは 100 です。

  • キー:hibernate.c3p0.min_size
  • 値:100
  • 表示名:hibernate.c3p0.min_size
  • 説明:DB connections to SQL

hibernate.c3p0.timeout

このカスタムキーでは、アイドル状態のタイムアウトを指定します。データベースクラスターフェールオーバーを使用する場合は、このカスタムキーを追加し、アイドルタイムアウトの時間が短くなるように設定することをお勧めします。デフォルトは120です。

  • キー:カスタムキー
  • キー:hibernate.c3p0.timeout
  • 値:120
  • 表示名:hibernate.c3p0.timeout
  • 説明:データベースのアイドルタイムアウト

プッシュサービスのハートビート間隔

プッシュサービスのハートビート間隔には、次のキーが含まれます:

  • ios.apns.heartbeat.interval
  • windows.wns.heartbeat.interval
  • gcm.heartbeat.interval

この設定では、APNs(Appleプッシュ通知サービス)通知が一時的に配信されない場合に、デバイスでチェックする頻度を指定します。APNsのハートビートの頻度を増やすと、データベース通信が最適化される場合があります。値が大きすぎると、不必要な負荷が加わる場合があります。この設定は、iOSにのみ適用されます。デフォルトは 20 時間です。

ご使用の環境に多数のiOSデバイスがある場合、ハートビートの間隔により必要以上に負荷が高くなる場合があります。選択的なワイプ、ロック、完全なワイプなどのセキュリティ操作はこのハートビートに依存しません。これらの操作が実行されると、APNs通知がデバイスに送信されるためです。この値は、Active Directoryグループのメンバーシップが変更された後、ポリシーをどれだけ早く更新するかを管理します。そのため、多くの場合、負荷を軽減するにはこの値を12〜20時間に増やすのが適しています。

iOS MDM APNS接続プールのサイズ

APNs接続プールが小さすぎると、100を超えるデバイスを使用する場合、APNsアクティビティのパフォーマンスに悪影響を及ぼすことがあります。パフォーマンスの問題としては、アプリやポリシーのデバイスへの展開が遅くなったり、デバイスの登録が遅くなったりするといった問題があります。推奨の設定値は 10 か、地域のAPNsサーバーの最大数までの値です。デフォルトは 10 です。

auth.ldap.connect.timeout

LDAPの反応が遅い場合に対処するには、次のカスタムキーのサーバープロパティを追加することをお勧めします。

  • キー:カスタムキー
  • キー:auth.ldap.connect.timeout
  • 値:60000
  • 表示名:auth.ldap.connect.timeout
  • 説明:LDAP接続のタイムアウト

auth.ldap.read.timeout

LDAPの反応が遅い場合に対処するには、次のカスタムキーのサーバープロパティを追加することをお勧めします。

  • キー:カスタムキー
  • キー:auth.ldap.read.timeout
  • 値:60000
  • 表示名:auth.ldap.read.timeout
  • 説明:LDAP読み取りのタイムアウト

その他のサーバーの最適化

     
サーバープロパティ デフォルト設定 この設定を変更する理由
バックグラウンド展開 1,440分 バックグラウンドポリシーの展開の頻度(分)。Androidデバイスの常時接続にのみ適用されます。ポリシー展開の頻度を増やすと、サーバーの負荷が軽減されます。推奨の設定値は 1440(24時間)です。
バックグラウンドハードウェアインベントリ 1,440分 バックグラウンドハードウェアインベントリの頻度(分)。Androidデバイスの常時接続にのみ適用されます。ハードウェアインベントリの頻度を増やすと、サーバーの負荷が軽減されます。推奨の設定値は 1440(24時間)です。
削除されたActive Directoryユーザーのチェック間隔 15分 Active Directoryの標準同期時間は 15 分です。値 0 を指定すると、XenMobileは削除されたActive Directoryユーザーをチェックしません。推奨の設定値は 15 分です。
MaxNumberOfWorker 3 多数のVPPライセンスをインポートする時に使用するスレッド数です。デフォルトは 3 です。さらに最適化が必要な場合は、スレッド数を増やすことができます。ただし、スレッド数を大きくする(6など)と、VPPライセンスのインポートによりCPU使用率が非常に高くなる点に注意してください。

Androidデバイスの展開スケジュールの最適化

Google Firebase Cloud Messaging(旧Google Cloud Messaging(FCM))やXenMobileの設定を使用して、Androidデバイスの展開をスケジュールできます。

FCMを使用して展開をスケジュールする場合

XenMobile環境でFCMを有効にすると、iOSデバイスのAPNSと同様に、Androidデバイスにほぼリアルタイムで通知できます。FCMが構成されている場合で、XenMobileがポリシーのアップデートや選択的ワイプなどでデバイスに接続する必要がある場合、XenMobileはクライアントデバイスに要求を転送するようにFCMサーバーに通知メッセージを送信します。デバイスがFCMから通知を受信すると、デバイスはXenMobileに接続して以降の手順を実行します。この方法は、サードパーティ製のサーバー(Google)に依存しているため、IT部門またはCitrixサポートの管理外でサービスが中断される場合があります。

FCMサービスへの登録方法については、「XenMobile and Firebase Cloud Messaging (FCM) Configuration(XenMobileおよびFirebase Cloud Messaging(FCM)の構成)」を参照してください。

AndroidでFCMを使用する場合、次のXenMobile Serverプロパティに注意してください。これらのプロパティではまだ、Google Cloud Messagingを表す以前の頭文字GCMが使用されています。

  • GCM APIキー: Google Developers Consoleで作成されたキー。
  • GCM送信者ID: Google Developers Consoleのプロジェクト番号。
  • GCM登録ID TTL: デバイスのFCM登録IDが更新されるまでの待ち時間(日)。デフォルトは 10 です。
  • GCMハートビート間隔: デフォルトは 6 時間です。

XenMobileの設定を使用して展開をスケジュールする場合

Androidデバイスへの展開をスケジュールするには、次のXenMobile設定を使用します。

  • [接続のスケジューリングポリシー](XenMobileデバイスポリシー)を [常に] に設定すると、接続が永続的に維持されます。これにより、デリバリーグループにポリシーを即時展開できます。また、開いている接続を使用すると、サーバープロパティ [バックグラウンド展開][バックグラウンドハードウェアインベントリ] で定義されているバックグラウンドサービスをプロパティ設定ごとに実行できます。
  • デバイスに展開された各ポリシーで、[展開スケジュール][常時接続に対する展開] オプションを選択します。

注:

Androidデバイスの場合、[展開状態][以前の展開が失敗した場合のみ] に設定するとデバイスの使用に役立ちます。一部のデバイスではポリシーを上書きしたりリセットしたりします。

デバイスがポリシーをリセットした場合、XenMobileは、認証が必要なポリシーが再展開されるたびにユーザーに資格情報の入力を求めることがあります。この機能を有効にすると、サーバーの負荷にも役立ち、デバイス接続のたびにXenMobileがポリシーをプッシュする場合に、成功が失敗と成功の間でバウンスして報告されないようにできます。