kubectl --generator 參數被棄用問題解決

kubectl --generator 參數被棄用問題解決

k8s的書籍參考的是《kubernetes in Action》這本書,但是在後期發現使用

kubectl run kubia --image=luksa/kubia --port=8080 --generator=run-pod/v1

發現報錯:

Flag --generator has been deprecated, has no effect and will be removed in the future.

原因是生成器參數已經被棄用。[https://kubernetes.io/zh/docs/reference/kubectl/conventions/#%E7%94%9F%E6%88%90%E5%99%A8](https://kubernetes.io/zh/docs/reference/kubectl/conventions/#%E7%94%9F%E6%88%90%E5%99%A8)

解決辦法

https://kubernetes.io/zh/docs/setup/learning-environment/minikube/

  1. 讓我們使用名爲 echoserver 的鏡像創建一個 Kubernetes Deployment,並使用 --port 在端口 8080 上暴露服務。echoserver 是一個簡單的 HTTP 服務器。

    kubectl run kubia --image=luksa/kubia --port=8080 
    

    輸出類似於:

    pod/kubia created
    
  2. 將其作爲 Service 公開:

    kubectl expose pod kubia --type=NodePort 
    

    選項 --type = NodePort 指定 Service 的類型。

    輸出類似於:

    service/kubia exposed
    
  3. 現在Pod 已經啓動,但是必須等到 Pod 啓動完全才能通過暴露的 Service 訪問它。

    檢查 Pod 是否啓動並運行:

    kubectl get pod
    

    如果輸出顯示 STATUSContainerCreating,則表明 Pod 仍在創建中:

    NAME                              READY     STATUS              RESTARTS   AGE
    hello-minikube-3383150820-vctvh   0/1       ContainerCreating   0          3s
    

    如果輸出顯示 STATUSRunning,則 Pod 現在正在運行:

    NAME                              READY     STATUS    RESTARTS   AGE
    hello-minikube-3383150820-vctvh   1/1       Running   0          13s
    
  4. 獲取暴露 Service 的 URL 以查看 Service 的詳細信息:

    minikube service kubia --url
    
  5. 刪除 Service:

    kubectl delete services kubia
    
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章