MicroStrategy ONE
起動時に行う稼働状態の確認処理
MicroStrategy 2019 リリースでは、サービス名をいくつか変更しました。このガイドでは、サービスの基盤となるファイルを修正する必要があるので、従来のサービス名を使って説明します。
Telemetry Store (旧 Platform Analytics Consumer) および Identity Telemetry Producer (旧 Usher Metadata Producer) は、次の 3 つのコンポーネントに依存します。テレメトリー ログを処理するためには、この 3 つにアクセスできなければなりません。
- Platform Analytics Repository (実体はデータベース サーバー)
- Telemetry Cache (Redis)
- Telemetry Server (Kafka)
3 つすべてが正常に稼働していなければ、Platform Analytics はテレメトリー ログを処理できません。ひとつでも障害があると、Telemetry Store (コンシューマー) や Identity Telemetry (プロデューサー) は停止してしまいます。そこで、コンシューマー/プロデューサーは起動時に、上記コンポーネントの稼働状況を確認し、結果を詳細なレポートとしてまとめます。
確認処理が始まった時点で、いずれかのコンポーネントが起動処理中で、完全に稼働していないこともありえます。その場合、60 秒ごとに 3 回繰り返して稼働状況を確認するようになっています。
Platform Analytics のアーキテクチャについて詳しくは、Platform Analytics のアーキテクチャとサービスを参照してください。
レポート名と出力先
稼働状況の確認は、Platform Analytics Consumer と Usher Metadata Producer の両方が、起動時に実施します。したがってレポートも、次に示す Platform Analytics の log フォルダーに、それぞれ生成されることになります。
- Linux: /opt/MicroStrategy/PlatformAnalytics/log
- Windows:C:\Program Files (x86)\MicroStrategy\Platform Analytics\log
どちらが生成したレポートかは、ファイル名で区別できます。
次に例を示します。
platform-analytics-consumer-health-check-yyyymmddhhmmss.out
platform-analytics-usher-lookup-producer-health-check-yyyymmddhhmmss.out
稼働状況の確認結果のレポート
各レポートは次の 4 つのセクションから成ります。
各セクションには、3 つのコンポーネントそれぞれの確認結果が載っています。
ヘルス チェック
ヘルス チェックについては次の 2 つの事項を確認します。
- コンシューマー/プロバイダーは、インストール中に提供され、 PAConsumerConfig.yaml 構成ファイルですか?接続できない場合、問題の原因を診断するために追加のネットワーク接続テストが実行されます。
- データベース ユーザーが必要な権限を付与されているか。インストールに必要な前提条件については、Platform Analytics の前提条件を参照してください。
ヘルス チェック レポートには、必要な権限とその付与状況の一覧が載っています。すべてのチェックに成功すると、最終行は以下となります Warehouse health check result is healthy。
任意の行を読み取りましたか Failed、チェック PAConsumerConfig.yaml ファイルを作成し、データベースに正しい権限があることを確認します
考えられる問題とその対処法を以下に示します。
権限の不足
データベース ユーザーが に保存されている場合 PAConsumerConfig.yaml 構成ファイルに権限がありません。 INFO [privilege type] privilege: Failed。管理者が該当する権限を当該データベース ユーザーに付与した後、コンシューマーを再起動してください。
権限を付与する手順を以下に示します。
- Platform Analytics Consumer および Usher Metadata Producer をいったん停止します。
- Platform Analytics Repository を収容するデータベース サーバーに接続します。次のコマンドを実行してください。ただし「someuser」と「somehost」は顧客が指定する情報で置き換えます。コピー
GRANT DROP ON platform_analytics_wh.* TO ‘someuser’@‘somehost’;
- Platform Analytics Consumer と Usher Metadata Producer を再起動します。
接続の失敗
コンシューマーまたは生産者が、 で指定された構成を使用してデータベースに接続できない場合、 PAConsumerConfig.yaml 構成ファイルで次のエラーが表示される場合があります:
2018-11-21 21:43:28,793 INFO HealthCheck main - Failed to connect to the database. Retrying after waiting for 60 seconds.
2018-11-21 21:45:31,797 INFO HealthCheck main - Failed to connect to the database. Retrying after waiting for 60 seconds.
2018-11-21 21:47:34,800 ERROR HealthCheck main - Failed to connect to the database using url:jdbc:mysql://XX.Y.Z.1:3306/platform_analytics_wh?rewriteBatchedStatements=true&useLegacyDatetimeCode=false&serverTimezone=UTC. Please double check your connection parameters.
Communications link failure
選択: PAConsumerConfig.yaml ファイルは、インストール中に指定されたデータベース情報に基づいて設定されます。このエラーを解決するには、Platform Analytics をホストしているマシンに接続し、 warehouseDbConnection ヘッダーは以下の中で正しいです PAConsumerConfig.yaml ファイル。
データベース ユーザーのパスワードが不正
暗号化したウェアハウスのパスワードが正しくない場合、コンシューマー/プロデューサーはデータベースに接続できません。新しいパスワードに暗号化を施し、設定を更新する手順については、Platform Analytics Repository に設定した、データベース ユーザーのパスワードの更新 を参照してください。
SSL が有効な状態でデータベース ユーザーを作成したことによるエラー
Platform Analytics は MySQL 5.6、5.7、8.0 の各版に対応しています。MySQL 8.0 の場合、SSL 接続がデフォルトで有効になっています。一方、Platform Analytics は現状、MySQL に対する SSL 接続に対応していません。Platform Analytics Consumer またはUsherメタデータ プロバイダー用のデータベース ユーザーを作成する際、SSL/TLS オプションを指定します。 REQUIRE 句。
SSL を無効にする手順:
Redis の稼働状況
Redis については、コンシューマー/プロデューサーが Redis サーバーに接続できるか否かを確認します。レポートには、起動時に収集した、Redis に関する詳しい統計情報が載っています。すべてのチェックに成功すると、最終行は以下となります Redis server health check result is healthy。
チェックにエラーが表示された場合、Redis が実行されていること、および の設定が正しいことを確認してください。 PAConsumerConfig.yaml ファイル。
Redis で以下のエラーのいずれかを受信した場合 ヘルス チェック。推奨回避策:
Redis が停止
コンシューマー/プロデューサーが Redis に接続できない原因として、Redis が停止していることが考えられます。その場合、MicroStrategy In-Memory Cache、Platform Analytics Consumer、Usher Metadata Producer を起動してください。
Redis への接続不可
コンシューマーまたは生産者が Redis に接続できない場合、構成が正しくないことが考えられます PAConsumerConfig.yaml ファイル。このエラーを解決するには、Platform Analytics をホストしているマシンに接続し、 redisConnection ヘッダーは以下の中で正しいです PAConsumerConfig.yaml ファイル。
パスワード認証を有効化 エラー
コンシューマー/プロデューサーが Redis に接続できない原因として、パスワード認証が有効になっていることが考えられます。初期状態の Redis はパスワード認証が無効になっていますが、いつでも有効にすることができます。
Redis がパスワード認証で有効になっており、パスワードが PAConsumerConfig.yaml 構成ファイルであるため、コンシューマーまたは生産者は Redis に接続できなくなります。その場合、MicroStrategy Telemetry Cache に対するパスワード認証の有効化の手順に従って対処してください。
Kafka の稼働状況
Kafka については、Telemetry Manager (Apache Zookeeper) および Telemetry Server (Kafka Server) が稼働しており接続されているか否かを確認します。すべてのチェックに成功すると、最終行は以下となります Kafka cluster health check result is healthy。
Telemetry Server は Telemetry Manager に依存しているので、先に Telemetry Manager を起動する必要があります。
エラーが見つかった場合は、ZooKeeper および Kafka が稼働していることを確認してください。
ZooKeeper サーバーがすべてのノードで実行されているかどうかを確認する方法
- Linux では、次のコマンドを実行して PID を実行します。コピー
ps ax | grep java | grep -i QuorumPeerMain | grep -v grep | awk '{print $1}'
- Windows では、[サービス] ダイアログを開き、\"Apache ZooKeeper\" サービスが実行されているかどうか確認します。
Kafka サーバーがすべてのノードで実行されているかどうかを確認する方法
- Linux では、次のコマンドを実行して PID を実行します。コピー
ps ax | grep -i 'kafka\\.Kafka' | grep java | grep -v grep | awk '{print $1}'
- Windows では、[サービス] ダイアログを開き、\"Apache Kafka\" サービスが実行されているかどうか確認します。
ZooKeeper と Kafka をすべてのノードで開始する方法
-
Linux では、Kafka ディレクトリで次のコマンドを実行します。
コピー# Start Zookeeper on all nodes,
./zookeeper-server-start.sh -daemon ../config/zookeeper.properties
# Start Kafka on all nodes,
./kafka-server-start.sh -daemon ../config/server.properties - Windows では、[サービス] ダイアログを開き、Apache ZooKeeper と Apache Kafka を開始します。
ZooKeeper および Kafka の、複数のノードから成るクラスター化環境であれば、ZooKeeper の全ノードをまず起動してください。
要約
すべてのヘルス チェックに成功した場合、結果は passing。いずれかのチェックに失敗した場合、 FAIL 対応するコンポーネントについてです上記の詳細レポートをもとに、考えられる原因を調べてください。