ギャバンITサービス
お菓子の家が作れるシステムエンジニアです

mac+Rancherを使ったdocker環境

x86でkubernetes維持はできるようになったけど、arm64でもやってみたい。 docker使える環境をM4macの中で作り、ビルドできるようにできたらarm64のkubernetesに持っていける。 今回はdocker環境でのビルドが目的なので、手っ取り早くrancher desktop使ってみる。 自分はlinuxのコマンドライン利用がdockerの入り口やったけど、普通はwindowsでwsl動かしといてその中でlinux稼働させて覚えてくんやろな。 前にdocker desktopが有償になって苦労してはったと思うけど、rancherに引っ越してる人も多いんかもな。 作成イメージ ⭐️印の箇所を作る。全体図デカなったな。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 <----------- M4 mac -------dev-> <--------------------- Windows11 pro VMware ----------------stg--> <-------- Google cloud ---prd--> +-macmini sequoia--------------+ +-local ubuntu24 linux -------+ +-local ubuntu24 linux--------+ +-GCE ubuntu24 linux----------+ | +-utm----------------------+ | | +-microk8s-------+ +-vmdk-+ | | +-docker---------+ +-vmdk-+ | | +-docker---------+ +--pv--+ | | | +-sequoia-------------+ | | | | +-Pod-------+ | | data | | | | +-container-+ | | data | | | | +-container-+ | | data | | | | | vscode/cyberduck | | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | | office/brew/rdp | | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +---------------------+ | | | | +-Pod-------+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | +-ubuntu24 x86 (準備中)+ | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | | ctr microk8s | | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | |+-container-+ | | | | | +-Pod-------+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | ||kubernetes | | | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | | | |+-----------+ | | | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | | | |+-container-+ +/data+| | | <- | | | | <- | | | | <- | | +-container-+ | | | | ||Django | | d1 || | | | | | | | | | | | | | gitlab | | | | | |+-----------+ +-----+| | | | | | | | | | | | | +-----------+ | | | | |+-container-+ | || | | | | +-Pod-------+ | +------+ | | | +-container-+ | +------+ | | | +-container-+ | +------+ | | | ||mariadb | | d2 || | | | | | https | | | d4 | | | | | https | | | d4 | | | | | https | | | d4 | | | | |+-----------+ +-----+| | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | |+-container-+ | || | | | +----------------+ | | +----------------+ | | +----------------+ | | | ||xrdp-ubu24 | | d3 || | | +-----------------------------+ +-----------------------------+ +-----------------------------+ | | |+-----------+ +-----+| | | ||| | | |+-container-+ +-----+| | | +--smb share -----------------+ ||| | | ||https | | d4 || | | | windows smb share | ||| | | |+-----------+ +-----+| | | +-----------------------------+ ||| | | +---------------------+ | | ||| | +--------------------------+ | ||| | | ||| | +-rancher desktop ⭐️-------+ | ||| | | docker on lima | | ||| | | +-container-+ +------+ | | ||| | | | Django | | d1 | | | ||| | | +-----------+ +------+ | | ||| | | +-container-+ | | | | <-----------------------------------------------+|| | | | mariadb | | d2 | | | <------------------------------------------------+| | | +-----------+ +------+ | | <-------------------------------------------------+ | | +-container-+ | | | | | | | xrdp-ubu24| | d3 | | | | | +-----------+ +------+ | | | | +-container-+ +------+ | | | | | https | | d4 | | | | | +-----------+ +------+ | | | +--------------------------+ | | | | +-music----------+ | | | 8400(37GB) | | | +----------------+ | +------------------------------+ rancher desktopセットアップ 入れ方はこのへんで確認。 ...

macでmicrok8sを利用1-さらばminikube

hyperkitがdeprecateになったから qemuにしてみた ら、どっかんどっかん落ちる。 クラスタは動くけど、minikube cpとかdocker loadとかディスクの読み書きを重めにしたときによく落ちる。 なんやねん、使いものにならんなぁ。やり方悪いんかなぁ。 しゃあないからqemuやめてmicrok8sやってみる。 MicroK8s - Zero-ops Kubernetes for developers, edge and IoT microk8s.io ubuntuを提供してるcanonicalのプロダクトなんやな。 稼働のイメージ GWすぎてlocalとGCEのlinuxはubuntu22から24に切り替えた。xrdpのコンテナもおんなじ。 今回はminikube動いてた⭐️印の箇所をmicrok8sに変えて、hyperkitがmultipassに換わる。 もちろんクラスタとPod類は作り直して、永続化領域はバックアップ取ったものを展開しなおす。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 +-mac--------------------------+ | +-microk8s-------+ | | | ⭐️ | | | +----------------+ | | +-multipass-containerd-----+ | | | +-container-+ ⭐️| | | | | kubernetes| | | +-local ubuntu24 linux--------+ +-GCE ubuntu24 linux----------+ | | +-----------+ +-/data-+ | | | +-docker---------+ +-vmdk-+ | | +-docker---------+ +--pv--+ | | | +-container-+ | | | | | | +-container-+ | | data | | | | +-container-+ | | data | | | | | Django | | d1 | | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | mariadb | | d2 | | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | xrdp-ubu24| | d3 | | | <- | | | xrdp-ubu24| | | d3 | | <- | | | xrdp-ubu24| | | d3 | | | | +-----------+ +-------+ | | <- | | +-----------+ | +------+ | <- | | +-----------+ | +------+ | | | | | <- | | | | <- | | +-container-+ | | | | +-------+ | | | | | | | | | gitlab | | | | | | micro | | | | | | | | | +-----------+ | | | | +-container-+ | k8s | | | | | +-container-+ | | | | +-container-+ | | | | | https | | Ubuntu| | | | | | https | | | | | | https | | | | | +-----------+ +-------+ | | | | +-----------+ | | | | +-----------+ | | | +--------------------------+ | | +----------------+ | | +----------------+ | +------------------------------+ +-----------------------------+ +-----------------------------+ 途中で気づいたけど、multipassの内部にはdockerがなくなっててcontainerd/ctrになってた。 ...

macでmicrok8sを利用2-mariadb起動に失敗しても回避

microk8sめっちゃもっさり動く。 先月はubuntu24対応して月末にnoble numbatベースの mariadbも11.4に切り替えた。 今回はmicrok8sの中で動くmariadbを切り替える。 最初はうまく行かんかったけど、なんとかできた。 稼働のイメージ 今回は⭐️印の箇所の話。 データベースをkubernetesで動かすときに勘違いもあってハマった。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 +-mac--------------------------+ | +-microk8s-------+ | | | | | | +----------------+ | | +-multipass-containerd-----+ | | | +-container-+ | | | | | kubernetes| | | +-local ubuntu24 linux--------+ +-GCE ubuntu24 linux----------+ | | +-----------+ +-/data-+ | | | +-docker---------+ +-vmdk-+ | | +-docker---------+ +--pv--+ | | | +-container-+ | | | | | | +-container-+ | | data | | | | +-container-+ | | data | | | | | Django | | d1 | | | | | | Django | | | d1 | | | | | Django | | | d1 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | mariadb⭐️| | d2 | | | | | | mariadb | | | d2 | | | | | mariadb | | | d2 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | +-container-+ | | | | | | +-container-+ | | | | | | +-container-+ | | | | | | | xrdp-ubu24| | d3 | | | | | | xrdp-ubu24| | | d3 | | | | | xrdp-ubu24| | | d3 | | | | +-----------+ +-------+ | | | | +-----------+ | +------+ | | | +-----------+ | +------+ | | | | | | | | | | | +-container-+ | | | | +-------+ | | | | | | | | | gitlab | | | | | | micro | | | | | | | | | +-----------+ | | | | +-container-+ | k8s | | | | | +-container-+ | | | | +-container-+ | | | | | https | | Ubuntu| | | | | | https | | | | | | https | | | | | +-----------+ +-------+ | | | | +-----------+ | | | | +-----------+ | | | +--------------------------+ | | +----------------+ | | +----------------+ | +------------------------------+ +-----------------------------+ +-----------------------------+ 母艦のubuntu24からdockerイメージ持ってくる 前にやったこと をそのままやる。 ...

macでmicrok8sを利用3-kubernetesクラスタのバージョンアップ

enfoflife のページ見たら昨日にkubernetesが1.31になってた。 よー見たら、「N-2 support policy (meaning that the 3 most recent minor versions receive security and bug fixes) 」って書いてある。 最新と2つ前の世代のマイナーバージョンをサポートするようになったんや。 前は1つ前やったよな。 それに、更新サイクルが15週間ってある。 前は3ヶ月ぐらいやったはずなんやけど、15週間に伸びてるやん。 年に4回やのうて、3回に減ったんやな。 一般企業のバージョンアップ担当してる人が「この前計画作業終わったのに、もう次のやらなアカンのか」って声が反映されたんかもしれん。 履歴メモ 自分のk8sクラスタ更新の実施履歴。 minikubeのときもそうやったけど、「バージョンアップ」はクラスタのノード作り替えやから、厳密にはバージョンアップするわけやなくて、永続化領域はいったん全部吹っ飛ぶ。 minikubeの実施履歴は このへん でやってる。 時期 macのk8s環境 クラスタ 2024年8月 microk8s v1.31.0 (containerd v1.6.28) Kubernetes v1.31/stable 2024年7月 microk8s v1.30.3 (containerd v1.6.28) Kubernetes v1.30/stable 2024年5月中 minikube v1.33.1 (Docker 26.0.2) Kubernetes v1.30.0 2024年4月末 minikube v1.33.0 (Docker 26.0.1) Kubernetes v1.30.0 2023年11月 minikube v1.32.0 (Docker 24.0.7) Kubernetes v1.28.3 2023年8月 minikube v1.31.2 (Docker 24.0.4) Kubernetes v1.28.0-rc.1 microk8sで使えるkubernetesクラスタのバージョン確認 microk8sでもときどきクラスタのバージョン上がる。 macから見たら、multipassの中で動くubuntuに向けてコマンド投げる。 ...

macでmicrok8sを利用5-arm64とx86のkubernetesクラスタのバージョンアップ

M4のmacでkubernetesを維持 しはじめたけど、性能良くなかった。 そこで、 macでarm64のlinux内にkubernetes 使う環境と、 windowsでx86のlinux内kubernetes の両方を維持するようにした。 microk8s&multipassにするとarm64のubuntuになるので、UTM入れてubuntu動かした中でmicrok8s動かすようにしてる。 自分の設定が悪いのか、残念ながらintelのmacで使ってたmicrok8sより性能悪くなった・・・。 arm64の中では無理にx86のlinux動かさないようにしたので、x86もarm64もスローになったりせずに元気に動いてくれてる。 microk8sでのkubernetes履歴メモ microk8sの実施履歴は このへん でやってた。 minikubeの実施履歴は このへん でやってた。 構成変更したから履歴書くのもここで書くように変更。arm64もx86もほぼ同時に実施。 4月と8月と12月頃にちょいちょい書き足したり更新してく。 時期 macのk8s環境 クラスタ 2026年 5月 microk8s v1.36 (containerd v2.2.3) Kubernetes v1.36/stable 2025年12月 microk8s v1.35 (containerd v2.1.3) Kubernetes v1.35/stable 2025年 9月 microk8s v1.34 (containerd v1.7.28) Kubernetes v1.34/stable 2025年 5月 microk8s v1.33 (containerd v1.7.27) Kubernetes v1.33/stable 2024年12月 microk8s v1.32 (containerd v1.6.28) Kubernetes v1.32/stable 2024年11月 microk8s v1.31 (containerd v1.6.28) Kubernetes v1.31/stable ローカルの最新状態はこんな感じ。windows11 - vmware - x86 - ubuntuの内容ではあるけど、macのutmでarm64のubuntu動かしてる分も同じ内容。 ...

 ⭐️