⚓
macでMinikubeを使うときの備忘録
はじめに
Kubernetesを少しいじりたいが,パブリッククラウドでKubernetesサービスを使うほどでもない時にMinikubeを触ったので,その時の備忘録.
TL;DR
この記事ではMinikubeをインストールし,dashboardとサンプルのdeployをする手順を書く.
前提環境
- pc: mac book pro
- os: macOS Big Sur
インストール
minikube startでOSなどの環境を選択するとインストールするためのコマンドを表示してくれます.
今回は以下の条件で指定しました.
Operating system: macOS
Architecture: x86-64
Release type: Stable
Installer type: Homebrew
Minikubeのインストール
$ brew install minikube
version
$ minikube version
minikube version: v1.25.2
command menu
$ minikube
minikube は、開発ワークフロー用に最適化されたローカル Kubernetes
クラスターを構築・管理します。
Basic Commands:
start ローカルの Kubernetes クラスターを起動します
status ローカル Kubernetes クラスタの状態を取得します
stop ローカル Kubernetes クラスターを停止します
delete ローカルの Kubernetes クラスターを削除します
dashboard minikube クラスター内で動いている Kubernetes
のダッシュボードにアクセスします
pause Kubernetes を一時停止させます
unpause Kubernetes を停止解除します
Images Commands:
docker-env minikube の Docker デーモンを使用するように環境を設定します
podman-env minikube の Podman サービスを使用するように環境を設定します
cache ローカルイメージを minikube に追加、削除、またはプッシュします
image イメージを管理します
Configuration and Management Commands:
addons minikube のアドオンを有効化または無効化します
config 永続的な設定値を変更します
profile 現在指定しているクラスタプロファイルを取得、またはリストアップします
update-context IP アドレスやポート番号が変わった場合に kubeconfig を更新してください
Networking and Connectivity Commands:
service サービスに接続するための URL を返します
tunnel LoadBalancer サービスに接続します
Advanced Commands:
mount minikube に指定されたディレクトリーをマウントします
ssh minikube の環境にログインします (デバッグ用)
kubectl クラスターのバージョンに一致する kubectl バイナリーを実行します
node 追加のノードを追加、削除またはリストアップします
cp 指定したファイルを minikube にコピーします
Troubleshooting Commands:
ssh-key 指定したノードの SSH 鍵のパスを取得します
ssh-host 指定したノードの SSH ホスト鍵を取得します
ip 指定したノードの IP アドレスを取得します
logs ローカルの Kubernetes クラスターをデバッグするためのログを返します
update-check 使用中および最新の minikube バージョン番号を表示します
version minikube バージョンを表示します
options (全コマンドに適用される)
グローバルコマンドラインオプションの一覧を表示します。
Other Commands:
completion シェルのコマンド補完コードを生成します
Use "minikube <command> --help" for more information about a given command.
Minikube操作手順など
Minikube起動
起動
$ minikube start ( --vm-driver=<driver-name> )
minikube startのデフォルトでは--vm-driver=noneだが,チュートリアルにあるminikube service hello-minikube --urlが実行できなかった.(とても時間がかかっているだけ?)
--vm-driver=hyperkitであれば可能.--vm-driver=virtualboxでは下記のようなメッセージが表示された.今回はhyperkitを使用する.
▪ gcr.io/k8s-minikube/storage-provisioner:v5 イメージを使用しています
╭──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╮
│ │
│ 「virtualbox」ドライバーが選択されましたが、より良い選択肢があります! │
│ 性能と機能の向上のため、別のドライバー使用を検討してください: │
│ - hyperkit │
│ │
│ この警告を表示させないためには、以下を実行してください: │
│ │
│ $ minikube config set WantVirtualBoxDriverWarning false │
│ │
│ │
│ minikube ドライバーについてもっと知るためには、https://minikube.sigs.k8s.io/docs/drivers/ を確認してください。 │
│ ベンチマークについては https://minikube.sigs.k8s.io/docs/benchmarks/cpuusage/ を確認してください │
│ │
╰──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────╯
🔎 Kubernetes コンポーネントを検証しています...
ダッシュボードの起動
dashboardの起動
$ minikube dashboard
Kubernetesではダッシュボードを使うために,下記の手順が必要となるようでです.(web UI(Dashboard))
- ダッシュボードUIのデプロイ
- コマンドラインプロキシー
Minikubeの停止
停止
$ minikube stop
Minikube VMの削除
削除
$ minikube delete
その他
今回はローカルにMinikubeをインストールしたが,特にローカルを使う理由がなければドキュメントのチュートリアルでMinikubeを使える.
Kubernetesの基本では対話式でKubernetesの仕組みを学習できるのでおすすめかも.
Discussion