Files
k3s/SUMMARY.md

3.0 KiB

K3s 叢集總覽

快速參考手冊 - 所有服務一覽

🖥️ 叢集資訊

項目
主機 192.168.42.120
連線 ssh ubuntu@192.168.42.120sudo -i
K8s 目錄 /root/k8s
舊 manifests /root/k8s-manifests (備份)
本地目錄 /Users/timmy/42_120/k8s
Git Repo http://192.168.42.124:31337/timmy/k3s.git

節點: vm120 (master) + vm121 + vm122 (3 節點 HA)


🚀 已部署服務

CodiMD - 協作筆記應用

項目
用途 Markdown 協作筆記、團隊知識庫
Ingress codimd.lotimmy.com
命名空間 default
資料庫 PostgreSQL (內建)

腳本: apps/codimd/{deploy,stop,status,backup,restore}.sh


Opengist - Git Snippets 管理

項目
用途 自架 Git snippets、程式碼片段分享
Ingress opengist.lotimmy.com
命名空間 default

腳本: apps/opengist/{deploy,stop,status,backup,restore}.sh


Vaultwarden - 密碼管理器

項目
用途 自架 Bitwarden 密碼管理
Ingress vaultwarden.lotimmy.com
儲存 5Gi Longhorn PVC

腳本: apps/vaultwarden/{deploy,stop,status,backup,restore}.sh


Adminer - 資料庫管理

項目
用途 Web 資料庫管理工具
Ingress adminer.lotimmy.com
連接目標 叢集內 PostgreSQL

腳本: apps/adminer/{deploy,stop,status}.sh


PostgreSQL - 獨立資料庫

項目
用途 通用 PostgreSQL 資料庫服務
Service postgres:5432
命名空間 default

腳本: apps/postgres/{deploy,stop,status,backup}.sh


📂 目錄結構

k8s/
├── apps/
│   ├── adminer/         # 資料庫管理工具
│   ├── codimd/          # CodiMD 筆記應用
│   ├── opengist/        # Opengist Git Snippets
│   ├── postgres/        # 獨立 PostgreSQL
│   ├── template/        # 新 App 範本
│   └── vaultwarden/     # 密碼管理器
├── cluster/             # 叢集檢查工具
│   ├── check_access.sh
│   ├── check_nodes.sh
│   └── check_storage.sh
├── README.md
├── QUICKSTART.md
└── SUMMARY.md

🔧 常用 K3s 命令

# 連線後切換 root
ssh ubuntu@192.168.42.120
sudo -i

# 查看 Pods
kubectl get pods -A

# 查看 Services
kubectl get svc -A

# 查看 Ingress
kubectl get ingress -A

# 查看 PVC
kubectl get pvc -A

# 進入 Pod
kubectl exec -it <pod-name> -- sh

# 查看日誌
kubectl logs -f <pod-name>

🔄 維護工作流程

  1. 本地修改 → 編輯 manifests 或腳本
  2. Git 提交git add -A && git commit && git push
  3. 遠端更新git -C /root/k8s pull
  4. 部署 → 執行 deploy.sh
  5. 驗證 → 執行 status.sh
  6. 備份 → 執行 backup.sh

📖 詳細操作請參考 QUICKSTART.md