朝起動して昼頃まで放置したり、時々xrdpのpodへ繋いでPodのデータベースをdjangoアプリ越しに見つけた細かい不具合がある。
なんでかわからんけどエラーになってたり、こうなったらええなぁってことをメモ。
まだkubernetesの理解は深くないから、何年かしたら自力解決できるかもしれん。
ポートフォワードでエラー出る
たまにポートフォワードができてないときある(dbつながらんとか)。
httpsのポートフォワードがたまに勝手にエラーになって止まってる(djangoアプリを拾ってるhttpsのpodにつながらんとか)。
E0829 07:23:36.624039 3267 portforward.go:409] an error occurred forwarding 30443 -> 443: error forwarding port 443 to pod e3445d2af9dd86a800da92e7608887459fafbd9ccfc13db409acbef081a79769, uid : exit status 1: 2023/08/28 22:23:36 socat[11858] E write(5, 0x1109000, 24): Broken pipe
error: lost connection to pod
なんでBroken pipeになるんやろな。
いきなり表示されるし、まったく発生せんときもある。
minikube特有のポートフォワード使わずに、ingressってのを学んで使ったらええんかなぁ。
できたらええなと思うこと
- hyperkitの永続化領域(/data)を直接macで開けんからvscodeでdjangoのソースを修正しながら動作確認できん👉ローカルlinuxのdocker環境はsambaで共有してて、macからvscodeでいじってる。
- hyperkitはubuntuでもredhatでもないし、samba入れる方法がわからん(どっかに書いてるんかなぁ)👉aptとかdnfあらへんし、gcc入ってたらmakeできるかもっと思ったけど、gccも入ってへん。そもそもkubernetesのバージョン上げるためにクラスタ作り直したらhyperkitも吹っ飛ぶから毎回設定することになる。そんなんやってられへん。
- コントロールプレーンをdockerコンテナで動かしてるんやから、hyperkitやなくてノードもコンテナで動かしてくれたらええのに👉軽いlinuxをコンテナとして動かしたら、kubernetesのワーカーノードにしたとき性能劣化しまくるんかなぁ
virtualboxとかvmware fusionとか動きが重たいvm使うのイヤ。
秋から来年にかけてm3のmacmini出てくれるかもしれんって記事があった。
今のintel-macとはオサラバして別のアプローチやってみるかなぁ。
今年にm2出てたのに、もう次の出すんやなぁ。
m2のmac miniは売値高いんやけど、メモリ少ないねん。
後でメモリ追加できんらしいし、やっかいやなぁ。
minikubeの再確認
minikubeのサイトで、macで使えるdriversを再確認してみた。
- docker ← これが推奨らしいけど、ローカルlinuxでdocker-ce使ってるからいらん、rancher desktopも入れたくない
- hyperkit ← intelのcpuならええけどapple silicon(m1/m2)では動かん、今はコレ使ってるけど
- virtual box ← 動きが重たそう
- pararells ← 市販品やし、重たそうやし
- vmware ← 市販品やし、重たそうやし
- qemu ← m1でも動くらしい、m3は???
- ssh ←
--ssh-ip-address
ってオプション使うから別ホストを指定してるんかも
office365とかアンチウィルスとか、業務上絶対に必要っていうものは買うんやけど、買わずに実現できるなら1円も出したない。
どっかでpodman使ってる人の記事を見たような気がするけど、minikubeのサイトには書いてへんかったなぁ。勘違いか。
centosのときみたいにredhat系のは急に方針変えてくることあるから使わんけど。
他に方法ないんか
m3のmac miniが発売されて買った後のことを、ちょっと考えてみた。
(ベースモデルが10万円切ってへんかったらどないしよか)
rancher desktop使えばホイホイできそうやけど、前に試験利用したときの印象がイマイチやねんなぁ。
macにminikube入れるんじゃなく、x86をエミュレートしたvm側に入れる方法もある。
vmはlinuxで、その中にminikube入れて使う感じになるから、macのbrewで管理できへんのとちゃうか。
limaでubuntu動かす方法。設定いろいろ必要みたいやからバージョンアップとか面倒くさそう。作者さん書いてくれてありがとう。
multipassでubuntu動かす方法もあるらしい。こっちはシンプルな方法に見える。作者さん書いてくれてありがとう。
作ったvmではubuntuが動くから、自分の環境で持ってるローカルlinuxと変わらへん。
今はhyperkit使ってるから、m1用で使えそうなqemuでチャレンジするしかないんかなぁ。
もうちょっと調べてみっか。
hyperkitがapple silicon(m1/m2/m3)にも対応してくれたらええのに・・・。
UTMってのがあるそうな
iphoneに入ってるa15っていうチップとm1/m2は、x86やなくてarm64って種類のCPUらしい。
wikiによるとCPUの命令を変換するRosetta2を使うことで、intelのcpuのためにあるバイナリをm1の入ったmacでも動かせる方法があるそうな。
Rosettaって、20年ぐらい前にmac bookでvirtualPC使ってwinXP動かしたり、intel solaris動かそうとしてたときに使ってたような気がする。
その後継がRosetta2っぽい。
検索してたらUTMってアプリのギャラリーとドキュメントを見つけた。
winXPとか動くのは想像できたけど、sparcのsolarisも動く?
なんと、それがiosの中でも動かせるらしい。
こりゃビックリ。
iphoneだと画面小さすぎて苦しいけど、大きめの画面が使えるipadなら、「なんちゃって仮想サーバ」が作れるんとちゃうかって妄想してたら、やっぱりできるんや。
ただし、インストールガイドには、iosが古いとjailbreakが必要で、新しめのでもsideloading(app storeを通さへんインストール)が要るらしい。
m3のmac買うんやなくて、m1かm2のチップが入ったipad買ってもええっちゅうことか!?
もしm3の入ったmac miniが10万円超えてきたらipadに走らなアカンかなぁ。
それでもm1の入ったipad airって今は12万円ぐらいするなぁ。
m2が載っててメモリ16GB入ったmac miniの中古探す方がええかなぁ。
やっぱm3が載った新品のほうが気持ちええんやけどなぁ。
m3の入ったmacが発表されるまで待つ
早かったら9月中旬に出るはず。
mac miniは2024年まで出てこんかもしれんけど。