HOME > 技術ドキュメント > 小規模Webシステムの本番インフラ設計入門
小規模Webシステムの本番インフラ設計入門
執筆:株式会社エスロジカル(Webシステム受託開発・インフラ構築・運用改善)
「本番で動かすのは初めて」「小規模だけど止められないシステムを作りたい」という相談を多くいただきます。
本記事では、ユーザー数数百〜数千程度の小規模 Web システムを VPS やクラウドで本番運用する際に、
インフラ設計で押さえるべき要素と実務上の判断基準を整理します。
1. 本番インフラを構成する要素の整理
小規模でも本番環境として最低限必要な要素は次の通りです。
| 要素 | 役割 | 典型的な選択肢 |
|---|---|---|
| Webサーバー | HTTP/HTTPS リクエストの受付・返却 | Nginx、Apache |
| アプリケーションサーバー | ビジネスロジックの処理 | Go / Node.js / PHP-FPM / Gunicorn |
| データベース | データの永続化 | MySQL、PostgreSQL |
| ストレージ | ファイル・画像の保存 | ローカルディスク、AWS S3、OCI Object Storage |
| SSL/TLS 証明書 | 通信の暗号化・ドメイン認証 | Let's Encrypt、有料 SSL証明書 |
| バックアップ | 障害時のデータ復旧 | mysqldump + S3、スナップショット |
| 監視 | 異常の早期検知・アラート | Prometheus + Grafana、UptimeRobot |
2. 実行環境の選択:クラウド vs VPS vs 専用サーバー
| 選択肢 | メリット | デメリット・注意点 | 向いているケース |
|---|---|---|---|
| クラウド(AWS / OCI / Azure) | スケール自由、マネージドサービス豊富 | 設定が複雑、コスト変動あり | 将来の拡張を見据えた設計 |
| VPS(さくら・ConoHa 等) | 月額固定・構成シンプル | スケール上限あり、冗長化が難しい | 低コストで安定稼働が必要な場合 |
| 専用サーバー | CPU/メモリの独占利用 | コスト高、初期設定に時間がかかる | 高負荷・セキュリティ要件が厳しい場合 |
実務判断:「将来 5 倍以上にスケールする可能性がある」「マネージド DB を使いたい」なら最初からクラウドを選ぶ。 そうでなければ VPS の方が構成がシンプルで運用コストが低く収まるケースが多いです。
3. サーバー構成:1台構成と分離構成の判断
- 1 台構成(Web + DB 同居):月額コスト最小、設定・デプロイがシンプル。 DB とアプリが同じサーバーなので通信遅延ゼロ。 → 初期フェーズ・ユーザー数 1,000 人未満・予算制約がある場合に有効。
- Web/App サーバー + DB サーバー分離:スケールアウト・バックアップ設計が柔軟になる。 DB は外部からアクセス不可に設定しやすい。 → DB 容量が増大すると予想される・個人情報保護やセキュリティ要件が厳しい場合に推奨。
- CDN 追加(Cloudflare / CloudFront):静的ファイル(画像・CSS・JS)をオフロードするだけでレスポンスが大きく改善。 → 画像が多いサイト・海外ユーザーがいる場合に検討。
4. ネットワーク設計とファイアウォール
本番環境では「最小権限の原則」に基づきポートを絞ります。
- 外部に開放するポート:80(HTTP)・443(HTTPS)・22(SSH、接続元 IP を固定する)
- DB ポート(3306 / 5432)は外部に絶対に開放しない
- SSH はパスワード認証を無効化し公開鍵認証のみに(SSH セキュリティ設定の詳細)
- UFW / iptables / セキュリティグループで受信ルールを明示的に管理し、「暗黙の許可」を排除する
5. HTTPS は必須:SSL証明書の選び方
本番 Web システムは HTTPS 必須です。
HTTP のみの本番運用はブラウザの警告表示・SEO ペナルティ・通信盗聴リスクがあり、現在では認められません。
HTTP のみの本番運用はブラウザの警告表示・SEO ペナルティ・通信盗聴リスクがあり、現在では認められません。
- Let's Encrypt(無料 DV):certbot で自動取得・自動更新。個人・スタートアップの初期フェーズに適切。 ただし 2026〜2029 年にかけて有効期間が最大 47 日に短縮される予定で、自動更新の仕組みが必須になります。
- 有料 SSL証明書(DV / OV / EV):企業サイト・EC・個人情報を扱うシステムでは OV 以上を推奨。 共有ホスティングや certbot を動かせない環境でも取得でき、保証(Warranty)も付きます。
SSL証明書の一覧・購入はこちら(RapidSSL 3,960円/年〜) / DV・OV・EV の違い / SSL証明書 FAQ
6. バックアップ設計の最低ライン
小規模でも「バックアップがない本番」は設計不完全です。次の構成を基本とします。
- DB の日次 dump(mysqldump / pg_dump)→ 圧縮して S3 / オブジェクトストレージへ転送
- アプリケーションコードは Git で管理(デプロイ=git pull か Docker イメージのプル)
- 設定ファイル(Nginx・systemd unit)も Git または S3 に保存
- VPS・クラウドのスナップショット機能を週次で取得
- 最も重要:定期的にリストア手順を実際に試すこと。バックアップが存在していても復元できなければ意味がありません。
7. 死活監視の最低ライン
本番で何かが起きたとき、「ユーザーから連絡が来て気づく」では遅すぎます。 最低限、外形監視(外部からの HTTP ヘルスチェック)を設定します。
- UptimeRobot(無料プラン)・Better Uptime などで 5 分間隔の HTTP チェック
- ダウン検知時に Slack・メールへアラートを飛ばす
- CPU・メモリ・ディスク使用率は Prometheus + Grafana で可視化(設定方法はこちら)
- SSL 証明書の期限切れも監視に含める(期限 30 日前にアラート)
8. コスト目安(月額)
| 構成要素 | 月額目安 | 備考 |
|---|---|---|
| VPS 1 台(2GB RAM) | 1,500〜3,000 円 | さくらVPS・ConoHa・Linode 等 |
| クラウド(OCI Always Free) | ほぼ 0 円〜 | 無料枠あり。転送量超過に注意 |
| ドメイン | 100〜200 円 | 年額で支払うケースが多い |
| SSL 証明書(DV) | 330 円〜(年額換算) | Let's Encrypt なら無料 |
| 外形監視(UptimeRobot) | 0 円〜 | 無料プランで十分な場合も多い |
設計チェックリスト
- □ HTTPS(SSL/TLS)を有効化している
- □ SSH はパスワード認証無効・公開鍵認証のみ
- □ DB ポートは外部に公開していない
- □ DB の日次バックアップが動作している
- □ バックアップのリストア手順を 1 回テストした
- □ 死活監視(外形監視)でアラートが届く
- □ デプロイ手順が文書化されている(属人化防止)
- □ SSL証明書の有効期限を把握・監視している
インフラ設計・構築のご相談はエスロジカルへ
「何から始めればいいかわからない」「既存の構成を見直したい」など、インフラ設計・構築・運用改善のご相談を承っています。
お問い合わせはこちら
関連:SSL証明書 / SSL証明書 FAQ
「何から始めればいいかわからない」「既存の構成を見直したい」など、インフラ設計・構築・運用改善のご相談を承っています。
お問い合わせはこちら
関連:SSL証明書 / SSL証明書 FAQ
