# ArgoCD 配置部署指南

> **版本**: v3.3.6
> **用途**: GitOps 持續部署
> **建立日期**: 2026-03-29 (台北時間)

---

## 1. 部署 Metrics NodePort

```bash
# 在 K3s Master (192.168.0.120) 執行
kubectl apply -f k8s/argocd/argocd-metrics-nodeport.yaml

# 驗證
kubectl get svc -n argocd | grep nodeport
```

## 2. NodePort 配置

| Service | NodePort | 用途 |
|---------|----------|------|
| argocd-metrics-nodeport | 30882 | Application Controller Metrics |
| argocd-server-metrics-nodeport | 30883 | ArgoCD Server Metrics |

## 3. Prometheus 抓取端點

```
http://192.168.0.121:30883/metrics  # Server Metrics (Pod 在 mon1)
```

> ⚠️ 注意: ArgoCD Server Pod 運行在 mon1 (121)，需使用該節點 IP

## 4. 關鍵指標

| 指標 | 說明 |
|------|------|
| `argocd_app_info` | Application 狀態資訊 |
| `argocd_app_sync_total` | 同步次數 |
| `argocd_app_health_status` | 健康狀態 |
| `argocd_cluster_api_resources_count` | API 資源數量 |

---

## 架構圖

```
┌─────────────────────────────────────────────────────────┐
│                   Prometheus (188:9090)                  │
├─────────────────────────────────────────────────────────┤
│  scrape_configs:                                         │
│    - job_name: argocd                                    │
│      targets:                                            │
│        - 192.168.0.120:30882  (app-controller metrics)  │
│        - 192.168.0.120:30883  (server metrics)          │
└─────────────────────────────────────────────────────────┘
```
