131 lines
2.8 KiB
Markdown
131 lines
2.8 KiB
Markdown
# K3s 叢集總覽
|
|
|
|
快速參考手冊 - 所有服務一覽
|
|
|
|
## 🖥️ 叢集資訊
|
|
|
|
| 項目 | 值 |
|
|
|------|-----|
|
|
| 主機 | 192.168.42.120 |
|
|
| 連線 | `ssh ubuntu@192.168.42.120` → `sudo -i` |
|
|
| K8s 目錄 | `/root/k8s` |
|
|
| 本地目錄 | `/Users/timmy/42_120/k8s` |
|
|
| Git Repo | http://192.168.42.124:31337/timmy/k3s.git |
|
|
|
|
---
|
|
|
|
## 🚀 已部署服務
|
|
|
|
### CodiMD - 協作筆記應用
|
|
|
|
| 項目 | 值 |
|
|
|------|-----|
|
|
| 用途 | Markdown 協作筆記、團隊知識庫 |
|
|
| Ingress | `note.yourdomain.com` |
|
|
| 命名空間 | `default` |
|
|
| 資料庫 | PostgreSQL (內建) |
|
|
|
|
**組件:**
|
|
- `codimd-app` - 應用程式
|
|
- `codimd-db` - PostgreSQL 資料庫
|
|
- Longhorn PVC - 資料持久化
|
|
|
|
**腳本:** `apps/codimd/{deploy,stop,status,backup,restore}.sh`
|
|
|
|
---
|
|
|
|
### Opengist - Git Snippets 管理
|
|
|
|
| 項目 | 值 |
|
|
|------|-----|
|
|
| 用途 | 自架 Git snippets、程式碼片段分享 |
|
|
| SSH Port | `2222` (Traefik TCP) |
|
|
| Web Port | `80`/`443` (Ingress) |
|
|
| 命名空間 | `default` |
|
|
|
|
**組件:**
|
|
- `opengist` - 應用程式
|
|
- Longhorn PVC - 資料持久化
|
|
|
|
**腳本:** `apps/opengist/{deploy,stop,status,backup,restore}.sh`
|
|
|
|
---
|
|
|
|
### PostgreSQL - 獨立資料庫
|
|
|
|
| 項目 | 值 |
|
|
|------|-----|
|
|
| 用途 | 通用 PostgreSQL 資料庫服務 |
|
|
| Service | `postgres:5432` |
|
|
| 命名空間 | `default` |
|
|
|
|
**腳本:** `apps/postgres/{deploy,stop,status,backup}.sh`
|
|
|
|
---
|
|
|
|
## 📂 目錄結構
|
|
|
|
```
|
|
k8s/
|
|
├── apps/
|
|
│ ├── codimd/ # CodiMD 筆記應用
|
|
│ │ ├── manifests/ # K8s YAML 檔案
|
|
│ │ ├── backup/ # 備份檔案
|
|
│ │ ├── tmpdir/ # 暫存/舊檔案
|
|
│ │ └── *.sh # 管理腳本
|
|
│ ├── opengist/ # Opengist Git Snippets
|
|
│ │ ├── manifests/
|
|
│ │ ├── backup/
|
|
│ │ └── *.sh
|
|
│ └── postgres/ # 獨立 PostgreSQL
|
|
│ ├── manifests/
|
|
│ ├── backups/ # SQL 備份
|
|
│ └── *.sh
|
|
└── cluster/ # 叢集檢查工具
|
|
├── check_access.sh # 檢查存取權限
|
|
├── check_nodes.sh # 檢查節點狀態
|
|
└── check_storage.sh # 檢查儲存空間
|
|
```
|
|
|
|
---
|
|
|
|
## 🔧 常用 K3s 命令
|
|
|
|
```bash
|
|
# 連線後切換 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. **同步遠端** → `rsync` 或 `git push`
|
|
3. **部署** → 執行 `deploy.sh`
|
|
4. **驗證** → 執行 `status.sh`
|
|
5. **備份** → 執行 `backup.sh`
|
|
|
|
---
|
|
|
|
📖 詳細操作請參考 [QUICKSTART.md](QUICKSTART.md)
|