LoginSignup
9
5

More than 3 years have passed since last update.

Docker for Windows で Kubernetesが起動しないときのトラブルシューティング

Last updated at Posted at 2020-01-26

毎度、ググっても出てこない小ネタを取り扱っております。
本記事は個人的な見解であり、筆者の所属するいかなる団体にも関係ございません。

0. 始めに

社内でKubernetesの勉強会をしたのですが、その時にKubernetesサーバーを立てるのも大変だったので、Docker for WindowsのKubernetesを使おうと言うことになり、複数の人にWindows10へDocker for Windowsを入れてもらい、Kubernetes機能を有効にしたのだけど、Kubernetes機能がいつまで経っても起動してこない人がいた(私です)ので、トラブルシューティングしてみました。

1. Docker for Windowsのインストールについて

以下をご参照ください。

Docker for WindowsでKubernetesを試してみる - Qiita
https://qiita.com/h-r-k-matsumoto/items/68f694650029ddf7351d

Dockerのトラブルシューティングについては以下をご覧ください。
Windows10 × Docker for Windows トラブルシューティング - Qiita
https://qiita.com/takeru08ma/items/7878a293c55a9902f404

2. インストールしたバージョン

image.png

Windows OSのバージョン
image.png

3. 状況

下のDockerとKubernetesで、Kubernetes側がいつまで経ってもオレンジでした
(以下の画像は動くようになった時のステータスです)
image.png

Hyper-VマネージャーもずっとCPU使用率が0%でした。
(以下の画像は動くようになった時のステータスです)
image.png

4. 対応策

3日ほど放っておいても改善しないのでググってみました。
以下を見つけました。

Unable to start kubernetes on docker desktop win 10 pro · Issue #3799 · docker/for-win
https://github.com/docker/for-win/issues/3799

どうも、以前Docker for WindowsでKubernetesを動かしたことがある人の固有の問題のようです。

C:\Users<Windowsアカウント>.kubeフォルダー

C:\ProgramData\DockerDesktop\pki
が関係しているらしく、中を見ると
.kubeフォルダー
image.png

pkiのフォルダー
image.png
のようになっていました。

Kubernetesを構築したことがある人はピンとくると思いますが、各種Kubernetesのサービス用のサーバー証明書が入っています。

pkiフォルダーを削除します。
タスクトレイのDockerから「Restart」を選択してDockerを再起動します。
image.png

動き出しました。
image.png

5. 原因

Hyper-Vで動くKubernetesの仮想サーバーで使うTLSの鍵情報を新しい鍵情報を作ろうとしていたが、以前インストールした時のものが残っていてDocker for Windowsはデフォルトでは上書きしない為、いつまで経っても起動しなかった。

ということのようです。

6. まとめ

Happy, Kuberneting!

WSL2が待ち遠しいです。

9
5
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
5