~ / works / migration

migration

クラウド→オンプレ移行

AWS EC2 で本番運用していた環境を、自宅 Proxmox へ移行。公開方式を再設計し、クラウド課金を停止。

role設計・移行作業(個人)
period2026
stackAWS EC2 · Proxmox · Cloudflare Tunnel · Docker · Nginx

## 概要

もともとAWS EC2(Ubuntu + Nginx + Docker)で本番運用していたポートフォリオと監視環境を、自宅に構築したProxmox環境へ移行しました。クラウドの月額コストを止めつつ、ポート開放に頼らない公開方式へ作り替えるのが目的です。

## 構成図

[ network diagram ] 構成図はここに差し込み予定 (diagram.png)
Before: Cloudflare → EC2(EIP) / After: Cloudflare → Tunnel → 自宅Proxmox

## 移行でやったこと

  • 監視環境(Grafana/Prometheus)の設定をバックアップして退避
  • 公開方式を「ポート開放 + リバプロ」から Cloudflare Tunnel(外向き接続のみ)に再設計
  • DNS(Cloudflare)の向き先を自宅側へ切り替え、サイトの疎通を確認
  • 旧EC2を停止・削除し、Elastic IP も解放してクラウド課金を完全停止

## つまずきと解決

公開経路の食い違いで502

コンテナの公開ポートのバインド先とトンネルの向き先が不一致で502。経路を一つずつ確認し、設定を揃えて解消しました。

自動デプロイ方式の作り直し

CI経由の自動デプロイが認証まわりで安定しなかったため、サーバー上の git hook 方式に切り替え、commit→ビルド→再起動を完結させました。

## 学んだこと

コスト・セキュリティ・運用のしやすさのトレードオフを、自分の手で動かしながら判断できました。「クラウドが常に最適とは限らない」を実感として持てたのが大きいです。