k3s崩壊の記事を追加
github pages / deploy (push) Successful in 2m24s Details

This commit is contained in:
usbharu 2025-07-10 01:26:53 +09:00
parent 314fc5bc3f
commit 85dfe24d94
Signed by: usbharu
GPG Key ID: 8CB1087135660B8D
1 changed files with 49 additions and 0 deletions

View File

@ -0,0 +1,49 @@
---
author: usbharu
draft: false
categories:
- 技術
date: 2025-07-10T01:08:10+09:00
tags:
- k3s
- Proxmox
keywords:
- k3s
- Proxmox
title: k3sのクラスタが大崩壊を起こしたときの復旧メモ
relpermalink: posts/2025-07-10/
url: posts/2025-07-10/
decription: k3sのクラスタが大崩壊を起こしたときの復旧メモ
---
先日k3sのクラスタが暴走(?)し、VMがハング、なぜか同時にホストマシンのProxmoxの管理画面もフリーズし、無事クラスタの大崩壊が発生しました。監視基板ごと死んだのかアラート等が一切出ずメトリクス等も消えたため、原因は不明です。
それはさておき、こんな構成のk3sクラスタがあります。
- HA構成
- server(コントロールプレーン+Worker) 3台
- 内2台がRyzen機 残りがN150機
- 各k3sはProxmox上のVMに構築
今回はRyzen機に乗っている2つのk3sードが死にました。残っている一つのクラスタからetcdとかをいい感じにする必要があります。
## k3sのetcdスナップショットからの復元
https://docs.k3s.io/ja/cli/etcd-snapshot
基本的におせっかい機能しかないk3sやmicrok8sですが、今回はそれに救われました。
生きているノードで以下を実行します。
```bash
k3s server --cluster-reset --cluster-reset-restore-path=/var/lib/rancher/k3s/server/db/snapshots/<スナップショットファイル>
```
とりあえずこれでk3sのetcdに関するエラーは直ると思います。
## k3sのクラスター復旧
これは普通にk3sのHA構成のときの新しいード追加方法と同じで、serverを指定して追加していくだけです。
https://docs.k3s.io/ja/datastore/ha-embedded