exemONE 全体アーキテクチャおよび構成要素の詳細説明
1. exemONE 全体構造の概要
exemONEは、モニタリング対象サーバーにインストールされるエージェントと中央収集サーバー(Collector)で構成される統合モニタリングプラットフォームです。

2. アーキテクチャ要約構成図
モニタリング対象サーバーにインストールされたエージェントからデータを収集し、中央収集サーバーで処理してユーザーに可視化画面を提供します。

3. 収集サーバーのコアモジュール詳細説明
3-1. exemONE 独自の収集モジュール
| モジュール名 | 役割 |
|---|---|
| exemone-receiver | エージェントからデータを受信します。 |
| exemone-ingester | 受信したデータをストレージ(ClickHouse、PostgreSQLなど)に保存します。Kafkaを通じて受信したメッセージを消費して処理します。 |
| exemone-core | ClickHouseデータベースのテーブルスキーマを管理(形状管理)します。データ構造の変更、テーブルの作成/修正などを担当します。 |
| exemone-alerter | アラート処理を担当します。アラートルールのチェック、Notification送信(Webhook、Telegram、KakaoTalk、Email、SMSなど)を処理します。 |
| exemone-gateway | APIゲートウェイとして、クライアントのリクエストを適切なサービスにルーティングします。認証、セッション管理、SSO処理などを担当し、基本ポートは8080です。 |
| exemone-api | APIサーバーとして、Web UIおよび外部連携用のREST APIを提供します。 |
| exemone-front | フロントエンドサーバー(Nginxベース)として、Web UI画面を提供します。 |
| exemone-db-agent | 収集サーバー内蔵のDB Agentとして、データベース指標を収集します。 |
| exemone-cloud-agent | 収集サーバー内蔵のCloud Agentとして、AWS、Azureなどクラウドサービス指標を収集します。 |
| exemone-api-agent | 製品(Maxgaugeなど)連携データ収集用のエージェントです。 |
3-2. 外部(インフラ)サポートモジュール
| モジュール名 | 役割 |
|---|---|
| exemone-clickhouse | 時系列データ保存用のカラム型データベース。モニタリング指標データ(メトリック、イベントなど)を保存します。 |
| exemone-postgresql | exemONEの設定/管理データを保存するRepository DBです。ユーザー、エージェント、アラートルール、権限などのメタデータを管理します。 |
| exemone-redis | キャッシュサーバー。セッション、トークンなどの一時データを高速に処理します。 |
| exemone-kafka | メッセージキュー。エージェントから受信したデータをバッファリングしingesterに伝達する非同期メッセージパイプラインです。 |
| exemone-cache | Nginxベースのキャッシュサーバー。静的リソースおよびAPIレスポンスのキャッシングを処理します。 |
| exemone-https | HTTPS処理モジュール。SSL/TLS終端処理を担当します。 |
4. エージェント構成要素の詳細説明
4-1. エージェントの種類および役割
| エージェント名 | モニタリング対象 | インストール位置 |
|---|---|---|
| exem-host-agent | Linux/Windowsサーバー OS指標 (CPU、Memory、Disk、Networkなど) | モニタリング対象サーバー |
| exem-manager-agent | host-agent、db-agentの再起動、停止、パッチ管理 | モニタリング対象サーバー |
| exemone-db-agent | Database (Oracle、MySQL、PostgreSQL、SQL Server、MongoDBなど) | DBサーバーまたは収集サーバー内蔵 |
| exemone-cloud-agent | AWS、Azureクラウドサービス指標 | 収集サーバー内蔵 |
| exemone-api-agent | Maxgaugeなど製品連携データ収集 | 収集サーバー内蔵 |
| exem-k8s-agent | Kubernetes Pod、Node、Container、Namespaceなど | K8sクラスター内 |
| exem-webserver-agent | Apache、NginxウェブサーバーおよびRUM(Real User Monitoring) | ウェブサーバーまたは別途エージェントサーバー |
| exem-ndm-agent | Network Device (SNMPベースのネットワーク機器) | 別途インストール |
| exem-java-agent | Java Application (Tomcat、Spring Bootなど) APM | アプリケーションサーバー JVM |
| exem-kafka-agent | Kafka Cluster、Broker、Client | 別途インストール |
| exem-nodejs-agent | Node.js アプリケーション | 別途インストール |
| exem-dotnetfw-agent | .NETフレームワークベースのWebアプリケーション | 別途インストール |
| exem-python-agent | Pythonベースの Webアプリケーション (Django、Flask、FastAPI) | 別途インストール |