iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 21
1
DevOps

就是「懶」才更需要重視DevOps系列 第 21

Day21 了解 K8S & Pod 運行方式

你需要知道的基本概念

  • kubectl:
    如果你只是單純使用 k8s CLI 進行佈署,那麼你一定會使用到 kubectl,其主要的功能就是主節點代理,並且確保服務是正常的狀態,Client 用戶都是用 kubectl 命令在執行相關動作,例如:

    • kubectl create: 建立服務
    • kubectl apply : 建立服務
    • kubectl update: 變更 yml 檔時,以不停服務的方式更新容器設定
    • kubectl delete: 刪除服務
  • Master & Worker

    • Master:負責控制所有 Worker 服務與處理工作節點的編排。
    • Worker: 負責運行所有 Container 服務,隨時可以新增或者刪減機器。

  • Pod
    在 Kubernetes 中最小的部署單位,一個 Pod 可以由單一 Container 或多個 Container 組成,在 Pod 內的 Container 本身是共享網路 IP 與存儲空間,所以 Pod 內的服務本身是可以直接透過 localhost 呼叫,但一般而言我們不會直接建立 Pod,而是建立 Deployment 並且指定該 Deployment 需要有幾個 Pod 服務,就如以下圖片單看 Pod 的架構應該是這樣的。

該如何創立 Pod

apiVersion: v1                         ## k8s 版本號
kind: Pod                              ## 創立服務類型
metadata:
  name: my-pod                         ## Pod 的名稱
spec:                                  ## spec 定義 container 資訊
  containers:
  - name: my-first-container           ## 設定 container 的名稱
    image: nginx                       ## 映像檔
    ports:                             ## 啟動哪些 port number 是允許外部資源存取
      - containerPort: 80

完成以上 yml 檔案後,接著執行 kubectl apply -f <檔案名稱> 就完成 Pod建立了,今天就先說道這邊吧,明天會講解今天提到的 Deployment 以及尚未提及的 Service,今天就先這樣啦


上一篇
Day20 Let's Kubernetes
下一篇
Day22 了解 K8S 的 Service
系列文
就是「懶」才更需要重視DevOps30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言