1. 程式人生 > >kubernetes資源清單

kubernetes資源清單

 

五個一級欄位:

  apiVersion:形式:組名/version。對介面分組進行管理。檢視:kubectl api-versions。v1是核心群組。內測,公測,V1版

  kind:

  metadata:元資料

    name:

    namespace:k8s中的概念。跟docker虛擬化的namespace不同

    labels

    annotations

    每個資源的引用的PATH:/api/GROUP_NAME/VERSION/namespaces/NAMESPACE/TYPE/NAME      

  spec:規劃,規格,期望的狀態,desired state

  status:當前的狀態,向期望狀態靠近。current state,由kubernetes生成,使用者不能定義

 

建立資源的方法:

  apiserver僅接受json格式的資源定義,

  yaml格式提供配置清單,apiserver可自動將其轉換為json格式,而後再提交。

  查詢幫助:kubectl explain pod.metadata pod.spec

 

資源清單配置:

  Pod資源:

    metadata:

      name:

      namespace:

      labels:

    spec: kubectl explain pods.spec.containers

      containers:

      - name <string> -required-

                image <string>

        imagePullPolicy <string>: Always, Never, IfNotPresent, Cannot be updated

        command <[]string> : 優先順序高於Dockerfile中ENTRYPOINT和CMD

        args <[]string>:  https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

        ports:  用作提供資訊或者變數引用,不對暴露埠起作用,

        - name: http

       containerPort <integer> -required-