本頁說明如何解決 GKE on AWS 的 etcd 問題。
如需其他協助,請與 Cloud Customer Care 團隊聯絡。etcd 資料磁碟已滿
etcd 資料磁碟空間不足時會發生下列錯誤,且可能以幾種不同方式呈現:
etcd 記錄可能會顯示寫入要求逾時錯誤:
rafthttp: failed to save KV snapshot (write /var/etcd/data/member/snap/tmp720030520: no space left on device)
您也可能會看到連線至對等互連的逾時錯誤:
rafthttp: health check for peer [peer-id] could not connect: dial tcp [peer-ip]:2380: i/o timeout etcd server doesn't start:
序列埠記錄可能指出 etcd 因空間不足而無法啟動:
failed on file /dev/stdout (No space left on device)
如要判斷 etcd 執行個體的大小,請使用下列其中一種方法:
安全殼層 (SSH)
使用 SSH 連線至其中一個主要節點,然後執行下列指令:
ETCDCTL_API=3 etcdctl --write-out=table endpoint status
DB_SIZE
欄會指出使用的容量大小,如下列簡化範例輸出內容所示:+------------------+------------------+---------+---------+ | ENDPOINT | ID | VERSION | DB SIZE | +------------------+------------------+---------+---------+ | 10.240.0.17:2379 | 4917a7ab173fabe7 | 3.5.0 | 45 kB | | 10.240.0.18:2379 | 59796ba9cd1bcd72 | 3.5.0 | 45 kB | | 10.240.0.19:2379 | 94df724b66343e6c | 3.5.0 | 45 kB | +------------------+------------------+---------+---------+
主控台
前往控制台的 Cloud Monitoring 頁面。
選取「指標探索工具」。
選取
metric etcd_mvcc_db_total_size_in_bytes
指標。
如要解決這個問題,請使用適用於儲存空間供應商和作業系統的適當程序,調整 etcd 的資料磁碟大小。請新增足夠的額外空間,以因應日後 etcd 的成長。
調整磁碟大小後,請檢查磁碟空間是否仍有警告:
ETCDCTL_API=3 etcdctl alarm list
如果最後一欄顯示
NOSPACE
,請按照下列步驟解除警報:ETCDCTL_API=3 etcdctl alarm disarm