docs: add README.md, QUICKSTART.md, SUMMARY.md for K3s maintenance
This commit is contained in:
189
QUICKSTART.md
Normal file
189
QUICKSTART.md
Normal file
@@ -0,0 +1,189 @@
|
||||
# K3s 叢集 - 快速入門
|
||||
|
||||
新手友善的 K3s 維護指南
|
||||
|
||||
## 🚀 快速開始
|
||||
|
||||
### 連線到叢集
|
||||
|
||||
```bash
|
||||
ssh ubuntu@192.168.42.120
|
||||
sudo -i
|
||||
cd /root/k8s
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📦 服務管理
|
||||
|
||||
### 部署服務
|
||||
|
||||
```bash
|
||||
cd apps/<app-name>/
|
||||
./deploy.sh
|
||||
```
|
||||
|
||||
例如部署 CodiMD:
|
||||
```bash
|
||||
cd /root/k8s/apps/codimd
|
||||
./deploy.sh
|
||||
```
|
||||
|
||||
### 查看服務狀態
|
||||
|
||||
```bash
|
||||
cd apps/<app-name>/
|
||||
./status.sh
|
||||
```
|
||||
|
||||
輸出包含:
|
||||
- Pods 狀態
|
||||
- Services 狀態
|
||||
- PVC 儲存狀態
|
||||
- Ingress 入口
|
||||
- 資料庫連通性(如適用)
|
||||
|
||||
### 停止服務(保留資料)
|
||||
|
||||
```bash
|
||||
cd apps/<app-name>/
|
||||
./stop.sh
|
||||
```
|
||||
|
||||
⚠️ 注意:`stop.sh` 只刪除 Deployment/Service/Ingress,**PVC 和 Secret 會保留**
|
||||
|
||||
---
|
||||
|
||||
## 💾 備份與還原
|
||||
|
||||
### 備份服務
|
||||
|
||||
```bash
|
||||
cd apps/<app-name>/
|
||||
./backup.sh
|
||||
```
|
||||
|
||||
備份位置:
|
||||
- CodiMD → `apps/codimd/backup/`
|
||||
- Opengist → `apps/opengist/backup/`
|
||||
- PostgreSQL → `apps/postgres/backups/`
|
||||
|
||||
### 還原服務
|
||||
|
||||
```bash
|
||||
cd apps/<app-name>/
|
||||
./restore.sh
|
||||
```
|
||||
|
||||
⚠️ 還原前請先停止服務
|
||||
|
||||
---
|
||||
|
||||
## 🔍 叢集診斷
|
||||
|
||||
### 檢查節點狀態
|
||||
|
||||
```bash
|
||||
cd /root/k8s/cluster
|
||||
./check_nodes.sh
|
||||
```
|
||||
|
||||
### 檢查儲存空間
|
||||
|
||||
```bash
|
||||
cd /root/k8s/cluster
|
||||
./check_storage.sh
|
||||
```
|
||||
|
||||
### 檢查存取權限
|
||||
|
||||
```bash
|
||||
cd /root/k8s/cluster
|
||||
./check_access.sh
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ 常見問題排查
|
||||
|
||||
### Pod 無法啟動?
|
||||
|
||||
```bash
|
||||
# 查看 Pod 狀態
|
||||
kubectl get pods
|
||||
|
||||
# 查看詳細資訊
|
||||
kubectl describe pod <pod-name>
|
||||
|
||||
# 查看日誌
|
||||
kubectl logs <pod-name>
|
||||
```
|
||||
|
||||
### 服務無法連線?
|
||||
|
||||
```bash
|
||||
# 檢查 Service
|
||||
kubectl get svc
|
||||
|
||||
# 檢查 Endpoints(是否有 Pod 掛上)
|
||||
kubectl get endpoints <service-name>
|
||||
|
||||
# 檢查 Ingress
|
||||
kubectl get ingress
|
||||
```
|
||||
|
||||
### 儲存空間不足?
|
||||
|
||||
```bash
|
||||
# 檢查 Longhorn volumes
|
||||
kubectl get pv -A
|
||||
kubectl get pvc -A
|
||||
|
||||
# 檢查節點磁碟
|
||||
df -h
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📝 修改 Manifests
|
||||
|
||||
1. **本地編輯**:在 `/Users/timmy/42_120/k8s/` 修改 yaml
|
||||
2. **同步到遠端**:
|
||||
```bash
|
||||
rsync -avz --rsync-path="sudo rsync" \
|
||||
/Users/timmy/42_120/k8s/ \
|
||||
ubuntu@192.168.42.120:/root/k8s/
|
||||
```
|
||||
3. **應用變更**:
|
||||
```bash
|
||||
cd /root/k8s/apps/<app-name>
|
||||
kubectl apply -f manifests/
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 🔄 Git 版控工作流程
|
||||
|
||||
```bash
|
||||
# 本地
|
||||
cd /Users/timmy/42_120/k8s
|
||||
git add -A
|
||||
git commit -m "描述變更"
|
||||
git push
|
||||
|
||||
# 確認遠端已有變更後,再同步到 K3s 主機
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 📋 服務清單速查
|
||||
|
||||
| 服務 | 目錄 | deploy | stop | status | backup |
|
||||
|------|------|--------|------|--------|--------|
|
||||
| CodiMD | `apps/codimd/` | ✅ | ✅ | ✅ | ✅ |
|
||||
| Opengist | `apps/opengist/` | ✅ | ✅ | ✅ | ✅ |
|
||||
| PostgreSQL | `apps/postgres/` | ✅ | ✅ | ✅ | ✅ |
|
||||
|
||||
---
|
||||
|
||||
💡 **提示**:執行任何腳本前,先用 `./status.sh` 確認目前狀態!
|
||||
Reference in New Issue
Block a user