[K8s學習筆記] 透過depolyment操控pod

  • 訂閱patreon即可看到更多文章https://www.patreon.com/wade3c
  • Youtube頻道



  • 전개



    간단한 배포 만들기



    最簡單的deployment就是啟動某個image,然後不帶其他設定

    kubectl create deployment <name-of-depl> --image=<image-name>
    


    可以透過 kubectl get deployment 檢查deploy的狀態

    等到狀態變成ready後就可以用 kubectl get pod 看到所有running的pod

    pod name是由replicaset id + pod id組成

    通常也不會去動replicaset,他會在deployment時由K8s自動設定



    포드 정보



    要看pod的更詳細訊息可以用

    kubectl describe pod <pod_name>
    


    會分別列出到pod成功running前的各步驟花了多久時間

    포드 디버그



    如果deploy失敗或是要查看log,可以使用

    kubectl logs <pod-name>
    


    要連進某個pod的terminal可以透過

    kubectl exec -it <pod_name> -- bin/bash
    


    用法和在docker要連進contiener의 터미널 非常類似

    배포 편집




    kubectl edit deployment <name-of-depl>
    


    當你修改並儲存deployment的設定後,pod就會自動重建(舊的被刪掉,直接創新的)

    但是舊的replicaset並不會被刪掉,只會把剛剛那個Pod從中移除



    배포 삭제



    포드 + 레플리카셋 一併刪除的話

    kubectl delete deployment <depl-name>
    


    可以透過 kubectl get replicaset 去確認

    YAML 파일로 배포 만들기



    比較常見的做法還是先寫好YAML檔再去deploy

    kubectl apply -f <filename>
    


    배포 유형 유형 구성 유형에 apiVersion 유형 지정

    apiVersion: apps/v1
    kind: Deployment
    


    如果以這種方式deploy的,往後只要修改檔案,pod就會自動重建了


    참조

    좋은 웹페이지 즐겨찾기