技術備忘録

環境構築によるトラブルの解決方法、知った技術のまとめなどを自分のためにも書き連ねていきます。あわよくば誰かの参考になればと思います。

Rancherの Component controller-manager is unhealthy への対処

Rancherを使っているのですが、その時に Alert Component controller-manager is unhealthy というエラーがでました。 その時の対処をメモがてら残しておきたいと思います。

この記事の対処法は一時的な対処であり根本的な対処法ではないです

Rancherの構成

Kubernetesバージョン v1.17.2-rancher1-2

クラスタ内には、master nodeが1台、worker nodeが複数台という構成です。 ノードは全てクラウドは使わず、VMやらのオンプレの環境で行っています。

エラー内容

こちらのIssueコメントの写真と同じような状況になっていました。

Unhealthy controller manager and scheduler after leaving it running overnight · Issue #14036 · rancher/rancher · GitHub

対処方法

master nodeに直接sshで入り、dockerを再起動(systemctl restart docker)することで直りました。

再起動を行う前に、クラスタ以外のコンテナが動いていないことを確認して行った方が良いと思います

色々調べてみたのですが、クラスタの再構成したら直ったとかなどはあったのですが根本的な解決方法は探しきれませんでした。

また、docker自体を再起動する前に kube-controll-managerのコンテナだけを再起動したのですが、反応がなく再起動できなくなったのでdockerのシステムごと再起動をしたら直ったという経緯です。

まとめてきなやつ

このバグが発生した原因は、(推測ですが)オペレーションミスにより大量のJobを断続的に投げたことしまったことじゃないかなと思っています。

(それによりschedulerやらcomponent managerなどが正常に動かなくなった?)

今回は検証環境だったので良かったのですが、本番環境とかだったらと思うと…まだまだ知識が足りないなーと思わせるバグでした。