関連テンプレ構成
テンプレート
# システム構成
## 環境定義一覧
本システムでは、以下の環境を構築する。
| 環境名 | 用途 | 構成 | アクセス制限 |
|--------|------|------|------------|
| 開発環境(Dev) | 開発・単体テスト | 単一サーバー | 開発者のみ |
| テスト環境(Test) | 結合テスト・受入テスト | 本番同等の冗長構成 | 開発者・QA・ユーザー |
| ステージング環境(Staging) | リリース前検証 | 本番同等の冗長構成 | 運用チームのみ |
| 本番環境(Production) | 本番稼働 | 冗長構成 | 運用チームのみ |
**環境間のデータ移行ルール**
- 本番データは開発環境に直接コピーしない(個人情報保護のため)
- テストデータは匿名化・マスキング処理後に使用
- 環境間でのコード移行はCI/CDパイプラインを経由
---
## システム構成図
システム全体の構成を以下に示す。

**構成図作成ツール**: [draw.io](https://draw.io) を使用して作成
**主要コンポーネント**
- Webサーバー: Nginx(リバースプロキシ・SSL終端)
- アプリケーションサーバー: Node.js / Java(Spring Boot)
- データベース: PostgreSQL / MySQL
- キャッシュ: Redis
- メッセージキュー: RabbitMQ / AWS SQS
- ストレージ: S3(ファイル保存)
---
## サーバー構成
### サーバー一覧
| サーバー種別 | ホスト名 | OS | スペック | 台数 | 用途 |
|------------|---------|----|---------|----|------|
| Webサーバー | web-01, web-02 | Ubuntu 22.04 | 4vCPU, 8GB RAM | 2 | リバースプロキシ・静的コンテンツ配信 |
| APサーバー | app-01, app-02 | Ubuntu 22.04 | 8vCPU, 16GB RAM | 2 | アプリケーション実行 |
| DBサーバー | db-primary | Ubuntu 22.04 | 16vCPU, 64GB RAM, SSD 500GB | 1 | データベース(プライマリ) |
| DBサーバー | db-standby | Ubuntu 22.04 | 16vCPU, 64GB RAM, SSD 500GB | 1 | データベース(スタンバイ) |
| キャッシュサーバー | cache-01, cache-02 | Ubuntu 22.04 | 4vCPU, 16GB RAM | 2 | Redis(マスター・レプリカ) |
| バッチサーバー | batch-01 | Ubuntu 22.04 | 8vCPU, 16GB RAM | 1 | バッチ処理 |
### サーバー構成図

---
## ミドルウェア構成
### ミドルウェア一覧
| カテゴリ | 製品名 | バージョン | 用途 |
|---------|--------|----------|------|
| OS | Ubuntu Server | 22.04 LTS | サーバーOS |
| Webサーバー | Nginx | 1.24.x | リバースプロキシ・SSL終端 |
| アプリケーションサーバー | Node.js | 20.x LTS | バックエンドAPI実行 |
| データベース | PostgreSQL | 15.x | メインデータベース |
| キャッシュ | Redis | 7.x | セッション管理・キャッシュ |
| メッセージキュー | RabbitMQ | 3.12.x | 非同期処理 |
| 監視 | Prometheus + Grafana | Latest | メトリクス収集・可視化 |
| ログ管理 | Fluentd + Elasticsearch | Latest | ログ収集・検索 |
### ミドルウェア構成図
各サーバーにインストールされるミドルウェアの構成を以下に示す。

---
## ネットワーク構成
### ネットワーク構成図

---
### ネットワークセグメント一覧
| セグメント名 | ネットワークアドレス | 用途 | 接続可能範囲 |
|------------|------------------|------|-----------|
| Public Subnet | 10.0.1.0/24 | ロードバランサー・NATゲートウェイ | インターネット |
| Private Subnet 1 | 10.0.10.0/24 | Webサーバー | Public Subnet, Private Subnet 2 |
| Private Subnet 2 | 10.0.20.0/24 | アプリケーションサーバー | Private Subnet 1, 3 |
| Private Subnet 3 | 10.0.30.0/24 | データベース・キャッシュ | Private Subnet 2 |
### ファイアウォールルール
**インバウンドルール**
| 送信元 | 宛先 | プロトコル | ポート | 許可/拒否 |
|-------|------|----------|--------|---------|
| インターネット | ロードバランサー | HTTPS | 443 | 許可 |
| ロードバランサー | Webサーバー | HTTP | 80 | 許可 |
| Webサーバー | アプリケーションサーバー | HTTP | 8080 | 許可 |
| アプリケーションサーバー | データベース | PostgreSQL | 5432 | 許可 |
| アプリケーションサーバー | キャッシュ | Redis | 6379 | 許可 |
| 管理端末 | 全サーバー | SSH | 22 | 許可(VPN経由) |
---
## ハードウェア構成(オンプレミス環境の場合)
### 物理サーバー仕様
| サーバー種別 | 型番 | CPU | メモリ | ストレージ | ネットワーク | 台数 |
|------------|------|-----|--------|----------|-----------|------|
| Webサーバー | Dell PowerEdge R450 | Xeon Silver 4314 (16コア) | 64GB | SSD 480GB × 2 (RAID1) | 10GbE × 2 | 2 |
| APサーバー | Dell PowerEdge R650 | Xeon Gold 5320 (26コア) | 128GB | SSD 960GB × 2 (RAID1) | 10GbE × 2 | 2 |
| DBサーバー | Dell PowerEdge R750 | Xeon Gold 6338 (32コア) | 512GB | NVMe SSD 1.92TB × 4 (RAID10) | 25GbE × 2 | 2 |
### ネットワーク機器
| 機器種別 | 型番 | ポート数 | 用途 | 台数 |
|---------|------|---------|------|------|
| コアスイッチ | Cisco Catalyst 9300 | 48ポート (10GbE) | サーバー間通信 | 2 (冗長構成) |
| ファイアウォール | Palo Alto PA-3220 | 16ポート (10GbE) | 外部接続・セキュリティ | 2 (Active-Standby) |
| ロードバランサー | F5 BIG-IP 4000s | 8ポート (10GbE) | 負荷分散 | 2 (Active-Standby) |
### ストレージ
| 種別 | 型番 | 容量 | 接続方式 | 用途 | 台数 |
|------|------|------|---------|------|------|
| SAN | Dell PowerStore 500T | 50TB (実効容量) | iSCSI (10GbE) | データベース用ストレージ | 1 |
| NAS | QNAP TS-h1290FX | 100TB | NFS/SMB (10GbE) | ファイル共有・バックアップ | 1 |
### ラック構成図
物理的なラック配置を以下に示す。

**ラック配置の考慮事項**
- 冗長構成のサーバーは別ラックに配置(電源・ネットワーク障害の影響を最小化)
- 重量のある機器(ストレージ・UPS)は下段に配置
- 発熱量の多い機器は空調効率を考慮して配置
--- プレビュー
システム構成
環境定義一覧
本システムでは、以下の環境を構築する。
| 環境名 | 用途 | 構成 | アクセス制限 |
|---|---|---|---|
| 開発環境(Dev) | 開発・単体テスト | 単一サーバー | 開発者のみ |
| テスト環境(Test) | 結合テスト・受入テスト | 本番同等の冗長構成 | 開発者・QA・ユーザー |
| ステージング環境(Staging) | リリース前検証 | 本番同等の冗長構成 | 運用チームのみ |
| 本番環境(Production) | 本番稼働 | 冗長構成 | 運用チームのみ |
環境間のデータ移行ルール
- 本番データは開発環境に直接コピーしない(個人情報保護のため)
- テストデータは匿名化・マスキング処理後に使用
- 環境間でのコード移行はCI/CDパイプラインを経由
システム構成図
システム全体の構成を以下に示す。
構成図作成ツール: draw.io を使用して作成
主要コンポーネント
- Webサーバー: Nginx(リバースプロキシ・SSL終端)
- アプリケーションサーバー: Node.js / Java(Spring Boot)
- データベース: PostgreSQL / MySQL
- キャッシュ: Redis
- メッセージキュー: RabbitMQ / AWS SQS
- ストレージ: S3(ファイル保存)
サーバー構成
サーバー一覧
| サーバー種別 | ホスト名 | OS | スペック | 台数 | 用途 |
|---|---|---|---|---|---|
| Webサーバー | web-01, web-02 | Ubuntu 22.04 | 4vCPU, 8GB RAM | 2 | リバースプロキシ・静的コンテンツ配信 |
| APサーバー | app-01, app-02 | Ubuntu 22.04 | 8vCPU, 16GB RAM | 2 | アプリケーション実行 |
| DBサーバー | db-primary | Ubuntu 22.04 | 16vCPU, 64GB RAM, SSD 500GB | 1 | データベース(プライマリ) |
| DBサーバー | db-standby | Ubuntu 22.04 | 16vCPU, 64GB RAM, SSD 500GB | 1 | データベース(スタンバイ) |
| キャッシュサーバー | cache-01, cache-02 | Ubuntu 22.04 | 4vCPU, 16GB RAM | 2 | Redis(マスター・レプリカ) |
| バッチサーバー | batch-01 | Ubuntu 22.04 | 8vCPU, 16GB RAM | 1 | バッチ処理 |
サーバー構成図
ミドルウェア構成
ミドルウェア一覧
| カテゴリ | 製品名 | バージョン | 用途 |
|---|---|---|---|
| OS | Ubuntu Server | 22.04 LTS | サーバーOS |
| Webサーバー | Nginx | 1.24.x | リバースプロキシ・SSL終端 |
| アプリケーションサーバー | Node.js | 20.x LTS | バックエンドAPI実行 |
| データベース | PostgreSQL | 15.x | メインデータベース |
| キャッシュ | Redis | 7.x | セッション管理・キャッシュ |
| メッセージキュー | RabbitMQ | 3.12.x | 非同期処理 |
| 監視 | Prometheus + Grafana | Latest | メトリクス収集・可視化 |
| ログ管理 | Fluentd + Elasticsearch | Latest | ログ収集・検索 |
ミドルウェア構成図
各サーバーにインストールされるミドルウェアの構成を以下に示す。
ネットワーク構成
ネットワーク構成図
ネットワークセグメント一覧
| セグメント名 | ネットワークアドレス | 用途 | 接続可能範囲 |
|---|---|---|---|
| Public Subnet | 10.0.1.0/24 | ロードバランサー・NATゲートウェイ | インターネット |
| Private Subnet 1 | 10.0.10.0/24 | Webサーバー | Public Subnet, Private Subnet 2 |
| Private Subnet 2 | 10.0.20.0/24 | アプリケーションサーバー | Private Subnet 1, 3 |
| Private Subnet 3 | 10.0.30.0/24 | データベース・キャッシュ | Private Subnet 2 |
ファイアウォールルール
インバウンドルール
| 送信元 | 宛先 | プロトコル | ポート | 許可/拒否 |
|---|---|---|---|---|
| インターネット | ロードバランサー | HTTPS | 443 | 許可 |
| ロードバランサー | Webサーバー | HTTP | 80 | 許可 |
| Webサーバー | アプリケーションサーバー | HTTP | 8080 | 許可 |
| アプリケーションサーバー | データベース | PostgreSQL | 5432 | 許可 |
| アプリケーションサーバー | キャッシュ | Redis | 6379 | 許可 |
| 管理端末 | 全サーバー | SSH | 22 | 許可(VPN経由) |
ハードウェア構成(オンプレミス環境の場合)
物理サーバー仕様
| サーバー種別 | 型番 | CPU | メモリ | ストレージ | ネットワーク | 台数 |
|---|---|---|---|---|---|---|
| Webサーバー | Dell PowerEdge R450 | Xeon Silver 4314 (16コア) | 64GB | SSD 480GB × 2 (RAID1) | 10GbE × 2 | 2 |
| APサーバー | Dell PowerEdge R650 | Xeon Gold 5320 (26コア) | 128GB | SSD 960GB × 2 (RAID1) | 10GbE × 2 | 2 |
| DBサーバー | Dell PowerEdge R750 | Xeon Gold 6338 (32コア) | 512GB | NVMe SSD 1.92TB × 4 (RAID10) | 25GbE × 2 | 2 |
ネットワーク機器
| 機器種別 | 型番 | ポート数 | 用途 | 台数 |
|---|---|---|---|---|
| コアスイッチ | Cisco Catalyst 9300 | 48ポート (10GbE) | サーバー間通信 | 2 (冗長構成) |
| ファイアウォール | Palo Alto PA-3220 | 16ポート (10GbE) | 外部接続・セキュリティ | 2 (Active-Standby) |
| ロードバランサー | F5 BIG-IP 4000s | 8ポート (10GbE) | 負荷分散 | 2 (Active-Standby) |
ストレージ
| 種別 | 型番 | 容量 | 接続方式 | 用途 | 台数 |
|---|---|---|---|---|---|
| SAN | Dell PowerStore 500T | 50TB (実効容量) | iSCSI (10GbE) | データベース用ストレージ | 1 |
| NAS | QNAP TS-h1290FX | 100TB | NFS/SMB (10GbE) | ファイル共有・バックアップ | 1 |
ラック構成図
物理的なラック配置を以下に示す。
ラック配置の考慮事項
- 冗長構成のサーバーは別ラックに配置(電源・ネットワーク障害の影響を最小化)
- 重量のある機器(ストレージ・UPS)は下段に配置
- 発熱量の多い機器は空調効率を考慮して配置