亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Pod資源對象

發布時間:2020-06-07 07:55:06 來源:網絡 閱讀:214 作者:qq5bb2021f831d3 欄目:云計算

Deployment,Service,Pod是k8s最核心的3個資源對象。

Deployment:最常見的無狀態應用的控制器,支持應用的擴縮容,滾動更新等操作。

Service:為彈性變動且存在生命周期的Pod對象提供了一個固定的訪問接口,用于服務發現和服務訪問。

Pod:是運行容器以及調度的最小單位。同一個Pod可以同時運行多個容器,這些容器共享NET,UTS,IPC.除此之外還有USER,PID,MOUNT.

ReplicationController:用于確保每個Pod副本在任意時刻都能滿足目標數量,簡單來說,它用于保證每個容器或容器組總是運行并且可以訪問的:老一代無狀態的Pod應用控制器。

ReplicaSet:新一代的無狀態的Pod應用控制器,它與RC的不同之處在于支持的標簽選擇器不同,RC只支持等值選擇器,RS還額外支持基于集合的選擇器。

StatefulSet:用于管理有狀態的持久化應用,如database服務程序,它與Deployment不同之處在于,它會為每一個Pod創建一個獨立的持久性標識符,并確保每個Pod之間的順序性。

DaemonSet:用于確保每一個節點都運行了某個Pod的一個副本,新增的節點一樣會被添加此Pod,在節點移除時,此類Pod會被回收。

Job:用于管理運行完成后即可終止的應用,例如批量處理作業任務。

Volume:PV PVC

ConfigMap: 存儲通用的配置變量的,類似于配置文件,使用戶可以將分布式系統中用于不同模塊的環境變量統一到一個對象中管理;而它與配置文件的區別在于它是存在集群的“環境”中的,并且支持K8S集群中所有通用的操作調用方式。

Secret: 用來保存小片敏感數據的k8s資源,例如密碼,token,或者秘鑰。這類數據當然也可以存放在Pod或者鏡像中,但是放在Secret中是為了更方便的控制如何使用數據,并減少暴露的風險。

Role: 表示是一組規則權限,只能累加,Role可以定義在一個namespace中,只能用于授予對單個命名空間中的資源訪問的權限比如我們新建一個對默認命名空間中。

ClusterRole:

RoleBinding:

ClusterRoleBinding:

Service account:

Helm:

Namespace:名稱空間

默認的名稱空間:Default

//查看名稱空間

[root@master ~]# kubectl get ns

Pod資源對象

//查看名稱空間詳細信息

[root@master ~]# kubectl describe ns default 

Pod資源對象

//創建名稱空間

[root@master ~]# kubectl create ns bdqn

Pod資源對象

[root@master ~]# kubectl explain ns

[root@master ~]# vim 111-test.yaml

apiVersion: v1
kind: Namespace
metadata:
  name: test
[root@master ~]# kubectl apply -f 111-test.yaml 

[root@master ~]# kubectl get ns

Pod資源對象

刪除資源的兩種方法:

[root@master ~]# kubectl delete ns test 

[root@master ~]# kubectl delete -f 111-test.yaml 

Ps: namespace資源對象僅用于資源對象的隔離,并不能隔絕不同名稱空間的Pod之間的的通信,那是網絡策略資源的功能。

查看指定名稱空間的資源可以使用--namespace或者-n選項

[root@master ~]# kubectl get pod --namespace=bdqn 
No resources found.

簡寫:

[root@master ~]# kubectl get pod -n bdqn 
No resources found.

查看本集群運行的Pod

[root@master ~]# kubectl get pod -n kube-system 

Pod

[root@master ~]# vim pod.yaml
kind: Pod
apiVersion: v1
metadata:
  name: test-pod
spec:
  containers:
  - name: test-app
    image: httpd
[root@master ~]# kubectl apply -f pod.yaml 
pod/test-pod created

[root@master ~]# kubectl get pod

Pod資源對象

[root@master ~]# vim pod.yaml

kind: Pod
apiVersion: v1
metadata:
  name: test-pod
  namespace: bdqn           //添加一行
spec:
  containers:
  - name: test-app
    image: httpd

重新生成:

[root@master ~]# kubectl apply -f pod.yaml 
pod/test-pod created

查看bdqn名稱空間

[root@master ~]# kubectl get pod -n bdqn 
NAME       READY   STATUS    RESTARTS   AGE
test-pod   1/1     Running   0          80s

Pod中鏡像獲取策略:

Always:鏡像標簽為“latest”或鏡像不存在時,總是從指定的倉庫中獲取鏡像。

IfNotPresent:僅當本地鏡像不存在時才從目標倉庫中下載。

Never:禁止從倉庫中下載鏡像,即只是用本地鏡像。

PS:對于標簽“latest”或者是不存在,其默認策略下載及策略為“Always”,而對于其他標簽的鏡像,默認策略為“IfNotPresent”。

[root@master ~]# vim pod.yaml 

kind: Pod
apiVersion: v1
metadata:
  name: test-pod
  namespace: bdqn
spec:
  containers:
  - name: test-app
    image: httpd
    imagePullPolicy: IfNotPresent
    ports:
    - protocol: TCP
      containerPort: 80
[root@master ~]# kubectl delete pod -n bdqn test-pod 
pod "test-pod" deleted
[root@master ~]# kubectl apply -f pod.yaml 
pod/test-pod created
[root@master ~]# kubectl apply -f pod.yaml 
pod/test-pod created
[root@master ~]# kubectl get pod -n bdqn
NAME       READY   STATUS    RESTARTS   AGE
test-pod   1/1     Running   0          26s

最終效果:

[root@master ~]# vim pod.yaml 
kind: Pod
apiVersion: v1
metadata:
  name: test-pod
  namespace: bdqn
  labels:
    app: test-web
spec:
  containers:
  - name: test-app
    image: httpd
    imagePullPolicy: IfNotPresent
    ports:
    - protocol: TCP
      containerPort: 90
[root@master ~]# vim svc.yaml
apiVersion: v1
kind: Service
metadata:
  name: test-svc
  namespace: bdqn
spec:
  selector:
    app: test-web
  ports:
  - port: 80
    targetPort: 90

[root@master ~]# kubectl describe svc -n bdqn test-svc

Pod資源對象

容器的重啟策略

Always:單反Pod對象終止就將其重啟,此為默認設定。

OnFailure:僅在Pod對象出現錯誤時才將其重啟。

Never:從不重啟。

Pod的默認健康檢查

[root@master ~]# vim healcheck.yaml

apiVersion: v1
kind: Pod
metadata:
  labels:
    test: healcheck
  name: healcheck
spec:
  restartPolicy: OnFailure
  containers:
  - name: healthcheck
    image: busybox
    args:
    - /bin/sh
    - -c
    - sleep 20; exit 1

[root@master ~]# kubectl apply -f healcheck.yaml

[root@master ~]# kubectl get pod -w

Pod資源對象

[root@master ~]# kubectl get pod -n kube-system

Pod資源對象

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

彭水| 东辽县| 彭泽县| 西盟| 吉林市| 额济纳旗| 凤凰县| 武隆县| 东辽县| 桦南县| 天津市| 墨竹工卡县| 白山市| 林周县| 康平县| 昭通市| 闻喜县| 桃江县| 昭苏县| 新郑市| 叙永县| 峨眉山市| 二连浩特市| 安宁市| 平遥县| 徐汇区| 永丰县| 吉首市| 齐河县| 大冶市| 岳阳市| 莱阳市| 隆昌县| 滕州市| 昆山市| 阳城县| 高陵县| 济阳县| 襄垣县| 长寿区| 泰顺县|