Minikube使用文件

Aitozi發表於2022-03-27

最近在參與社群flink-operator的開發,開發的過程中經常使用到minikube來本地驗證這篇文章記錄下相關使用

安裝

https://minikube.sigs.k8s.io/docs/start/ 需要先安裝docker環境

登入節點

minikube ssh

調整資源

啟動pod超時
_ Warning FailedScheduling 23s (x2 over 91s) default-scheduler 0/1 nodes are available: 1 Insufficient memory._

直接命令列設定資源

minikube start --cpus 4 --memory 8G
minikube config set cpus N
minikube config set memory N

要先刪除,否則重啟後node還是不變,調整資源後可能需要相應的docker容器也進行調整
https://github.com/eclipse/che/issues/14067

minikube delete 
minikube stop
minikube start --cpus 4 --memory 8G
kubectl describe node minikube

拷貝檔案

https://minikube.sigs.k8s.io/docs/commands/cp/
本機和minikube node以及node之間都可以拷貝檔案

minikube cp ~/TopSpeedWindowing.jar minikube:/tmp/flink/userlib/TopSpeedWindowing.jar

載入映象

load之前要先把使用映象的pod停止,否則映象還在被使用

minikube image load aitozi/flink-java-operator:latest

可以minikube ssh之後檢視映象id和本地是否一致,這樣可以加快debug流程.

使用問題

刪除crd失敗

第一步首先要刪除所有相關的cr,刪除cr也卡住
image.png
通過將finalizer置空刪除

kubectl get flinkdep basic-checkpoint-ha-example -o=json | \
jq '.metadata.finalizers = null' | kubectl apply -f -

這樣apply之後就能刪除了, cr和crd也可以正常刪除了

測試不同域名的k8s叢集訪問情況

apiVersion: v1
kind: Pod
metadata:
  name: busybox-sleep
spec:
  containers:
  - name: busybox
    image: busybox
    args:
    - sleep
    - "1000000"
  - name: hello-minikubi
    image: k8s.gcr.io/echoserver:1.4
 
minikube ssh
docker ps 
docker exec -it 92de341e7767  /bin/sh

測試LoadBalancer和NodePort

kubectl expose deployment hello-minikube --type=LoadBalancer --port=8080
kubectl expose deployment hello-minikube --type=ClusterIP --cluster-ip='None' --port=8080

相關文章