お金が無い人の為のKubernetes~ジャンクPC編~
前回は家に転がっているRyzen7マシンにVagrantとKubernetes(以降K8s)を入れました。ただこれだと電気代がかかりそうというのと、このマシンが他の用途に使えない問題などもあったため、新たにk8s専用のマシンを用意してみました。
よくある例だとRapsberry Pi 4(4GB)数個手に入れてクラスタ作るというのがあるのですが、最近はあまり手に入らないのと検証用なので複数マシン触りたくないという理由から、できるだけコアの多いマシンを1台用意しました。
K8sを複数ノードで立てる場合、最低コントロールx1, ワーカx2ぐらいは欲しいと思います(ワーカx1ならK8sで分散してる必要ないので)。K8sは1ノードに付きCPU2コアは必要なので、最低でも6コアは必要になります。ホストの管理も考えればそれ以上のコアは欲しいところです。通常のパソコンでは性能の低いAtomだと多くても4コアしかないため、できるだけコアが多くて性能も気にしない場合、8コアのRyzen7の4700u以降が良さそうです。
普通に新品を買うなら ASUSのPN50 https://amzn.to/3VIhdz6 を買うと良さそうですが、今回は「起動確認済み」「液晶破損」のジャンクノートがオークションで1万5000円くらいで手に入ったため、そちらを使うこととしました。今回私の場合はたまたま動くのが手に入りましたが、結構博打感があるため、安定を選ぶ方はPN50を買ったほうがいいです。
この環境に、先日のK8s@homeの勉強会でも紹介のあった、Proxmox(https://www.proxmox.com/en/)を入れてVMサーバにしてみました。WiFiは相性が悪いためUSBのLANアダプタ(https://amzn.to/3ePIU8z)を繋ぎました。VMは3台作り、それぞれ2コア、メモリ2GBを割当しました。ゲストOSはUbuntuの22.04LTSを入れましたが、どうもcgroups周りで変更が入ったらしいので、20.04LTSの方がK8sは入れやすいもしれません。
手順はこの辺りを参考にして、前回同様kubeadmで構築しました。
今回各VMの設定の為にAnsibleを使いましたが、便利ですね。もっと早く覚えておけば良かった感じがします。ただrebootとかreloadがうまくいかなかったので、VMを個別に再起動はしました。
そして入れた画面がこちらです。動作確認が取れたため、メモリは32x2の64GBにしています。PCよりメモリの方が高かったです。ジャンクだと最悪メモリを壊す可能性もあるので、動作確認が取れるまでは安い容量の方がいいかもしれませんね。
最後にメモリが8GBの時の価格です。
PC:17000円
メモリ:家で余ってたSO DIMM8GB 実売3500円程度
SSD:家で余ってた256GB 実売5000円程度
NIC:1500円
合計で26500円ぐらい
正直こんなジャンクを狙わなくても、NUCのAtom 4コアx2でも買った方が安い気もします。Core iの4コアのNUCは第8世代以降なので高く付きます。ただ最近は何故かNUCも高騰していて、AtomのNUC単体でも8000円以上はしている気がします。あとは4C8Tの中古ノートを狙うとかですかね?8Tが、VMにおける2Core扱いになるかどうかは気になります。その為今回はわざわざ8Coreのジャンクノートを買いました。
当然本番で動かすにはいろいろ危険なので、その際にはPN50とかMinisforumのRyzen7ベアボーンでも買おうと思います。
終り
この記事が気に入ったらサポートをしてみませんか?