概要
本構成図は、Apache Supersetを中心とした統合システムに、新しく実装された 「タイマー配信機能(Alerts & Reports)」 のインフラ構成を追加したものです。

各層とコンポーネントの詳細
① 外部プロキシ層 (External Nginx)
- IP: 192.168.1.100
- 役割: HTTPS通信の終端と、Superset(5000)およびReport App(3000)へのルーティング。
② アプリケーション層 (Superset Application Server)
- IP: 192.168.1.109
- コア・サービス:
- superset.service (Port 5000): メインのBI画面提供。
- report-app (Port 3000): 高精度なPDF帳票生成。
- 通知・自動配信インフラ (New):
- Redis: タスクの待機場所(ブローカー)。
- superset-beat.service: スケジュールを管理し、実行時間になったらRedisへタスクを投入。
- superset-worker.service: Redisからタスクを受け取り、以下の処理を実行。
- Chromium(ヘッドレスブラウザ)を使用して画面キャプチャを取得。
- メールサーバーまたはSlack APIを通じて通知を送信。
③ 外部連携層 (External Integrations)
- メール / Slack: superset-worker から生成されたレポート(画像/PDF)が自動配信される宛先です。
④ データベース層 (Remote Database Server)
- IP: 192.168.1.107 (PostgreSQL 16)
- 役割: メタデータ管理に加え、通知タスクの実行ログ(Execution Log)もここに保存されます。
自動配信(Alerts & Reports)のフロー
- 予約: ユーザーが画面上で「毎日9時に配信」と予約。
- 監視:
superset-beatが時刻を確認し、タスクをRedisに送る。 - 実行:
superset-workerがRedisからタスクを取り出し、DBから最新データを取得。 - 生成: プロセス内でChromiumを立ち上げ、ダッシュボードをPDF/画像化。
- 完了: 指定されたアドレス(Email/Slack)へ送信。


コメント