k8s 建立第乙個pod資源

2021-10-16 11:55:49 字數 3862 閱讀 5956

: nginx1.required的屬性

引數名字段型別說明

version

string

k8s api 的版本,目前基本是v1,可以用 kubectl api-version 命令查詢

kind

string

這裡指的是 yaml 檔案定義的資源型別和角色, 比如: pod

metadata

object

元資料物件,固定值寫 metadata

metadata.name

string

元資料物件的名字,這裡由我們編寫,比如命名pod的名字

metadata.namespace

string

元資料物件的命名空間,由我們自身定義

spec

object

詳細定義物件,固定值寫spec

spec.container

list

這裡是spec物件的容器列表定義,是個列表

spec.container.name

string

這裡定義容器的名字

spec.container.image

string

這裡定義要用到的映象名稱

2.spec 物件

引數名字段型別說明

spec.containers.name

string

定義容器的名字

spec.containers.image

string

定義要用到的映象的名稱

spec.containers.imagepullpolicy

string

spec.containers.command

list

指定容器啟動命令,因為是陣列可以指定多個,不指定則使用映象打包時使用的啟動命令。

spec.containers.args

list

指定容器啟動命令引數,因為是陣列可以指定多個。

spec.containers.workingdir

string

指定容器的工作目錄

spec.containers.volumemounts

list

指定容器內部的儲存卷配置

spec.containers.volumemounts.name

string

指定可以被容器掛載的儲存卷的名稱

spec.containers.volumemounts.mountpath

string

指定可以被容器掛載的容器卷的路徑

spec.containers.volumemounts.readonly

string

設定儲存卷路徑的讀寫模式,true 或者 false,預設為讀寫模式

spec.containers.ports

list

指定容器需要用到的埠列表

spec.containers.ports.name

string

指定埠名稱

spec.containers.ports.containerport

string

指定容器需要監聽的埠號

spec.containers.ports.hostport

string

指定容器所在主機需要監聽的埠號,預設跟上面 containerport 相同,注意設定了 hostport 同一臺主機無法啟動該容器的相同副本(因為主機的埠號不能相同,這樣會衝突)

spec.containers.ports.protocol

string

指定埠協議,支援tcp和udp,預設值為tcp

spec.containers.env

list

指定容器執行千需設定的環境變數列表

spec.containers.env.name

string

指定環境變數名稱

spec.containers.env.value

string

指定環境變數值

spec.containers.resources

object

指定資源限制和資源請求的值(這裡開始就是設定容器的資源上限)

spec.containers.resources.limits

object

指定設定容器執行時資源的執行上限

spec.containers.resources.limits.cpu

string

指定cpu的限制,單位為 core 數,將用於 docker run --cpu-shares 引數

spec.containers.resources.limits.memory

string

指定 mem 記憶體的限制,單位為 mib,gib

spec.containers.resources.requests

object

指定容器啟動和排程室的限制設定

spec.containers.resources.requests.cpu

string

cpu請求,單位為 core 數,容器啟動時初始化可用數量

spec.containers.resources.requests.memory

string

記憶體請求,單位為 mib,gib 容器啟動的初始化可用數量

3.額外的引數項

引數名字段型別說明

spec.restartpolicy

string

定義pod重啟策略,可以選擇值為 always、onfailure,預設值為 always。 1.always:pod一旦終止執行,則無論容器是如何終止的,kubelet 服務都將重啟它。2.onfailure:只有 pod 以非零退出碼終止時,kubelet 才會重啟該容器。如果容器正常結束(退出碼為0),則 kubelet 將不會重啟它。3.never:pod 終止後,kubelet 將退出碼報告給 master,不會重啟該 pod

spec.nodeselector

object

定義 node 的 label 過濾標籤,以 key:value 格式指定

spec.imagepullsecrets

object

定義pull 映象是使用 secret 名稱,以 name:secretkey 格式指定

spec.hostnetwork

boolean

定義是否使用主機網路模式,預設值為 false。設定 true 表示使用宿主機網路,不使用 docker 網橋,同時設定了 true 將無法在同一臺宿主機上啟動第二個副本。

k8s初識建立乙個pod

vim nginx.yaml apiversion v1 kind pod metadata name nginx labels web spec containers name nginx image nginx 1.13 ports containerport 80建立的命令 需要apiserv...

K8s手工建立乙個POD

mkdir opt yml p cd opt yml master節點操作 vim k8s pod.yml apiversion v1 kind pod metadata name nginx labels spec containers name nginx image 192.168.2.50 ...

k8s集群建立pod,執行pod

k8s集群搭建好後,各個node的狀態變成了ready,就可以建立pod,建立完成後,就會預設的執行其中的container。使用乙個簡單yaml檔案描述pod apiversion v1 必選,版本號,例如v1,版本號必須可以用 kubectl api versions 查詢到 kind pod ...