田籠 勇吉 (Tagomori Yuukichi) · インフラエンジニア志望 · 北九州市

観測し、
判断し、
改善する。

未経験から約 2 週間でプロダクション k3s 環境を構築。自宅ラボで エンタープライズサーバーを運用しながら、IaC・監視・CI/CD を 実践的に習得し、GCP Associate Cloud Engineer 認定を取得しました。

homepage — k3s
$ kubectl -n homepage get deploy
NAME               READY   AGE
homepage-web       1/1     stable
cloudflare-tunnel  1/1     stable

$ trace visitor → node
visitor ─ https ─▶ cloudflare ─ tunnel ─▶
cloudflared ─ svc ─▶ nginx ─▶ ryzen-5700g

$ cat principles.txt
# inbound ports: 0
# secrets in repo: 0
# postmortems: blameless
~2w未経験 → プロダクション k3s
GCP ACEAssociate Cloud Engineer 認定
−75%インフラコスト削減実績
10Gスイッチレス・デイジーチェーン
§ 01

自己紹介

現場で培った観察力と、独学で得たインフラ技術。

工業高校(電子情報科)を卒業後、ゲームデバッグや物流倉庫など多様な現場を経験してきました。 2024 年 11 月にインフラエンジニアリングの独学を開始し、約 2 週間で Terraform・Ansible・k3s を用いたプロダクション環境の構築に到達しています。

「自宅ラボ=実務のシミュレーション環境」という方針のもと、 エンタープライズサーバー(FUJITSU PRIMERGY TX2540 M1 / Xeon 20C40T / 192GB ECC RAM)上に Proxmox VE を基盤としたクラスター環境を構築・運用。 IaC・監視・CI/CD の一連のパイプラインを個人で設計・構築・運用しています。

現場で身につけた「数字を並べ、判断し、改善する」サイクルと独学で得たインフラ技術を武器に、 Web / 通信系のインフラエンジニア・SRE ポジションを志望しています。 将来的にはゲーム業界の SRE / インフラ部門で、最高のエンタメ体験を支える基盤構築に携わることを目指しています。

§ 02

技術スタック

TAK Pipeline — Terraform (IaC) → Ansible (Config) → Kubernetes (Orchestration) を基軸に、監視・CI/CD を含むモダンな DevOps 環境を個人運用。

IaC / 構成管理

  • Terraform (HCL)
  • Ansible

コンテナ / オーケストレーション

  • Docker
  • Kubernetes (k3s)
  • Helm

監視 / 可観測性

  • Prometheus
  • Grafana
  • Alertmanager
  • gRPC-Web

CI/CD / デリバリ

  • GitHub Actions
  • GHCR
  • Cloudflare Tunnel

ネットワーク

  • 10GbE デイジーチェーン
  • Tailscale (WireGuard)
  • nginx

仮想化 / OS

  • Proxmox VE
  • Linux (Ubuntu/Debian)
  • Windows Server

クラウド

  • Google Cloud Platform

言語 / フレームワーク

  • TypeScript
  • Python
  • Dart
  • HCL
  • Next.js
  • FastAPI
  • Ktor

certifications

Google CloudAssociate Cloud Engineer
§ 03

学習の軌跡

2024 年 11 月の学習開始から、約 2 週間でプロダクション環境構築に到達。以降も継続的に技術領域を拡張。

  1. 2024.11

    インフラ学習開始

    完全未経験から Terraform・Ansible・Kubernetes の学習に着手。複数の LLM を並列活用し、検証とバイアス補正を行う「敵対的デバッグ」手法を確立。

  2. 約 2 週間後

    プロダクション k3s 環境をデプロイ

    Terraform → Ansible → k3s の一貫パイプライン(TAK Pipeline)を設計・構築。Prometheus / Grafana による監視基盤を含むプロダクション環境を自宅ラボ上に展開。

  3. 2025

    Minecraft サーバーを k8s 移行・チーム運用

    コミュニティ向け Minecraft サーバーを k3s 上に移行し、HCL による IaC 管理を確立。4 人チーム体制での協力運用を開始。

  4. 2026

    GCP ACE 取得・監視ダッシュボード基盤を設計

    Google Cloud Associate Cloud Engineer 認定を取得。gRPC-Web / Ktor を用いた高セキュアな監視ダッシュボード基盤(cloud-observability-gateway)を設計・開発。

  5. 2026.09

    ポートフォリオサイト公開

    Next.js 静的エクスポート → nginx → k3s → Cloudflare Tunnel の配信鎖を構築。GitHub Actions と Tailscale 経由のデプロイを自動化し、このサイト自体をインフラ実績として公開。

§ 04

旗艦ストーリー

あるワークロード向けに積み上げた構成が、月間の電気代・回線費を含む運用コストをおよそ 4.5 倍に押し上げていた。観測データと制約を並べ直し、「維持するより廃止する」と判断した記録。

  1. 01 / 観測

    数字を並べる

    月間の電気代・回線費・稼働率・実際に使われた時間を同じ表に置いた。 Prometheus のメトリクスと請求書を突き合わせ、感覚ではなく 「何に、いくら、どれだけ使ったか」を可視化した。

  2. 02 / 判断

    維持より廃止

    単スレッド性能が要る実験負荷のために組んだ構成は、目的を果たした後は過剰だった。 稼働率データが裏付けた:月間で実際に使われたのは全体の 12% 未満。 サンクコストに引きずられず、薄い構成へ戻す判断を下した。

  3. 03 / 改善

    −75% と基準の文書化

    余剰を削り、月間の関連コストはおよそ 75% 減。Blameless な振り返りで 「次に同じ判断を迫られたときの基準」を文書化し、再発防止策をリポジトリに残した。

この判断プロセスは、規模に関わらず同じフレームワークが適用できると考えています。 「観測→判断→改善」のサイクルを言語化し、チームで共有可能な基準に落とし込むことが重要です。

§ 05

二層の鎖

訪問者がこのページに届くまでの「公開サイト鎖」と、パケットが実際に流れる「物理鎖」。秘密やトークンは載せず、公開可能な層だけを示します。

a 公開サイト鎖 — 論理・配信パス

public edgehomelab (k3s, private)訪問者HTTPSCloudflareEdge / TunnelcloudflaredPod (homepage ns)homepage-webnginx:alpinek3s nodeRyzen 5700G
インバウンドポートは開けない。cloudflared がアウトバウンドで Tunnel を張り、Service 経由で nginx の静的ファイルを返す。

b 物理鎖 — 要約

  1. 01
    ONU / 10G Router上流
    10G
  2. 02
    TX2540M1bridge · ストレージ
    10G
  3. 03
    Ryzen 5700Gbridge · k3s worker
    10G
  4. 04
    メイン PC端末
    1G 側: AP / Printer / ほか

10G はスイッチレスのデイジーチェーン(ブリッジ)。PoE スイッチはコスト・設置制約から不採用。 単一障害点が増えるのは承知の上で、コスト優先で受容したリスクです。

配線図・コスト試算・ノード選定理由の正本は tagomori-homelab の README。ここは要約のみ。

§ 06

プロジェクト

GitHub で公開しているリポジトリ。インフラ寄りのものを先頭に。

featured

all repositories

GitHub で全部見る ↗

§ 07

障害・運用の原則

短く、blameless に。

「誰が」ではなく「どの前提が」崩れたか

障害は人ではなく前提を疑う。観測ログ・制約・判断の記録だけを残し、個人攻撃は書かない。

受容したリスクは明文化する

デイジーチェーンは単一障害点が多い。コスト優先で意図的に受け入れたと書いておく。 故障時は差し替えと下流の短時間影響を想定する。

フェイルオーバーは最も単純な経路で

必要ならルーターと端末の Wi‑Fi 直結に落とす。復旧の速さを、構成の美しさより優先する。

捨ててよい複雑さを文書化する

同じ失敗を繰り返さない手順と同じくらい、「もう要らないもの」のリストに価値がある。

§ 08

秘密なし再現手順

このサイトは静的エクスポート。秘密・証明書・トンネル資格情報はリポに含まれません。

  1. Node.js 20+ を用意する(推奨: nvm)
  2. npm install
  3. npm run buildout/ に静的ファイルが生成される
  4. npx serve out または Docker で配信を確認
  5. push すると GitHub Actions が GHCR にイメージを積み、Tailscale 経由で k3s に apply
# ローカル
npm install
npm run build          # → out/

# コンテナ(multi-stage: next build → nginx:alpine)
docker build -t tagomori-homepage .
docker run --rm -p 8080:80 tagomori-homepage
# → http://localhost:8080/

# クラスタ(CI が実行)
kubectl apply -f k8s/homepage/
§ 09

連絡

メールアドレスは公開していません。GitHub の Issue / Discussion か X でどうぞ。