真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Kubernetes中Pod使用方法

Pod是Kubernetes調(diào)度的最小單元。一個Pod可以包含一個或多個容器,因此它可以被看作是內(nèi)部容器的邏輯宿主機。

網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、微信小程序開發(fā)、集團企業(yè)網(wǎng)站建設(shè)等服務(wù)項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了濱湖免費建站歡迎大家使用!

資源限制

pod和container的資源請求和限制

#cpu上限
spec.containers[].resources.limits.cpu

#內(nèi)存上限
spec.containers[].resources.limits.memory

#創(chuàng)建時分配的基本cpu資源
spec.containers[].resources.requests.cpu

#創(chuàng)建時分配的基本內(nèi)存資源
spec.containers[].resources.requests.memory

示例演示(在master1端操作)

  • 創(chuàng)建pod2.yaml文件
vim pod2.yaml

apiVersion: v1
kind: Pod
metadata:
  name: frontend        
  #Pod資源的名稱
spec:
  containers:
  - name: db        
  #容器1的名稱
    image: MySQL
    env:
    - name: MYSQL_ROOT_PASSWORD
      value: "password"
    resources:
      requests:
        memory: "64Mi"
        cpu: "250m"
      limits:
        memory: "128Mi"
        cpu: "500m"
  - name: wp        
  #容器2的名稱
    image: wordpress
    resources:
      requests:
        memory: "64Mi"
        cpu: "250m"
      limits:
        memory: "128Mi"
        cpu: "500m"
  • 創(chuàng)建資源
kubectl apply -f pod2.yaml
  • 查看資源詳細信息
kubectl describe pod frontend
  • 查看對應(yīng)節(jié)點上Pod資源的占用情況
kubectl describe nodes 192.168.142.130
  • 查看命名空間
kubectl get ns

重啟策略

1:Always:當容器終止推出后,總是重啟容器,默認策略

2:Onfailure:當容器異常退出(退出碼為非0)時,重啟容器

3:Never:當容器終止退出,從不重啟資源

注意:k8s中不支持重啟pod資源,只有刪除重建

示例演示

  • 默認的重啟策略是Always
kubectl edit deploy
#輸入/restartPolicy查找
restartPolicy: Always       
#沒有設(shè)定重啟策略時默認為Always

#創(chuàng)建pod3.yaml文件
vim pod3.yaml

apiVersion: v1
kind: Pod
metadata:
  name: foo
spec:
  containers:
  - name: busybox
    image: busybox
    args:       
    #參數(shù)
    - /bin/sh   
    #在shell環(huán)境中
    - -c        
    #command命令
    - sleep 30; exit 3      
    #容器啟動后休眠30s,異常退出返回狀態(tài)碼為非0值

#創(chuàng)建資源
kubectl apply -f pod3.yaml

kubectl get pods
#此時會出現(xiàn)Error報錯,因剛剛設(shè)置的異常退出,一會再查看時RESTARTS重啟值會變?yōu)?、
  • 添加重啟策略Never
#修改pod3.yaml文件
vim pod3.yaml

apiVersion: v1
kind: Pod
metadata:
  name: foo
spec:
  containers:
  - name: busybox
    image: busybox
    args:
    - /bin/sh
    - -c
    - sleep 10              
    #修改休眠時間為10s
  restartPolicy: Never      
    #添加重啟策略

#創(chuàng)建資源
kubectl apply -f pod3.yaml

健康檢查,又稱為探針(Probe)

  • 注意:規(guī)則可以同時定義
livenessProbe 如果檢查失敗,將殺死容器,根據(jù)Pod的restartPolicy來操作

ReadinessProbe 如果檢查失敗,kubernetes會把Pod從service endpoints后端節(jié)點中中剔除
  • Probe支持三種檢查方法
httpGet 發(fā)送http請求,返回200-400范圍狀態(tài)碼為成功

exec 執(zhí)行Shell命令返回狀態(tài)碼是0為成功

tcpSocket 發(fā)起TCP Socket建立成功

示例演示

  • 創(chuàng)建資源
#創(chuàng)建pod4.yaml文件
vim pod4.yaml

apiVersion: v1
kind: Pod
metadata:
  labels:
    test: liveness
  name: liveness-exec
spec:
  containers:
  - name: liveness
    image: busybox
    args:
    - /bin/sh
    - -c
    - touch /tmp/healthy; sleep 30; rm -rf /tmp/healthy
    #創(chuàng)建一個空文件,休眠30s,刪除這個空文件
    livenessProbe:
      exec:
      #探測健康
        command:
        #command命令
        - cat
        #執(zhí)行查看命令
        - /tmp/healthy  
        #創(chuàng)建的空文件
      initialDelaySeconds: 5
      #容器創(chuàng)建完成5秒之后開始健康檢查
      periodSeconds: 5  
      #檢查的間隔頻率為5秒
  • 刷新資源
#創(chuàng)建資源
kubectl apply -f pod4.yaml

kubectl get pods
#當中狀態(tài)不斷改變,就代表它正在不斷的進行檢查,然后不斷的執(zhí)行重啟策略,其中的RESTARTS重啟值也會隨之增加

謝謝閱讀!


分享文章:Kubernetes中Pod使用方法
本文網(wǎng)址:http://weahome.cn/article/jgisos.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部