k3OSをWindows10のHyper-Vで動かしてみた


これなに?

RancherLabsが公開しているk3sの実行に最適化された軽量なLinuxディストリビューションであるk3OS(こちらの公開もRancherLabs)をとりあえず自宅のWin10のHyper-Vで起動まで試してみたのでその記録です。


環境とか

  • CPU:Intel Core-i9-9900K
  • メモリ:DDR4-3000 16GB
  • OS:Windows10 Pro ver.1809
  • ハイパーバイザー:Hyper-V ver.10.0.17763.1
  • k3OS:ver.0.2.0

※Hyper-Vはすでに有効化されている前提で進めますので、ここでは有効化の手順は省きます。


1. OSイメージの準備

まず、k3OSのISOイメージをダウンロードします。 ※DL先:https://github.com/rancher/k3os/releases
今回は記事執筆時点で最新リリースバージョンv0.2.0k3os-amd64.isoをダウンロードします。


2. 仮想マシンの作成

「スタートメニュー」→「Windows管理ツール」→「Hyper-V クイック作成」から仮想マシンの作成ウィザードを開きます。


ダウンロードしたISOイメージを選択するために「ローカル インストール元」を選択します。


Windowsセキュアブートのチェックを外し、「インストール元の変更」からダウンロードしたISOイメージを選択します。


ISOイメージを選択したら、「仮想マシンを作成」をクリックして作成します。
※必要に応じて「(その他のオプション)」を開いて仮想マシンの名前を変更したり、仮想ネットワークスイッチを選択してください。


作成が完了すると以下のような画面になるので、「接続」をクリックします。


3. k3OSをインストール

それではさっそく「起動」をクリックして起動してみましょう。


放置して待っていると、ISOイメージからk3OSがライブ起動します。


ユーザー名rancherでパスワードなしで入れるのでログインし、sudo os-configでインストールを始めましょう。
※githubの個人アカウントからsshの公開鍵を取得してデーモンに登録してくれる機能がありますが、今回は外部との通信はさせたくないのでその方法は使いません。

# 基本はEnter押していくだけです。
# ユーザー名「rancher」のパスワードの設定は適宜してください。
# 最後に出てくる'Your disk will be ~~'は'y'でEnterしないといけません。

そうすると、インストールが始まります。しばらく待っていると再びログイン画面になります。
このログインの時のユーザー名もrancherですが、バスワードが聞かれるようになっているはずです。
※聞かれない場合は仮想マシンをもう一度作り直してください。


ここまでくればkubernetesのクラスターが構築されて稼働しているはずです、kubectlで動作を確認したりPodを起動したりしてみましょう!
※まだ不安定な部分もあるので困ったらREADMEやissueを見に行くといいかもしれません。
※外部ネットワークに接続する場合はHyper-Vで仮想switchを設定すれば通信できます。
 (セキュリティ的に怖いので自分は内部switchだけ構築しました。)


4. 最後に

イメージも400MBと軽量でAlpineベースでビルドされている(?)みたいですね。
k8s on k3sとかks3 on k3sとかできるのかな? 実用性とかはともかく、できると幅が広がるかもしれないですね。

以上、おつかれさまでした!