Sidecar v1.1.1 自訂資源定義

選取說明文件版本:

規格結構定義

SidecarSpec 指定 Sidecar 的所需狀態。

additionalVolumes:
- awsElasticBlockStore:
    fsType: string
    partition: integer
    readOnly: boolean
    volumeID: string
  azureDisk:
    cachingMode: string
    diskName: string
    diskURI: string
    fsType: string
    kind: string
    readOnly: boolean
  azureFile:
    readOnly: boolean
    secretName: string
    shareName: string
  cephfs:
    monitors:
    - string
    path: string
    readOnly: boolean
    secretFile: string
    secretRef:
      name: string
    user: string
  cinder:
    fsType: string
    readOnly: boolean
    secretRef:
      name: string
    volumeID: string
  configMap:
    defaultMode: integer
    items:
    - key: string
      mode: integer
      path: string
    name: string
    optional: boolean
  csi:
    driver: string
    fsType: string
    nodePublishSecretRef:
      name: string
    readOnly: boolean
    volumeAttributes:
  downwardAPI:
    defaultMode: integer
    items:
    - fieldRef:
        apiVersion: string
        fieldPath: string
      mode: integer
      path: string
      resourceFieldRef:
        containerName: string
        divisor: integer or string
        resources: string
  emptyDir:
    medium: string
    sizeLimit: integer or string
  ephemeral:
    volumeClaimTemplate:
      metadata:
      spec:
        accessModes:
        - string
        dataSource:
          apiGroup: string
          kind: string
          name: string
        dataSourceRef:
          apiGroup: string
          kind: string
          name: string
          namespace: string
        resources:
          claims:
          - name: string
          limits: integer or string
          requests: integer or string
        selector:
          matchExpressions:
          - key: string
            operator: string
            values: string
          matchLabels:
        storageClassName: string
        volumeMode: string
        volumeName: string
  fc:
    fsType: string
    lun: integer
    readOnly: boolean
    targetWWNs:
    - string
    wwids:
    - string
  flexVolume:
    driver: string
    fsType: string
    options:
    readOnly: boolean
    secretRef:
      name: string
  flocker:
    datasetName: string
    datasetUUID: string
  gcePersistentDisk:
    fsType: string
    partition: integer
    pdName: string
    readOnly: boolean
  gitRepo:
    directory: string
    repository: string
    revision: string
  glusterfs:
    endpoints: string
    path: string
    readOnly: boolean
  hostPath:
    path: string
    type: string
  iscsi:
    chapAuthDiscovery: boolean
    chapAuthSession: boolean
    fsType: string
    initiatorName: string
    iqn: string
    iscsiInterface: string
    lun: integer
    portals:
    - string
    readOnly: boolean
    secretRef:
      name: string
  name: string
  nfs:
    path: string
    readOnly: boolean
    server: string
  persistentVolumeClaim:
    claimName: string
    readOnly: boolean
  photonPersistentDisk:
    fsType: string
    pdID: string
  portworxVolume:
    fsType: string
    readOnly: boolean
    volumeID: string
  projected:
    defaultMode: integer
    sources:
    - configMap:
        items:
        - key: string
          mode: integer
          path: string
        name: string
        optional: boolean
      downwardAPI:
        items:
        - fieldRef:
            apiVersion: string
            fieldPath: string
          mode: integer
          path: string
          resourceFieldRef:
            containerName: string
            divisor: integer or string
            resource: string
      secret:
        items:
        - key: string
          mode: integer
          path: string
        name: string
        optional: boolean
      serviceAccountToken:
        audience: string
        expirationSeconds: integer
        path: string
  quobyte:
    group: string
    readOnly: boolean
    registry: string
    tenant: string
    user: string
    volume: string
  rbd:
    fsType: string
    image: string
    keyring: string
    monitors:
    - string
    pool: string
    readOnly: boolean
    secretRef:
      name: string
    user: string
  scaleIO:
    fsType: string
    gateway: string
    protectionDomain: string
    readonly: boolean
    secretRef:
      name: string
    sslEnabled: boolean
    storageMode: string
    storagePool: string
    system: string
    volumeName: string
  secret:
    defaultMode: integer
    items:
    - key: string
      mode: integer
      path: string
    optional: boolean
    secretName: string
  storageos:
    fsType: string
    readOnly: boolean
    secretRef:
      name: string
    volumeName: string
    volumeNamespace: string
  vsphereVolume:
    fsType: string
    storagePolicyID: string
    storagePolicyName: string
    volumePath: string
sidecars:
- args:
  - string
  command:
  - string
  env:
  - name: string
    value: string
    valueFrom:
      configMapKeyRef:
        key: string
        name: string
        optional: boolean
      fieldRef:
        apiVersion: string
        fieldPath: string
      resourceFieldRef:
        containerName: string
        divisor: integer or string
        resource: string
      secretKeyRef:
        key: string
        name: string
        optional: boolean
  envFrom:
  - configMapRef:
      name: string
      optional: boolean
    prefix: string
    secretRef:
      name: string
      optional: boolean
  image: string
  imagePullPolicy: string
  lifecycle:
    postStart:
      exec:
        command:
        - string
      httpGet:
        host: string
        httpHeaders:
        - name: string
          value: string
        path: string
        port: integer or string
        scheme: string
      tcpSocket:
        host: string
        port: integer or string
    preStop:
      exec:
        command:
        - string
      httpGet:
        host: string
        httpHeaders:
        - name: string
          value: string
        path: string
        port: integer or string
        scheme: string
      tcpSocket:
        host: string
        port: integer or string
  livenessProbe:
    exec:
      command:
      - string
    failureThreshold: integer
    grpc:
      port: integer
      service: string
    httpGet:
      host: string
      httpHeaders:
      - name: string
        value: string
      path: string
      port: integer or string
      scheme: string
    initialDelaySeconds: integer
    periodSeconds: integer
    successThreshold: integer
    tcpSocket:
      host: string
      port: integer or string
    terminationGracePeriodSeconds: integer
    timeoutSeconds: integer
  name: string
  ports:
  - containerPort: integer
    hostIP: string
    hostPort: integer
    name: string
    protocol: string
  readinessProbe:
    exec:
      command:
      - string
    failureThreshold: integer
    grpc:
      port: integer
      service: string
    httpGet:
      host: string
      httpHeaders:
      - name: string
        value: string
      path: string
      port: integer or string
      scheme: string
    initialDelaySeconds: integer
    periodSeconds: integer
    successThreshold: integer
    tcpSocket:
      host: string
      port: integer or string
    terminationGracePeriodSeconds: integer
    timeoutSeconds: integer
  resizePolicy:
  - resourceName: string
    restartPolicy: string
  resources:
    claims:
    - name: string
    limits: integer or string
    requests: integer or string
  restartPolicy: string
  securityContext:
    allowPrivilegeEscalation: boolean
    capabilities:
      add:
      - string
      drop:
      - string
    privileged: boolean
    procMount: string
    readOnlyRootFilesystem: boolean
    runAsGroup: integer
    runAsNonRoot: boolean
    runAsUser: integer
    seLinuxOptions:
      level: string
      role: string
      type: string
      user: string
    seccompProfile:
      localhostProfile: string
      type: string
    windowsOptions:
      gmsaCredentialSpec: string
      gmsaCredentialSpecName: string
      hostProcess: boolean
      runAsUserName: string
  startupProbe:
    exec:
      command:
      - string
    failureThreshold: integer
    grpc:
      port: integer
      service: string
    httpGet:
      host: string
      httpHeaders:
      - name: string
        value: string
      path: string
      port: integer or string
      scheme: string
    initialDelaySeconds: integer
    periodSeconds: integer
    successThreshold: integer
    tcpSocket:
      host: string
      port: integer or string
    terminationGracePeriodSeconds: integer
    timeoutSeconds: integer
  stdin: boolean
  stdinOnce: boolean
  terminationMessagePath: string
  terminationMessagePolicy: string
  tty: boolean
  volumeDevices:
  - devicePath: string
    name: string
  volumeMounts:
  - mountPath: string
    mountPropagation: string
    name: string
    readOnly: boolean
    subPath: string
    subPathExpr: string
  workingDir: string

欄位

類型
必填或選填

 

說明
additionalVolumes
list (object)
選填
AdditionalVolumes 會指定要掛接至邊車容器的現有磁碟區清單。詳情請參閱 https://kubernetes.io/docs/concepts/storage/volumes/。
additionalVolumes[]
object
選填
磁碟區代表 Pod 中的具名磁碟區,Pod 中的任何容器都可以存取。
additionalVolumes[].awsElasticBlockStore
object
選填
awsElasticBlockStore 代表 AWS 磁碟資源,該資源會附加至 kubelet 的主體機器,然後公開至 Pod。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
additionalVolumes[].awsElasticBlockStore.fsType
string
選填
fsType 是要掛接的磁碟區檔案系統類型。提示:請確認主機作業系統支援檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如果未指定,系統會隱含推斷為「ext4」。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
additionalVolumes[].awsElasticBlockStore.partition
integer
選填
磁碟區中的磁碟分割區,如省略,預設會依磁碟區名稱掛接。範例:如要指定磁碟區 /dev/sda1,請將分割區指定為「1」。同樣地,/dev/sda 的磁碟區分區為「0」(或可將屬性留空)。
additionalVolumes[].awsElasticBlockStore.readOnly
boolean
選填
readOnly 值為 true 時,系統會強制執行 VolumeMounts 中的 readOnly 設定。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
additionalVolumes[].awsElasticBlockStore.volumeID
string
必填
volumeID 是 AWS 中永久磁碟資源 (Amazon EBS 磁碟區) 的專屬 ID。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#awselasticblockstore
additionalVolumes[].azureDisk
object
選填
azureDisk 代表主機上的 Azure 資料磁碟掛接,以及繫結至 Pod 的掛接。
additionalVolumes[].azureDisk.cachingMode
string
選填
cachingMode 是主機快取模式:None、Read-only、Read Write。
additionalVolumes[].azureDisk.diskName
string
必填
diskName 是 Blob 儲存體中的資料磁碟名稱
additionalVolumes[].azureDisk.diskURI
string
必填
diskURI 是 Blob 儲存空間中的資料磁碟 URI
additionalVolumes[].azureDisk.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。
additionalVolumes[].azureDisk.kind
string
選填
kind 預期值為 Shared:每個儲存空間帳戶有多個 Blob 磁碟 Dedicated:每個儲存空間帳戶有一個 Blob 磁碟 Managed:Azure 受控資料磁碟 (僅限受控可用性集)。預設為 Shared
additionalVolumes[].azureDisk.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。ReadOnly here will force the ReadOnly setting in VolumeMounts.
additionalVolumes[].azureFile
object
選填
azureFile 代表主機上的 Azure 檔案服務掛接,並繫結掛接至 Pod。
additionalVolumes[].azureFile.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。
additionalVolumes[].azureFile.secretName
string
必填
secretName 是包含 Azure 儲存體帳戶名稱和金鑰的 Secret 名稱
additionalVolumes[].azureFile.shareName
string
必填
shareName 是 Azure 共用區名稱
additionalVolumes[].cephfs
object
選填
cephFS 代表主機上的 Ceph FS 掛接,與 Pod 共用生命週期
additionalVolumes[].cephfs.monitors
list (string)
必填
monitors is Required: Monitors is a collection of Ceph monitors More info: https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
additionalVolumes[].cephfs.path
string
選填
path 為選用:做為掛接根目錄,而非完整的 Ceph 樹狀結構,預設值為 /
additionalVolumes[].cephfs.readOnly
boolean
選填
readOnly 為選用屬性:預設值為 false (讀取/寫入)。 此處的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。 詳情請參閱:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
additionalVolumes[].cephfs.secretFile
string
選填
secretFile 為選用項目:SecretFile 是使用者金鑰環的路徑,預設為 /etc/ceph/user.secret。詳情請參閱 https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it。
additionalVolumes[].cephfs.secretRef
object
選填
secretRef 為選用項目:SecretRef 是指使用者的驗證密鑰,預設為空白。詳情請參閱:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
additionalVolumes[].cephfs.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].cephfs.user
string
選填
user 為選用項目:使用者是 rados 使用者名稱,預設為管理員。詳情請參閱:https://examples.k8s.io/volumes/cephfs/README.md#how-to-use-it
additionalVolumes[].cinder
object
選填
cinder 代表附加並掛接在 kubelet 主體機器上的 cinder 磁碟區。詳情請參閱:https://examples.k8s.io/mysql-cinder-pd/README.md
additionalVolumes[].cinder.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。詳情請參閱:https://examples.k8s.io/mysql-cinder-pd/README.md
additionalVolumes[].cinder.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。詳情請參閱:https://examples.k8s.io/mysql-cinder-pd/README.md
additionalVolumes[].cinder.secretRef
object
選填
secretRef 為選用項目:指向含有參數的 Secret 物件,用於連線至 OpenStack
additionalVolumes[].cinder.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].cinder.volumeID
string
必填
用於在 Cinder 中識別磁碟區的 volumeID。 詳情請參閱:https://examples.k8s.io/mysql-cinder-pd/README.md
additionalVolumes[].configMap
object
選填
configMap 代表應填入這個磁碟區的 configMap
additionalVolumes[].configMap.defaultMode
integer
選填
defaultMode 為選用:預設用於設定所建立檔案權限的模式位元。必須是介於 0000 到 0777 之間的八進位值,或是介於 0 到 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元使用十進位值。預設值為 0644。路徑中的目錄不受這項設定影響。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 衝突,導致設定其他模式位元。
additionalVolumes[].configMap.items
list (object)
選填
如果未指定項目,參照的 ConfigMap 中每個鍵/值組合都會投影到磁碟區中,做為名稱是鍵、內容是值的檔案。如果指定,列出的鍵會投影到指定路徑,未列出的鍵則不會出現。如果指定的鍵不在 ConfigMap 中,除非標示為選用,否則磁碟區設定會發生錯誤。路徑必須是相對路徑,且不得包含「..」路徑或以「..」開頭。
additionalVolumes[].configMap.items[]
object
選填
將字串鍵對應至磁碟區內的路徑。
additionalVolumes[].configMap.items[].key
string
必填
key 是專案的金鑰。
additionalVolumes[].configMap.items[].mode
integer
選填
mode 為選用:用於設定這個檔案權限的模式位元。必須是介於 0000 和 0777 之間的八進位值,或介於 0 和 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元使用十進位值。如未指定,則會使用磁碟區 defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].configMap.items[].path
string
必填
path 是要將金鑰對應至的檔案相對路徑。不得為絕對路徑。 不得包含路徑元素「..」,也不得以字串「..」開頭。
additionalVolumes[].csi
object
選填
csi (Container Storage Interface) 代表由特定外部 CSI 驅動程式處理的暫時性儲存空間 (Beta 版功能)。
additionalVolumes[].csi.driver
string
必填
driver 是處理這個磁碟區的 CSI 驅動程式名稱。請向管理員確認叢集中註冊的正確名稱。
additionalVolumes[].csi.fsType
string
選填
要掛接的 fsType。例如:"ext4"、"xfs"、"ntfs"。 如未提供,系統會將空白值傳遞至相關聯的 CSI 驅動程式,該驅動程式會決定要套用的預設檔案系統。
additionalVolumes[].csi.nodePublishSecretRef
object
選填
nodePublishSecretRef 是 Secret 物件的參照,其中包含要傳遞至 CSI 驅動程式的機密資訊,以便完成 CSI NodePublishVolume 和 NodeUnpublishVolume 呼叫。這個欄位為選填,如果不需要密鑰,可以留空。如果 Secret 物件包含多個 Secret,系統會傳遞所有 Secret 參照。
additionalVolumes[].csi.nodePublishSecretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].csi.readOnly
boolean
選填
readOnly 會指定磁碟區的唯讀設定。預設值為 false (讀取/寫入)。
additionalVolumes[].csi.volumeAttributes
object (string)
選填
volumeAttributes 會儲存傳遞至 CSI 驅動程式的驅動程式專屬屬性。如需支援的值,請參閱驅動程式的說明文件。
additionalVolumes[].downwardAPI
object
選填
downwardAPI represents downward API about the pod that should populate this volume
additionalVolumes[].downwardAPI.defaultMode
integer
選填
選用:預設用於所建立檔案的模式位元。必須是選用:預設用於設定所建立檔案權限的模式位元。必須是介於 0000 到 0777 之間的八進位值,或是介於 0 到 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元必須使用十進位值。預設值為 0644。路徑中的目錄不受這項設定影響。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].downwardAPI.items
list (object)
選填
Items 是向下 API 磁碟區檔案的清單
additionalVolumes[].downwardAPI.items[]
object
選填
DownwardAPIVolumeFile 代表用於建立包含 Pod 欄位的檔案的資訊
additionalVolumes[].downwardAPI.items[].fieldRef
object
選填
必要:選取 Pod 的欄位,僅支援註解、標籤、名稱和命名空間。
additionalVolumes[].downwardAPI.items[].fieldRef.apiVersion
string
選填
FieldPath 的結構定義版本,預設為「v1」。
additionalVolumes[].downwardAPI.items[].fieldRef.fieldPath
string
必填
在指定 API 版本中選取的欄位路徑。
additionalVolumes[].downwardAPI.items[].mode
integer
選填
選用:用於設定這個檔案權限的模式位元,必須是介於 0000 和 0777 之間的八進位值,或介於 0 和 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元必須使用十進位值。如未指定,則會使用磁碟區 defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].downwardAPI.items[].path
string
必填
必要:路徑是要建立的檔案相對路徑。不得為絕對路徑或包含「..」路徑。必須採用 UTF-8 編碼。 相對路徑的第一個項目不得以「..」開頭。
additionalVolumes[].downwardAPI.items[].resourceFieldRef
object
選填
選取容器的資源:僅支援資源限制和要求 (limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
additionalVolumes[].downwardAPI.items[].resourceFieldRef.containerName
string
選填
容器名稱:磁碟區為必填,環境變數則為選填
additionalVolumes[].downwardAPI.items[].resourceFieldRef.divisor
integer or string
選填
指定公開資源的輸出格式,預設為「1」
additionalVolumes[].downwardAPI.items[].resourceFieldRef.resource
string
必填
必要:要選取的資源
additionalVolumes[].emptyDir
object
選填
emptyDir 代表與 Pod 共用生命週期的暫存目錄。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#emptydir
additionalVolumes[].emptyDir.medium
string
選填
medium 代表應支援這個目錄的儲存媒體類型。預設值為「」,表示使用節點的預設媒體。必須是空字串 (預設) 或 Memory。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#emptydir
additionalVolumes[].emptyDir.sizeLimit
integer or string
選填
sizeLimit 是這個 EmptyDir 磁碟區所需的本機儲存空間總量。大小限制也適用於記憶體媒介。記憶體媒體 EmptyDir 的用量上限,會是這裡指定的 SizeLimit 值,以及 Pod 中所有容器的記憶體限制總和兩者之間的最小值。預設值為 nil,表示未定義限制。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#emptydir
additionalVolumes[].ephemeral
object
選填
ephemeral 代表由叢集儲存空間驅動程式處理的磁碟區。磁碟區的生命週期與定義磁碟區的 Pod 相關聯,會在 Pod 啟動前建立,並在 Pod 移除時刪除。\n 適用情況:a) 只有在 Pod 執行時才需要磁碟區;b) 需要一般磁碟區的功能,例如從快照還原或追蹤容量;c) 儲存空間驅動程式是透過儲存空間類別指定;d) 儲存空間驅動程式支援透過 PersistentVolumeClaim 動態佈建磁碟區 (如要進一步瞭解這種磁碟區類型與 PersistentVolumeClaim 之間的關聯,請參閱 EphemeralVolumeSource)。\n 如要使用在個別 Pod 生命週期後仍會保留的磁碟區,請使用 PersistentVolumeClaim 或其中一個廠商專屬的磁碟區 API。\n 如果 CSI 驅動程式的用途是這樣,請使用 CSI 建立輕量級的本機暫時性磁碟區。詳情請參閱驅動程式的說明文件。\n Pod 可同時使用這兩種臨時磁碟區和永久磁碟區。
additionalVolumes[].ephemeral.volumeClaimTemplate
object
選填
將用於建立獨立 PVC,以佈建磁碟區。嵌入這個 EphemeralVolumeSource 的 Pod 將成為 PVC 的擁有者,否則 PVC 會與 Pod 一併刪除。PVC 名稱為 <pod name>-<volume name>,其中 <volume name> 是 PodSpec.Volumes 陣列項目的名稱。如果串連名稱不適用於 PVC (例如太長),Pod 驗證會拒絕 Pod。\n 如果現有 PVC 的名稱與 Pod 相同,但並非由 Pod 擁有,系統將不會* 使用該 PVC,以免 Pod 誤用不相關的磁碟區。因此,系統會封鎖 Pod 的啟動作業,直到移除不相關的 PVC 為止。如果 Pod 要使用這類預先建立的 PVC,則必須在 Pod 存在後,以 Pod 的擁有者參照更新 PVC。通常不需要這麼做,但手動重建損毀的叢集時,這項功能可能很有用。\n 這個欄位為唯讀,Kubernetes 在建立 PVC 後不會進行任何變更。\n 必填,不得為空值。
additionalVolumes[].ephemeral.volumeClaimTemplate.metadata
object
選填
可能包含建立 PVC 時會複製到 PVC 的標籤和註解。不允許其他欄位,且會在驗證期間遭到拒絕。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec
object
必填
PersistentVolumeClaim 的規格。 整個內容會不經變更,直接複製到透過這個範本建立的 PVC。這裡也適用與 PersistentVolumeClaim 相同的欄位。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.accessModes
list (string)
選填
accessModes 包含磁碟區應有的所需存取模式。詳情請參閱:https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.accessModes[]
string
選填
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSource
object
選填
dataSource 欄位可用於指定:* 現有的 VolumeSnapshot 物件 (snapshot.storage.k8s.io/VolumeSnapshot) * 現有的 PVC (PersistentVolumeClaim) 如果佈建程式或外部控制器支援指定的資料來源,就會根據指定資料來源的內容建立新磁碟區。啟用 AnyVolumeDataSource feature gate 時,dataSource 內容會複製到 dataSourceRef,而未指定 dataSourceRef.namespace 時,dataSourceRef 內容會複製到 dataSource。如果指定命名空間,dataSourceRef 就不會複製到 dataSource。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSource.apiGroup
string
選填
APIGroup 是所參照資源的群組。如未指定 APIGroup,指定的 Kind 必須位於核心 API 群組。如果是其他第三方類型,則必須提供 APIGroup。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSource.kind
string
必填
Kind 是所參照的資源類型
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSource.name
string
必填
Name 是所參照資源的名稱
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef
object
選填
如要使用非空白磁碟區,dataSourceRef 會指定要從哪個物件將資料填入磁碟區。這可以是來自非空白 API 群組 (非核心物件) 的任何物件,或 PersistentVolumeClaim 物件。指定這個欄位後,只有在指定物件的類型與某些已安裝的磁碟區填入器或動態佈建器相符時,磁碟區繫結才會成功。這個欄位會取代 dataSource 欄位的功能,因此如果這兩個欄位都有值,則必須相同。為了回溯相容性,如果未在 dataSourceRef 中指定命名空間,且其中一個欄位 (dataSource 和 dataSourceRef) 為空白,另一個欄位不為空白,則這兩個欄位都會自動設為相同的值。在 dataSourceRef 中指定命名空間時,dataSource 不會設為相同的值,且必須為空白。dataSource 和 dataSourceRef 之間有三項重要差異:* dataSource 只允許兩種特定類型的物件,dataSourceRef 則允許任何非核心物件,以及 PersistentVolumeClaim 物件。* dataSource 會忽略不允許的值 (捨棄這些值),dataSourceRef 則會保留所有值,並在指定不允許的值時產生錯誤。* dataSource 只允許本機物件,dataSourceRef 則允許任何命名空間中的物件。(Beta 版) 如要使用這個欄位,必須啟用 AnyVolumeDataSource feature gate。(Alpha 版) 使用 dataSourceRef 的命名空間欄位時,必須啟用 CrossNamespaceVolumeDataSource feature gate。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef.apiGroup
string
選填
APIGroup 是所參照資源的群組。如未指定 APIGroup,指定的 Kind 必須位於核心 API 群組。如果是其他第三方類型,則必須提供 APIGroup。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef.kind
string
必填
Kind 是所參照的資源類型
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef.name
string
必填
Name 是所參照資源的名稱
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.dataSourceRef.namespace
string
選填
命名空間是所參照資源的命名空間。請注意,如果指定命名空間,參照命名空間中必須有 gateway.networking.k8s.io/ReferenceGrant 物件,該命名空間的擁有者才能接受參照。詳情請參閱 ReferenceGrant 說明文件。(Alpha) 必須啟用 CrossNamespaceVolumeDataSource feature gate,才能使用這個欄位。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources
object
選填
resources 代表磁碟區應具備的最低資源。如果啟用 RecoverVolumeExpansionFailure 功能,使用者可以指定低於先前值的資源需求,但仍須高於要求狀態欄位中記錄的容量。詳情請參閱:https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources.claims
list (object)
選填
Claims 會列出 spec.resourceClaims 中定義的資源名稱,這些資源是由這個容器使用。\n 這是 Alpha 版欄位,需要啟用 DynamicResourceAllocation 功能閘道。\n 這個欄位無法變更。 只能為容器設定。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources.claims[]
object
選填
ResourceClaim 會參照 PodSpec.ResourceClaims 中的一個項目。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources.claims[].name
string
必填
名稱必須與使用這個欄位的 Pod 中 pod.spec.resourceClaims 的其中一個項目名稱相符。並在容器中提供該資源。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources.limits
integer or string
選填
「限制」是指允許使用的運算資源數量上限。詳情請參閱:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.resources.requests
integer or string
選填
要求說明所需的最低運算資源量。如果省略容器的「Requests」,系統會預設為「Limits」(如果已明確指定),否則會預設為實作定義的值。要求不得超過限制。詳情請參閱:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector
object
選填
selector 是磁碟區的標籤查詢,用於考量繫結。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions
list (object)
選填
matchExpressions 是標籤選取器需求條件的清單。這些條件會以 AND 邏輯運算子連結。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[]
object
選填
標籤選取器需求是包含值、鍵,以及將鍵和值相關聯的運算子的選取器。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[].key
string
必填
key 是選取器套用的標籤鍵。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[].operator
string
必填
運算子代表鍵與一組值的關係。有效運算子包括 In、NotIn、Exists 和 DoesNotExist。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchExpressions[].values
string
選填
values 是字串值陣列。如果運算子為 In 或 NotIn,則值陣列不得為空白。如果運算子為 Exists 或 DoesNotExist,值陣列必須為空白。這個陣列會在策略性合併修補期間遭到取代。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.selector.matchLabels
object
選填
matchLabels 是 {key,value} 組合的對應。matchLabels 對應中的單一 {key,value} 相當於 matchExpressions 的元素,其索引鍵欄位為「key」,運算子為「In」,且值陣列僅包含「value」。這些條件會以 AND 運算子連結。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.storageClassName
string
選填
storageClassName 是要求所需的 StorageClass 名稱。詳情請參閱: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.volumeMode
string
選填
volumeMode 定義聲明要求的磁碟區類型。如果未納入聲明規格,則表示檔案系統的值。
additionalVolumes[].ephemeral.volumeClaimTemplate.spec.volumeName
string
選填
volumeName 是支援這項要求的 PersistentVolume 繫結參照。
additionalVolumes[].fc
object
選填
fc 代表附加至 kubelet 主機,然後公開至 Pod 的光纖通道資源。
additionalVolumes[].fc.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則隱含推斷為「ext4」。
additionalVolumes[].fc.lun
integer
選填
lun 為選用:FC 目標 lun 編號
additionalVolumes[].fc.readOnly
boolean
選填
readOnly 為選用:預設為 false (讀取/寫入)。 這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。
additionalVolumes[].fc.targetWWNs
list (string)
選填
targetWWNs 為選用項目:FC 目標全球名稱 (WWN)
additionalVolumes[].fc.targetWWNs[]
string
選填
additionalVolumes[].fc.wwids
list (string)
選填
wwids 選用:FC 磁碟區全球 ID (wwids)。必須設定 wwids 或 targetWWN 和 lun 的組合,但不能同時設定兩者。
additionalVolumes[].fc.wwids[]
string
選填
additionalVolumes[].flexVolume
object
選填
flexVolume 代表一般磁碟區資源,使用以 exec 為基礎的外掛程式佈建/附加。
additionalVolumes[].flexVolume.driver
string
必填
driver 是這個磁碟區要使用的驅動程式名稱。
additionalVolumes[].flexVolume.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。預設檔案系統取決於 FlexVolume 指令碼。
additionalVolumes[].flexVolume.options
object
選填
options 為選用:這個欄位會保留額外的指令選項 (如有)。
additionalVolumes[].flexVolume.readOnly
boolean
選填
readOnly 為選用:預設為 false (讀取/寫入)。 這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。
additionalVolumes[].flexVolume.secretRef
object
選填
secretRef 為選用項目:secretRef 是參照,指向含有要傳遞至外掛程式指令碼的機密資訊的密鑰物件。如未指定任何密鑰物件,這個值可能為空。如果 Secret 物件包含多個 Secret,所有 Secret 都會傳遞至外掛程式指令碼。
additionalVolumes[].flexVolume.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].flocker
object
選填
flocker 代表連結至 kubelet 主體機器的 Flocker 磁碟區。這取決於 Flocker 控制服務是否正在執行
additionalVolumes[].flocker.datasetName
string
選填
datasetName 是儲存為中繼資料的資料集名稱 -> Flocker 資料集上的名稱應視為已淘汰
additionalVolumes[].flocker.datasetUUID
string
選填
datasetUUID 是資料集的 UUID。這是 Flocker 資料集的專屬 ID
additionalVolumes[].gcePersistentDisk
object
選填
gcePersistentDisk 代表附加至 kubelet 主機的 Compute Engine 磁碟資源,然後公開至 Pod。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
additionalVolumes[].gcePersistentDisk.fsType
string
選填
fsType 是要掛接的磁碟區檔案系統類型。提示:請確認主機作業系統支援檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。 詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
additionalVolumes[].gcePersistentDisk.partition
integer
選填
partition 是要掛接的磁碟區中的分區。如省略,預設會依磁碟區名稱掛接。範例:如果是磁碟區 /dev/sda1,請將分區指定為「1」。同樣地,/dev/sda 的磁碟區分割區為「0」(或您可以將屬性留空)。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
additionalVolumes[].gcePersistentDisk.pdName
string
必填
pdName 是 Compute Engine 中永久磁碟資源的專屬名稱。用於識別 Compute Engine 中的磁碟。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
additionalVolumes[].gcePersistentDisk.readOnly
boolean
選填
這裡的 readOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。預設值為 false。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#gcepersistentdisk
additionalVolumes[].gitRepo
object
選填
gitRepo 代表特定修訂版本的 git 存放區。已淘汰:GitRepo 已淘汰。如要使用 Git 存放區佈建容器,請將 EmptyDir 掛接到使用 Git 複製存放區的 InitContainer,然後將 EmptyDir 掛接到 Pod 的容器。
additionalVolumes[].gitRepo.directory
string
選填
directory 是目標目錄名稱。不得包含「..」或以「..」開頭。如果提供「.」,磁碟區目錄就會是 Git 存放區。否則,如果指定,磁碟區將包含具有指定名稱的子目錄中的 git 存放區。
additionalVolumes[].gitRepo.repository
string
必填
repository 是網址
additionalVolumes[].gitRepo.revision
string
選填
revision 是指定修訂版本的修訂版本雜湊。
additionalVolumes[].glusterfs
object
選填
glusterfs 代表主機上的 Glusterfs 掛接,與 Pod 共用生命週期。詳情請參閱:https://examples.k8s.io/volumes/glusterfs/README.md
additionalVolumes[].glusterfs.endpoints
string
必填
endpoints 是詳細說明 Glusterfs 拓撲的端點名稱。詳情請參閱:https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
additionalVolumes[].glusterfs.path
string
必填
path 是 Glusterfs 磁碟區路徑。詳情請參閱: https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
additionalVolumes[].glusterfs.readOnly
boolean
選填
這裡的 readOnly 會強制以唯讀權限掛接 Glusterfs 磁碟區。預設值為 false。詳情請參閱:https://examples.k8s.io/volumes/glusterfs/README.md#create-a-pod
additionalVolumes[].hostPath
object
選填
hostPath 代表主體機器上預先存在的檔案或目錄,可直接提供給容器。這通常用於系統代理程式或其他有權查看主機的項目。大多數容器都不需要。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#hostpath
additionalVolumes[].hostPath.path
string
必填
主機上的目錄路徑。如果路徑是符號連結,則會追蹤連結至實際路徑。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#hostpath
additionalVolumes[].hostPath.type
string
選填
type for HostPath Volume Defaults to "" More info: https://kubernetes.io/docs/concepts/storage/volumes#hostpath
additionalVolumes[].iscsi
object
選填
iscsi 代表 ISCSI 磁碟資源,該資源會附加至 kubelet 的主體機器,然後公開至 Pod。詳情請參閱:https://examples.k8s.io/volumes/iscsi/README.md
additionalVolumes[].iscsi.chapAuthDiscovery
boolean
選填
chapAuthDiscovery 定義是否支援 iSCSI 探索 CHAP 驗證
additionalVolumes[].iscsi.chapAuthSession
boolean
選填
chapAuthSession 定義是否支援 iSCSI 工作階段 CHAP 驗證
additionalVolumes[].iscsi.fsType
string
選填
fsType 是要掛接的磁碟區檔案系統類型。提示:請確認主機作業系統支援檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如果未指定,系統會隱含推斷為「ext4」。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#iscsi
additionalVolumes[].iscsi.initiatorName
string
選填
initiatorName 是自訂 iSCSI 啟動器名稱。如果同時指定 initiatorName 和 iscsiInterface,系統會為連線建立新的 iSCSI 介面 <target portal>:<volume name>。
additionalVolumes[].iscsi.iqn
string
必填
iqn 是目標 iSCSI 完整名稱。
additionalVolumes[].iscsi.iscsiInterface
string
選填
iscsiInterface 是使用 iSCSI 傳輸的介面名稱。預設值為「default」(tcp)。
additionalVolumes[].iscsi.lun
integer
必填
lun 代表 iSCSI 目標 LUN 編號。
additionalVolumes[].iscsi.portals
list (string)
選填
portals 是 iSCSI 目標入口網站清單。如果通訊埠並非預設通訊埠 (通常是 TCP 通訊埠 860 和 3260),則入口網站為 IP 或 ip_addr:port。
additionalVolumes[].iscsi.portals[]
string
選填
additionalVolumes[].iscsi.readOnly
boolean
選填
這裡的 readOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。預設值為 false。
additionalVolumes[].iscsi.secretRef
object
選填
secretRef 是 iSCSI 目標和啟動器驗證的 CHAP 密鑰
additionalVolumes[].iscsi.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].iscsi.targetPortal
string
必填
targetPortal 是 iSCSI 目標入口網站。如果通訊埠並非預設 (通常是 TCP 通訊埠 860 和 3260),則入口網站為 IP 或 ip_addr:port。
additionalVolumes[].name
string
必填
磁碟區名稱。必須是 DNS_LABEL,且在 Pod 中不得重複。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].nfs
object
選填
nfs 代表主機上的 NFS 掛接,可共用 Pod 的生命週期。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#nfs
additionalVolumes[].nfs.path
string
必填
NFS 伺服器匯出的路徑。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#nfs
additionalVolumes[].nfs.readOnly
boolean
選填
這裡的 readOnly 會強制以唯讀權限掛接 NFS 匯出項目。預設值為 false。 詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#nfs
additionalVolumes[].nfs.server
string
必填
server 是 NFS 伺服器的主機名稱或 IP 位址。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#nfs
additionalVolumes[].persistentVolumeClaim
object
選填
persistentVolumeClaimVolumeSource 代表相同命名空間中 PersistentVolumeClaim 的參照。詳情請參閱:https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
additionalVolumes[].persistentVolumeClaim.claimName
string
必填
claimName 是 PersistentVolumeClaim 的名稱,與使用這個磁碟區的 Pod 位於相同命名空間。詳情請參閱:https://kubernetes.io/docs/concepts/storage/persistent-volumes#persistentvolumeclaims
additionalVolumes[].persistentVolumeClaim.readOnly
boolean
選填
readOnly:強制執行 VolumeMounts 中的 ReadOnly 設定。預設值為 false。
additionalVolumes[].photonPersistentDisk
object
選填
photonPersistentDisk 代表附加至 kubelet 主機並掛接的 PhotonController 永久磁碟
additionalVolumes[].photonPersistentDisk.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。
additionalVolumes[].photonPersistentDisk.pdID
string
必填
pdID 是 Photon Controller 永久磁碟的 ID
additionalVolumes[].portworxVolume
object
選填
portworxVolume 代表附加至 kubelet 主機並掛接的 portworx 磁碟區
additionalVolumes[].portworxVolume.fsType
string
選填
fSType 代表要掛接的檔案系統類型 必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」。如未指定,則會隱含推論為「ext4」。
additionalVolumes[].portworxVolume.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。
additionalVolumes[].portworxVolume.volumeID
string
必填
volumeID 可專門用於識別 Portworx 磁碟區
additionalVolumes[].projected
object
選填
所有資源 (包括密鑰、ConfigMap 和 downward API) 的投影項目
additionalVolumes[].projected.defaultMode
integer
選填
defaultMode 是用來預設在建立的檔案上設定權限的模式位元。必須是介於 0000 到 0777 之間的八進位值,或是介於 0 到 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元使用十進位值。路徑中的目錄不受這項設定影響。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 衝突,導致設定其他模式位元。
additionalVolumes[].projected.sources
list (object)
選填
sources 是磁碟區投影清單
additionalVolumes[].projected.sources[]
object
選填
可與其他支援的磁碟區類型一起投影的投影
additionalVolumes[].projected.sources[].configMap
object
選填
要投影的 configMap 資料相關 configMap 資訊
additionalVolumes[].projected.sources[].configMap.items
list (object)
選填
如果未指定項目,參照 ConfigMap 的資料欄位中每個鍵/值配對,都會投影到磁碟區中做為檔案,檔案名稱是鍵,內容是值。如果指定,列出的鍵會投影到指定路徑,未列出的鍵則不會出現。如果指定的鍵不存在於 ConfigMap 中,除非標示為選用,否則磁碟區設定會發生錯誤。路徑必須是相對路徑,且不得包含「..」路徑或以「..」開頭。
additionalVolumes[].projected.sources[].configMap.items[]
object
選填
將字串索引鍵對應至磁碟區內的路徑。
additionalVolumes[].projected.sources[].configMap.items[].key
string
必填
key 是專案的金鑰。
additionalVolumes[].projected.sources[].configMap.items[].mode
integer
選填
mode 是選用項目:用來設定這個檔案權限的模式位元。 必須是介於 0000 到 0777 之間的八進位值,或是介於 0 到 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則需要十進位值做為模式位元。如未指定,系統會使用 volume defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].projected.sources[].configMap.items[].path
string
必填
path 是要將鍵對應至的檔案相對路徑。不得為絕對路徑。不得包含路徑元素「..」。不得以字串「..」開頭。
additionalVolumes[].projected.sources[].configMap.name
string
選填
參照對象的名稱。詳情請參閱: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].projected.sources[].configMap.optional
boolean
選填
選用指定是否必須定義 ConfigMap 或其金鑰
additionalVolumes[].projected.sources[].downwardAPI
object
選填
downwardAPI 資訊,說明要投影的 downwardAPI 資料
additionalVolumes[].projected.sources[].downwardAPI.items
list (object)
選填
Items 是 DownwardAPIVolume 檔案的清單
additionalVolumes[].projected.sources[].downwardAPI.items[]
object
選填
DownwardAPIVolumeFile 代表建立含有 Pod 欄位檔案的資訊
additionalVolumes[].projected.sources[].downwardAPI.items[].fieldRef
object
選填
必要:選取 Pod 的欄位,僅支援註解、標籤、名稱和命名空間。
additionalVolumes[].projected.sources[].downwardAPI.items[].fieldRef.apiVersion
string
選填
FieldPath 的結構定義版本,預設為「v1」。
additionalVolumes[].projected.sources[].downwardAPI.items[].fieldRef.fieldPath
string
必填
要在指定 API 版本中選取的欄位路徑。
additionalVolumes[].projected.sources[].downwardAPI.items[].mode
integer
選填
選用:用於設定這個檔案權限的模式位元,必須是介於 0000 和 0777 之間的八進位值,或介於 0 和 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則需要十進位值做為模式位元。如未指定,系統會使用磁碟區 defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 衝突,導致設定其他模式位元。
additionalVolumes[].projected.sources[].downwardAPI.items[].path
string
必填
必要:路徑是要建立的檔案的相對路徑。不得為絕對路徑,也不得包含「..」路徑。必須採用 UTF-8 編碼。相對路徑的第一個項目不得以「..」開頭。
additionalVolumes[].projected.sources[].downwardAPI.items[].resourceFieldRef
object
選填
選取容器的資源:僅支援資源限制和要求 (limits.cpu、limits.memory、requests.cpu 和 requests.memory)。
additionalVolumes[].projected.sources[].downwardAPI.items[].resourceFieldRef.containerName
string
選填
容器名稱:磁碟區為必填,環境變數為選填
additionalVolumes[].projected.sources[].downwardAPI.items[].resourceFieldRef.divisor
integer or string
選填
指定公開資源的輸出格式,預設為「1」
additionalVolumes[].projected.sources[].downwardAPI.items[].resourceFieldRef.resource
string
必填
必要:要選取的資源
additionalVolumes[].projected.sources[].secret
object
選填
secret 資訊
additionalVolumes[].projected.sources[].secret.items
list (object)
選填
如果未指定項目,參照 Secret 的資料欄位中每個鍵值組都會投影到磁碟區,成為檔案 (名稱為鍵,內容為值)。如果指定,列出的金鑰會投射到指定路徑,未列出的金鑰則不會顯示。如果指定的金鑰不存在於 Secret 中,除非標示為選用,否則磁碟區設定會發生錯誤。路徑必須是相對路徑,且不得包含「..」路徑或以「..」開頭。
additionalVolumes[].projected.sources[].secret.items[]
object
選填
將字串索引鍵對應至磁碟區內的路徑。
additionalVolumes[].projected.sources[].secret.items[].key
string
必填
key 是專案的金鑰。
additionalVolumes[].projected.sources[].secret.items[].mode
integer
選填
mode 是選用項目:用來設定這個檔案權限的模式位元。 必須是介於 0000 到 0777 之間的八進位值,或是介於 0 到 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則需要十進位值做為模式位元。如未指定,系統會使用 volume defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].projected.sources[].secret.items[].path
string
必填
path 是要將鍵對應至的檔案相對路徑。不得為絕對路徑。不得包含路徑元素「..」。不得以字串「..」開頭。
additionalVolumes[].projected.sources[].secret.name
string
選填
參照對象的名稱。詳情請參閱: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].projected.sources[].secret.optional
boolean
選填
選填欄位,指定是否必須定義密碼或其金鑰
additionalVolumes[].projected.sources[].serviceAccountToken
object
選填
serviceAccountToken 是要投影的 serviceAccountToken 資料相關資訊
additionalVolumes[].projected.sources[].serviceAccountToken.audience
string
選填
audience 是權杖的目標對象。權杖接收者必須使用權杖目標對象中指定的 ID 識別自身,否則應拒絕權杖。目標對象預設為 apiserver 的 ID。
additionalVolumes[].projected.sources[].serviceAccountToken.expirationSeconds
integer
選填
expirationSeconds 是服務帳戶權杖要求的有效時間長度。當權杖即將到期時,kubelet 磁碟區外掛程式會主動輪替服務帳戶權杖。如果權杖存在時間超過存留時間的 80%,或超過 24 小時,kubelet 就會開始嘗試輪替權杖。預設值為 1 小時,且至少須為 10 分鐘。
additionalVolumes[].projected.sources[].serviceAccountToken.path
string
必填
path 是相對於掛接點的路徑,用於將權杖投影至檔案。
additionalVolumes[].quobyte
object
選填
quobyte 代表主機上的 Quobyte 掛接,與 Pod 的生命週期相同
additionalVolumes[].quobyte.group
string
選填
group to map volume access to Default is no group
additionalVolumes[].quobyte.readOnly
boolean
選填
這裡的 readOnly 會強制以唯讀權限掛接 Quobyte 磁碟區。預設值為 false。
additionalVolumes[].quobyte.registry
string
必填
registry 代表單一或多個 Quobyte 登錄服務,以字串形式指定為 host:port 配對 (多個項目以半形逗號分隔),做為磁碟區的中央登錄
additionalVolumes[].quobyte.tenant
string
選填
在 Backend Used 中擁有指定 Quobyte 磁碟區的租戶。使用動態佈建的 Quobyte 磁碟區時,值是由外掛程式設定
additionalVolumes[].quobyte.user
string
選填
使用者,將磁碟區存取權對應至預設為 serviceaccount 使用者
additionalVolumes[].quobyte.volume
string
必填
volume 是字串,會依名稱參照已建立的 Quobyte 磁碟區。
additionalVolumes[].rbd
object
選填
rbd 代表主機上的 Rados 區塊裝置掛接,與 Pod 共用生命週期。詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md
additionalVolumes[].rbd.fsType
string
選填
fsType 是要掛接的磁碟區檔案系統類型。提示:請確認主機作業系統支援檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#rbd
additionalVolumes[].rbd.image
string
必填
image 是 rados 映像檔名稱。詳情請參閱: https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.keyring
string
選填
keyring 是 RBDUser 的金鑰環路徑。 預設為 /etc/ceph/keyring。詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.monitors
list (string)
必填
monitors 是 Ceph 監視器的集合。 詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.monitors[]
string
選填
additionalVolumes[].rbd.pool
string
選填
pool 是 rados 集區名稱。預設值為 rbd。 詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.readOnly
boolean
選填
這裡的 readOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。預設值為 false。詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.secretRef
object
選填
secretRef 是 RBDUser 驗證密鑰的名稱。如果提供,則會覆寫金鑰環。預設值為 nil。詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].rbd.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].rbd.user
string
選填
user 是 rados 使用者名稱。預設值為「admin」。 詳情請參閱:https://examples.k8s.io/volumes/rbd/README.md#how-to-use-it
additionalVolumes[].scaleIO
object
選填
scaleIO 代表附加並掛接在 Kubernetes 節點上的 ScaleIO 永久磁碟區。
additionalVolumes[].scaleIO.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。預設值為「xfs」。
additionalVolumes[].scaleIO.gateway
string
必填
gateway 是 ScaleIO API Gateway 的主機位址。
additionalVolumes[].scaleIO.protectionDomain
string
選填
protectionDomain 是已設定儲存空間的 ScaleIO 保護網域名稱。
additionalVolumes[].scaleIO.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。ReadOnly here will force the ReadOnly setting in VolumeMounts.
additionalVolumes[].scaleIO.secretRef
object
必填
secretRef 參照 ScaleIO 使用者的密鑰和其他機密資訊。如果未提供這項資訊,登入作業將會失敗。
additionalVolumes[].scaleIO.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].scaleIO.sslEnabled
boolean
選填
sslEnabled 旗標:啟用/停用與閘道的 SSL 通訊,預設為 false
additionalVolumes[].scaleIO.storageMode
string
選填
storageMode 指出磁碟區的儲存空間應為 ThickProvisioned 或 ThinProvisioned。預設值為 ThinProvisioned。
additionalVolumes[].scaleIO.storagePool
string
選填
storagePool 是與保護網域相關聯的 ScaleIO 儲存空間集區。
additionalVolumes[].scaleIO.system
string
必填
system 是在 ScaleIO 中設定的儲存系統名稱。
additionalVolumes[].scaleIO.volumeName
TYPE
選填
volumeName 是在 ScaleIO 系統中建立的磁碟區名稱,與這個磁碟區來源相關聯。
additionalVolumes[].secret
object
選填
secret 代表應填入這個磁碟區的密鑰。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#secret
additionalVolumes[].secret.defaultMode
integer
選填
defaultMode 為選用:預設用來設定所建立檔案權限的模式位元。必須是介於 0000 和 0777 之間的八進位值,或介於 0 和 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元必須使用十進位值。預設值為 0644。路徑中的目錄不受這項設定影響。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 衝突,導致設定其他模式位元。
additionalVolumes[].secret.items
list (object)
選填
items 如果未指定,所參照 Secret 的資料欄位中,每個鍵/值組合都會投影到磁碟區,成為一個檔案,其名稱為鍵,內容為值。如果指定,列出的金鑰會投射到指定路徑,未列出的金鑰則不會顯示。如果指定的金鑰不存在於 Secret 中,除非標示為選用,否則磁碟區設定會發生錯誤。路徑必須是相對路徑,且不得包含「..」路徑或以「..」開頭。
additionalVolumes[].secret.items[]
object
選填
將字串鍵對應至磁碟區內的路徑。
additionalVolumes[].secret.items[].key
string
必填
key 是專案的金鑰。
additionalVolumes[].secret.items[].mode
integer
選填
mode 為選用:用於設定這個檔案權限的模式位元。必須是介於 0000 和 0777 之間的八進位值,或介於 0 和 511 之間的十進位值。YAML 接受八進位和十進位值,JSON 則要求模式位元使用十進位值。如未指定,則會使用磁碟區 defaultMode。這可能會與影響檔案模式的其他選項 (例如 fsGroup) 發生衝突,導致設定其他模式位元。
additionalVolumes[].secret.items[].path
string
必填
path 是要將金鑰對應至的檔案相對路徑。不得為絕對路徑。 不得包含路徑元素「..」。不得以字串「..」開頭。
additionalVolumes[].secret.optional
boolean
選填
選用欄位,指定是否必須定義 Secret 或其金鑰
additionalVolumes[].secret.secretName
string
選填
secretName 是要使用的 Pod 命名空間中密鑰的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/storage/volumes#secret
additionalVolumes[].storageos
object
選填
storageOS 代表附加至 Kubernetes 節點並掛接的 storageOS 磁碟區。
additionalVolumes[].storageos.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。
additionalVolumes[].storageos.readOnly
boolean
選填
readOnly 預設為 false (讀取/寫入)。這裡的 ReadOnly 會強制執行 VolumeMounts 中的 ReadOnly 設定。
additionalVolumes[].storageos.secretRef
object
選填
secretRef 會指定用於取得 StorageOS API 憑證的密鑰。如未指定,系統會嘗試使用預設值。
additionalVolumes[].storageos.secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
additionalVolumes[].storageos.volumeName
string
選填
volumeName 是指人類可讀的 StorageOS 磁碟區名稱。磁碟區名稱僅在命名空間內不得重複。
additionalVolumes[].storageos.volumeNamespace
string
選填
volumeNamespace 會指定 StorageOS 內磁碟區的範圍。如未指定命名空間,則會使用 Pod 的命名空間。這可讓 Kubernetes 名稱範圍在 StorageOS 中鏡像,以便更緊密地整合。將 VolumeName 設為任何名稱,即可覆寫預設行為。如果您未在 StorageOS 中使用命名空間,請設為「default」。系統會建立 StorageOS 中不存在的命名空間。
additionalVolumes[].vsphereVolume
object
選填
vsphereVolume 代表附加至 kubelet 主機並掛接的 vSphere 磁碟區
additionalVolumes[].vsphereVolume.fsType
string
選填
fsType 是要掛接的檔案系統類型。必須是主機作業系統支援的檔案系統類型。例如:「ext4」、「xfs」、「ntfs」。如未指定,則會隱含推論為「ext4」。
additionalVolumes[].vsphereVolume.storagePolicyID
string
選填
storagePolicyID 是與 StoragePolicyName 相關聯的儲存空間政策管理 (SPBM) 設定檔 ID。
additionalVolumes[].vsphereVolume.storagePolicyName
string
選填
storagePolicyName 是儲存空間政策管理 (SPBM) 設定檔名稱。
additionalVolumes[].vsphereVolume.volumePath
string
必填
volumePath 是用於識別 vSphere 磁碟區 vmdk 的路徑
sidecars
list (object)
選填
Sidecar 會指定要插入資料庫 Pod 的邊車容器清單。詳情請參閱 https://kubernetes.io/docs/concepts/containers/。
sidecars[]
object
選填
您想在 Pod 中執行的單一應用程式容器。
sidecars[].args
list (string)
選填
進入點的引數。如未提供,則會使用容器映像檔的 CMD。變數參照 $(VAR_NAME) 會使用容器的環境展開。如果無法解析變數,輸入字串中的參照將維持不變。Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax:; on other words, "$$(VAR_NAME)」會產生字串常值「$(VAR_NAME)」。無論變數是否存在,逸出參照都不會展開。無法更新。詳情請參閱:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
sidecars[].args[]
string
選填
sidecars[].command
list (string)
選填
進入點陣列。不在殼層中執行。 如未提供,系統會使用容器映像檔的 ENTRYPOINT。 變數參照 $(VAR_NAME) 會使用容器的環境展開。如果無法解析變數,輸入字串中的參照就不會變更。Double $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax; in other words, "$$(VAR_NAME)」會產生字串常值「$(VAR_NAME)」。 無論變數是否存在,逸出參照都不會展開。無法更新。詳情請參閱: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
sidecars[].command[]
string
選填
sidecars[].env
list (object)
選填
要在容器中設定的環境變數清單。無法更新。
sidecars[].env[]
object
選填
EnvVar 代表容器中的環境變數。
sidecars[].env[].name
string
必填
環境變數的名稱。必須是 C_IDENTIFIER。
sidecars[].env[].value
string
選填
系統會使用容器中先前定義的環境變數和任何服務環境變數,展開變數參照 $(VAR_NAME)。如果無法解析變數,輸入字串中的參照將維持不變。雙 $$ are reduced to a single $, which allows for escaping the $(VAR_NAME) syntax; in other words, "$$(VAR_NAME)" 會產生字串常值 "$(VAR_NAME)"。無論變數是否存在,逸出參照一律不會展開。預設為「""」。
sidecars[].env[].valueFrom
object
選填
環境變數值的來源。如果值不是空白,就無法使用。
sidecars[].env[].valueFrom.configMapKeyRef
object
選填
選取 ConfigMap 的金鑰。
sidecars[].env[].valueFrom.configMapKeyRef.key
string
必填
要選取的按鍵。
sidecars[].env[].valueFrom.configMapKeyRef.name
string
選填
參照對象的名稱。詳情請參閱: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
sidecars[].env[].valueFrom.configMapKeyRef.optional
boolean
選填
指定是否必須定義 ConfigMap 或其金鑰
sidecars[].env[].valueFrom.fieldRef
object
選填
選取 Pod 的欄位:支援 metadata.name、metadata.namespace、metadata.labels['<KEY>']、metadata.annotations['<KEY>']、spec.nodeName、spec.serviceAccountName、status.hostIP、status.podIP、status.podIPs。
sidecars[].env[].valueFrom.fieldRef.apiVersion
string
選填
FieldPath 的結構定義版本,預設為「v1」。
sidecars[].env[].valueFrom.fieldRef.fieldPath
string
必填
在指定 API 版本中選取的欄位路徑。
sidecars[].env[].valueFrom.resourceFieldRef
object
選填
選取容器的資源:僅支援資源限制和要求 (limits.cpu、limits.memory、limits.ephemeral-storage、requests.cpu、requests.memory 和 requests.ephemeral-storage)。
sidecars[].env[].valueFrom.resourceFieldRef.containerName
string
選填
容器名稱:磁碟區為必填,環境變數則為選填
sidecars[].env[].valueFrom.resourceFieldRef.divisor
integer or string
選填
指定公開資源的輸出格式,預設為「1」
sidecars[].env[].valueFrom.resourceFieldRef.resource
string
必填
必要:要選取的資源
sidecars[].env[].valueFrom.secretKeyRef
object
選填
選取 Pod 命名空間中的 Secret 金鑰
sidecars[].env[].valueFrom.secretKeyRef.key
string
必填
要選取的 Secret 鍵。必須是有效的 Secret 金鑰。
sidecars[].env[].valueFrom.secretKeyRef.name
string
選填
參照對象的名稱。詳情請參閱: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
sidecars[].env[].valueFrom.secretKeyRef.optional
boolean
選填
指定是否必須定義 Secret 或其金鑰
sidecars[].envFrom
list (object)
選填
用來填入容器環境變數的來源清單。來源中定義的鍵必須是 C_IDENTIFIER。容器啟動時,所有無效的金鑰都會回報為事件。如果某個鍵存在於多個來源,系統會優先採用與最後一個來源相關聯的值。如果 Env 定義的值含有重複的鍵,系統會優先採用該值。無法更新。
sidecars[].envFrom[]
object
選填
EnvFromSource 代表一組 ConfigMap 的來源
sidecars[].envFrom[].configMapRef
object
選填
要選取的 ConfigMap
sidecars[].envFrom[].configMapRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
sidecars[].envFrom[].configMapRef.optional
boolean
選填
指定是否必須定義 ConfigMap
sidecars[].envFrom[].prefix
string
選填
選用 ID,會加在 ConfigMap 中每個金鑰的前面。必須是 C_IDENTIFIER。
sidecars[].envFrom[].secretRef
object
選填
可選取的 Secret
sidecars[].envFrom[].secretRef.name
string
選填
參照對象的名稱。詳情請參閱:https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
sidecars[].envFrom[].secretRef.optional
boolean
選填
指定是否必須定義 Secret
sidecars[].image
string
選填
容器映像檔名稱。詳情請參閱 https://kubernetes.io/docs/concepts/containers/images 這個欄位為選填,可讓較高層級的設定管理功能,在工作負載控制器 (例如 Deployments 和 StatefulSets) 中,預設或覆寫容器映像檔。
sidecars[].imagePullPolicy
string
選填
映像檔提取政策。其中一個值為 Always、Never 或 IfNotPresent。 如果指定 :{{ .Chart.Version }} 標記,則預設為 Always,否則為 IfNotPresent。無法更新。詳情請參閱:https://kubernetes.io/docs/concepts/containers/images#updating-images
sidecars[].lifecycle
object
選填
管理系統應對容器生命週期事件採取的動作。無法更新。
sidecars[].lifecycle.postStart
object
選填
建立容器後,系統會立即呼叫 PostStart。如果處理常式失敗,容器會終止,並根據重新啟動政策重新啟動。在掛鉤完成前,容器的其他管理作業會遭到封鎖。詳情請參閱:https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
sidecars[].lifecycle.postStart.exec
object
選填
Exec 指定要執行的動作。
sidecars[].lifecycle.postStart.exec.command
list (string)
選填
Command 是要在容器內執行的指令列,指令的目前使用的目錄是容器檔案系統中的根目錄 (「/」)。指令會執行,但不會在殼層中執行,因此標準殼層指令 (「|」等) 無法運作。如要使用殼層,您必須明確呼叫該殼層。如果結束狀態為 0,則視為運作中/健康狀態良好,不為零則視為健康狀態不良。
sidecars[].lifecycle.postStart.exec.command[]
string
選填
sidecars[].lifecycle.postStart.httpGet
object
選填
HTTPGet 會指定要執行的 HTTP 要求。
sidecars[].lifecycle.postStart.httpGet.host
string
選填
要連線的主機名稱,預設為 Pod IP。您可能想改為在 httpHeaders 中設定「Host」。
sidecars[].lifecycle.postStart.httpGet.httpHeaders
list (object)
選填
要在要求中設定的自訂標頭。 HTTP 允許重複的標頭。
sidecars[].lifecycle.postStart.httpGet.httpHeaders[]
object
選填
HTTPHeader 說明要在 HTTP 探測中使用的自訂標頭
sidecars[].lifecycle.postStart.httpGet.httpHeaders[].name
string
必填
標頭欄位名稱。輸出時會進行正規化,因此大小寫不同的名稱會視為相同標頭。
sidecars[].lifecycle.postStart.httpGet.httpHeaders[].value
string
必填
標頭欄位值
sidecars[].lifecycle.postStart.httpGet.path
string
選填
存取 HTTP 伺服器的路徑。
sidecars[].lifecycle.postStart.httpGet.port
integer or string
必填
要存取容器的通訊埠名稱或號碼。數字必須介於 1 至 65535 之間。名稱必須是 IANA_SVC_NAME。
sidecars[].lifecycle.postStart.httpGet.scheme
string
選填
連線至主機時要使用的配置。預設為 HTTP。
sidecars[].lifecycle.postStart.tcpSocket
object
選填
已淘汰,系統「不」支援 TCPSocket 做為 LifecycleHandler,但會保留這項功能,以確保回溯相容性。系統不會驗證這個欄位,且指定 TCP 處理常式時,生命週期掛鉤會在執行階段失敗。
sidecars[].lifecycle.postStart.tcpSocket.host
string
選填
選用:要連線的主機名稱,預設為 Pod IP。
sidecars[].lifecycle.postStart.tcpSocket.port
integer or string
必填
要存取容器的通訊埠號碼或名稱。數字必須介於 1 至 65535 之間。名稱必須是 IANA_SVC_NAME。
sidecars[].lifecycle.preStop
object
選填
PreStop 會在容器因 API 要求或管理事件 (例如:liveness/啟動探測失敗、先占和資源爭用) 而終止前立即呼叫。如果容器當機或結束,系統就不會呼叫處理常式。Pod 的終止寬限期倒數計時會在 PreStop 鉤子執行前開始。無論處理常式的結果為何,容器最終都會在 Pod 的終止寬限期內終止 (除非因終止器而延遲)。容器的其他管理作業會暫停,直到掛鉤完成或終止寬限期結束。詳情請參閱:https://kubernetes.io/docs/concepts/containers/container-lifecycle-hooks/#container-hooks
sidecars[].lifecycle.preStop.exec
object
選填
Exec 指定要執行的動作。
sidecars[].lifecycle.preStop.exec.command
list (string)
選填
Command 是要在容器內執行的指令列,指令的目前使用的目錄是容器檔案系統中的根目錄 (「/」)。指令只會執行,不會在殼層中執行,因此傳統殼層指令 (「|」等) 無法運作。如要使用殼層,您必須明確呼叫該殼層。如果結束狀態為 0,則視為運作中/健康狀態良好,不為零則視為健康狀態不良。
sidecars[].lifecycle.preStop.exec.command[]
string
選填
sidecars[].lifecycle.preStop.httpGet
object
選填
HTTPGet 會指定要執行的 HTTP 要求。
sidecars[].lifecycle.preStop.httpGet.host
string
選填
要連線的主機名稱,預設為 Pod IP。您可能想改為在 httpHeaders 中設定「Host」。
sidecars[].lifecycle.preStop.httpGet.httpHeaders
list (object)
選填
要在要求中設定的自訂標頭。 HTTP 允許重複的標頭。
sidecars[].lifecycle.preStop.httpGet.httpHeaders[]
object
選填
HTTPHeader 說明要在 HTTP 探測中使用的自訂標頭
sidecars[].lifecycle.preStop.httpGet.httpHeaders[].name
string
必填
標頭欄位名稱。輸出時會進行正規化,因此大小寫不同的名稱會視為相同標頭。
sidecars[].lifecycle.preStop.httpGet.httpHeaders[].value
string
必填
標頭欄位值
sidecars[].lifecycle.preStop.httpGet.path
string
選填
存取 HTTP 伺服器的路徑。
sidecars[].lifecycle.preStop.httpGet.port
integer or string
必填
要存取容器的通訊埠名稱或號碼。數字必須介於 1 至 65535 之間。名稱必須是 IANA_SVC_NAME。
sidecars[].lifecycle.preStop.httpGet.scheme
string
選填
連線至主機時要使用的配置。預設為 HTTP。
sidecars[].lifecycle.preStop.tcpSocket
object
選填
已淘汰,系統「不」支援 TCPSocket 做為 LifecycleHandler,但會保留這項功能,以確保回溯相容性。系統不會驗證這個欄位,且指定 TCP 處理常式時,生命週期掛鉤會在執行階段失敗。
sidecars[].lifecycle.preStop.tcpSocket.host
string
選填
選用:要連線的主機名稱,預設為 Pod IP。
sidecars[].lifecycle.preStop.tcpSocket.port
integer or string
必填
要存取容器的通訊埠號碼或名稱。數字必須介於 1 至 65535 之間。名稱必須是 IANA_SVC_NAME。
sidecars[].livenessProbe
object
選填
定期探測容器有效性。如果探測失敗,容器就會重新啟動。無法更新。詳情請參閱:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].livenessProbe.exec
object
選填
Exec 指定要執行的動作。
sidecars[].livenessProbe.exec.command
list (string)
選填
指令是指要在容器中執行的指令列,指令的目前使用的目錄是容器檔案系統中的根目錄 (「/」)。指令會執行,但不會在殼層中執行,因此標準殼層指令 (「|」等) 無法運作。如要使用殼層,您必須明確呼叫該殼層。系統會將結束狀態為 0 視為正常/健康,非零則為不健康。
sidecars[].livenessProbe.exec.command[]
string
選填
sidecars[].livenessProbe.failureThreshold
integer
選填
探測成功後,至少要連續失敗幾次,才算失敗。預設值為 3。值不得小於 1。
sidecars[].livenessProbe.grpc
object
選填
GRPC 指定涉及 GRPC 通訊埠的操作。
sidecars[].livenessProbe.grpc.port
integer
必填
gRPC 服務的通訊埠編號。數字必須介於 1 至 65535 之間。
sidecars[].livenessProbe.grpc.service
string
選填
「服務」是指要放在 gRPC HealthCheckRequest 中的服務名稱 (請參閱 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。\n 如未指定,則預設行為由 gRPC 定義。
sidecars[].livenessProbe.httpGet
object
選填
HTTPGet 會指定要執行的 HTTP 要求。
sidecars[].livenessProbe.httpGet.host
string
選填
要連線的主機名稱,預設為 Pod IP。您可能想改為在 httpHeaders 中設定「Host」。
sidecars[].livenessProbe.httpGet.httpHeaders
list (object)
選填
在要求中設定的自訂標頭。HTTP 允許重複的標頭。
sidecars[].livenessProbe.httpGet.httpHeaders[]
object
選填
HTTPHeader 說明要在 HTTP 探測中使用的自訂標頭
sidecars[].livenessProbe.httpGet.httpHeaders[].name
string
必填
標頭欄位名稱。輸出時會進行正規化,因此大小寫不同的名稱會視為相同標頭。
sidecars[].livenessProbe.httpGet.httpHeaders[].value
string
必填
標頭欄位值
sidecars[].livenessProbe.httpGet.path
string
選填
存取 HTTP 伺服器的路徑。
sidecars[].livenessProbe.httpGet.port
integer or string
必填
容器上要存取的通訊埠名稱或編號。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].livenessProbe.httpGet.scheme
string
選填
連線至主機時要使用的配置。 預設為 HTTP。
sidecars[].livenessProbe.initialDelaySeconds
integer
選填
從容器啟動後到執行有效性探測之前,這段時間間隔的秒數。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].livenessProbe.periodSeconds
integer
選填
執行探測作業的頻率 (以秒為單位)。 預設為 10 秒。值不得小於 1。
sidecars[].livenessProbe.successThreshold
integer
選填
探測失敗後,至少要連續成功幾次,才算成功。預設值為 1。liveness 和 startup 必須為 1。值不得小於 1。
sidecars[].livenessProbe.tcpSocket
object
選填
TCPSocket 會指定涉及 TCP 通訊埠的動作。
sidecars[].livenessProbe.tcpSocket.host
string
選填
選用:要連線的主機名稱,預設為 Pod IP。
sidecars[].livenessProbe.tcpSocket.port
integer or string
必填
要存取容器的通訊埠號碼或名稱。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].livenessProbe.terminationGracePeriodSeconds
integer
選填
Pod 在探測失敗後需要正常終止的秒數 (選填)。寬限期是指 Pod 中執行的程序收到終止信號後,到程序因收到終止信號而強制停止的這段時間,以秒為單位。請將這個值設為超過程序預期的清除時間。如果這個值為 nil,系統會使用 Pod 的 terminationGracePeriodSeconds。否則,這個值會覆寫 Pod 規格提供的值。值必須為非負整數。值為零表示立即停止使用終止訊號 (沒有關閉的機會)。這是 Beta 版欄位,必須啟用 ProbeTerminationGracePeriod feature gate。最小值為 1。如未設定,則會使用 spec.terminationGracePeriodSeconds。
sidecars[].livenessProbe.timeoutSeconds
integer
選填
這個秒數過後,探測作業就會逾時。預設為 1 秒。值不得小於 1。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].name
string
必填
指定為 DNS_LABEL 的容器名稱。 Pod 中的每個容器都必須有不重複的名稱 (DNS_LABEL)。 無法更新。
sidecars[].ports
list (object)
選填
容器要對外公開的通訊埠清單,在此處「不」指定通訊埠「不會」阻止該通訊埠公開。在容器內監聽預設「0.0.0.0」位址的任何通訊埠,都可以透過網路存取。使用策略性合併修補程式修改這個陣列,可能會損毀資料。詳情請參閱 https://github.com/kubernetes/kubernetes/issues/108255。 無法更新。
sidecars[].ports[]
object
選填
ContainerPort 代表單一容器中的網路通訊埠。
sidecars[].ports[].containerPort
integer
必填
要在 Pod IP 位址上公開的通訊埠數量。這必須是有效的通訊埠編號,0 < x < 65536。
sidecars[].ports[].hostIP
string
選填
要將外部通訊埠繫結至哪個主機 IP。
sidecars[].ports[].hostPort
integer
選填
要在主機上公開的通訊埠號碼。如要指定,必須是有效的通訊埠編號,介於 0 至 65536 之間。如果指定 HostNetwork,這項設定必須與 ContainerPort 相符。大多數容器都不需要這個項目。
sidecars[].ports[].name
string
選填
如要指定,必須是 IANA_SVC_NAME,且在 Pod 中不得重複。Pod 中的每個命名通訊埠都必須有不重複的名稱。服務可參照的通訊埠名稱。
sidecars[].ports[].protocol
string
選填

預設值:TCP

通訊埠的通訊協定。必須是 UDP、TCP 或 SCTP。 預設為「TCP」。
sidecars[].readinessProbe
object
選填
定期探測容器服務是否已準備就緒。 如果探查失敗,系統會從服務端點移除容器。無法更新。詳情請參閱:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].readinessProbe.exec
object
選填
Exec 指定要執行的動作。
sidecars[].readinessProbe.exec.command
list (string)
選填
指令是指要在容器中執行的指令列,指令的目前使用的目錄是容器檔案系統中的根目錄 (「/」)。指令會執行,但不會在殼層中執行,因此標準殼層指令 (「|」等) 無法運作。如要使用殼層,您必須明確呼叫該殼層。結束狀態為 0 時,系統會視為運作中/健康狀態良好,非零則代表健康狀態不良。
sidecars[].readinessProbe.exec.command[]
string
選填
sidecars[].readinessProbe.failureThreshold
integer
選填
探測成功後,至少要連續失敗幾次,才算失敗。預設值為 3。值不得小於 1。
sidecars[].readinessProbe.grpc
object
選填
GRPC 指定涉及 GRPC 通訊埠的操作。
sidecars[].readinessProbe.grpc.port
integer
必填
gRPC 服務的通訊埠編號。數字必須介於 1 至 65535 之間。
sidecars[].readinessProbe.grpc.service
string
選填
「服務」是指要放在 gRPC HealthCheckRequest 中的服務名稱 (請參閱 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。\n 如未指定,則預設行為由 gRPC 定義。
sidecars[].readinessProbe.httpGet
object
選填
HTTPGet 會指定要執行的 HTTP 要求。
sidecars[].readinessProbe.httpGet.host
string
選填
要連線的主機名稱,預設為 Pod IP。您可能想改為在 httpHeaders 中設定「Host」。
sidecars[].readinessProbe.httpGet.httpHeaders
list (object)
選填
在要求中設定的自訂標頭。HTTP 允許重複的標頭。
sidecars[].readinessProbe.httpGet.httpHeaders[]
object
選填
HTTPHeader 說明要在 HTTP 探測中使用的自訂標頭
sidecars[].readinessProbe.httpGet.httpHeaders[].name
string
必填
標頭欄位名稱。輸出時會進行正規化,因此大小寫不同的名稱會視為相同標頭。
sidecars[].readinessProbe.httpGet.httpHeaders[].value
string
必填
標頭欄位值
sidecars[].readinessProbe.httpGet.path
string
選填
存取 HTTP 伺服器的路徑。
sidecars[].readinessProbe.httpGet.port
integer or string
必填
容器上要存取的通訊埠名稱或編號。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].readinessProbe.httpGet.scheme
string
選填
連線至主機時要使用的配置。 預設為 HTTP。
sidecars[].readinessProbe.initialDelaySeconds
integer
選填
從容器啟動後到執行有效性探測之前,這段時間間隔的秒數。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].readinessProbe.periodSeconds
integer
選填
執行探測作業的頻率 (以秒為單位)。 預設為 10 秒。值不得小於 1。
sidecars[].readinessProbe.successThreshold
integer
選填
探測失敗後,至少要連續成功幾次,才算成功。預設值為 1。liveness 和 startup 必須為 1。值不得小於 1。
sidecars[].readinessProbe.tcpSocket
object
選填
TCPSocket 會指定涉及 TCP 通訊埠的動作。
sidecars[].readinessProbe.tcpSocket.host
string
選填
選用:要連線的主機名稱,預設為 Pod IP。
sidecars[].readinessProbe.tcpSocket.port
integer or string
必填
要存取容器的通訊埠號碼或名稱。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].readinessProbe.terminationGracePeriodSeconds
integer
選填
Pod 在探測失敗後需要正常終止的秒數 (選填)。寬限期是指 Pod 中執行的程序收到終止信號後,到程序因收到終止信號而強制停止的這段時間,以秒為單位。請將這個值設為超過程序預期的清除時間。如果這個值為 nil,系統會使用 Pod 的 terminationGracePeriodSeconds。否則,這個值會覆寫 Pod 規格提供的值。值必須為非負整數。值為零表示立即停止使用終止訊號 (沒有關閉的機會)。這是 Beta 版欄位,必須啟用 ProbeTerminationGracePeriod feature gate。最小值為 1。如未設定,則會使用 spec.terminationGracePeriodSeconds。
sidecars[].readinessProbe.timeoutSeconds
integer
選填
這個秒數過後,探測作業就會逾時。預設值為 1 秒。值不得小於 1。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].resizePolicy
list (object)
選填
容器的資源大小調整政策。
sidecars[].resizePolicy[]
object
選填
ContainerResizePolicy 代表容器的資源大小調整政策。
sidecars[].resizePolicy[].resourceName
string
必填
要套用這項資源大小調整政策的資源名稱。支援的值:cpu、memory。
sidecars[].resizePolicy[].restartPolicy
string
必填
調整指定資源大小時要套用的重新啟動政策。如未指定,則預設為 NotRequired。
sidecars[].resources
object
選填
這個容器所需的運算資源。無法更新。詳情請參閱:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
sidecars[].resources.claims
list (object)
選填
Claims 會列出 spec.resourceClaims 中定義的資源名稱,這些資源是由這個容器使用。\n 這是 Alpha 版欄位,需要啟用 DynamicResourceAllocation 功能閘道。\n 這個欄位無法變更。只能為容器設定。
sidecars[].resources.claims[]
object
選填
ResourceClaim 會參照 PodSpec.ResourceClaims 中的一個項目。
sidecars[].resources.claims[].name
string
必填
名稱必須與使用這個欄位的 Pod 中 pod.spec.resourceClaims 的其中一個項目名稱相符。讓容器可以使用該資源。
sidecars[].resources.limits
integer or string
選填
限制說明允許的運算資源上限。詳情請參閱:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
sidecars[].resources.requests
integer or string
選填
「要求」是指所需的最低運算資源量。如果省略容器的「Requests」,系統會預設為「Limits」(如果已明確指定),否則會預設為實作定義的值。要求不得超過限制。詳情請參閱:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/
sidecars[].restartPolicy
string
選填
RestartPolicy 定義 Pod 中個別容器的重新啟動行為。這個欄位只能為 init 容器設定,且唯一允許的值是「Always」。如果是非 init 容器,或未指定這個欄位,系統會根據 Pod 的重新啟動政策和容器類型,定義重新啟動行為。如果將 init 容器的 RestartPolicy 設為「Always」,會產生下列效果:這個 init 容器會在結束時持續重新啟動,直到所有一般容器都終止為止。所有一般容器都完成後,restartPolicy 為「Always」的所有 init 容器都會關閉。這個生命週期與一般 init 容器不同,通常稱為「sidecar」容器。雖然這個 init 容器仍會在 init 容器序列中啟動,但不會等待容器完成,而是直接繼續執行下一個 init 容器。而是在這個 init 容器啟動後,或任何 startupProbe 成功完成後,下一個 init 容器就會立即啟動。
sidecars[].securityContext
object
選填
SecurityContext 會定義容器應使用的安全性選項。如果已設定,SecurityContext 的欄位會覆寫 PodSecurityContext 的對等欄位。詳情請參閱:https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
sidecars[].securityContext.allowPrivilegeEscalation
boolean
選填
AllowPrivilegeEscalation 可控管程序是否能取得比父項程序更多的權限。這個布林值會直接控制是否要在容器程序上設定 no_new_privs 旗標。當容器符合下列條件時,AllowPrivilegeEscalation 一律為 true:1) 以 Privileged 形式執行;2) 具有 CAP_SYS_ADMIN。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.capabilities
object
選填
執行容器時要新增/捨棄的功能。預設為容器執行階段授予的預設功能組合。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.capabilities.add
list (string)
選填
新增功能
sidecars[].securityContext.capabilities.add[]
string
選填
Capability 代表 POSIX 功能 type
sidecars[].securityContext.capabilities.drop
list (string)
選填
已移除的功能
sidecars[].securityContext.capabilities.drop[]
string
選填
Capability 代表 POSIX 功能 type
sidecars[].securityContext.privileged
boolean
選填
以特殊權限模式執行容器。特殊權限容器中的程序,基本上等同於主機上的根權限。預設值為 false。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.procMount
string
選填
procMount 代表要用於容器的 proc 掛接類型。預設值為 DefaultProcMount,會針對唯讀路徑和遮罩路徑使用容器執行階段預設值。這項功能需要啟用 ProcMountType 功能旗標。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.readOnlyRootFilesystem
boolean
選填
這個容器是否具有唯讀根檔案系統。預設值為 False。請注意,如果 spec.os.name 為 Windows,則無法設定這個欄位。
sidecars[].securityContext.runAsGroup
integer
選填
用於執行容器程序進入點的 GID。如未設定,則會使用執行階段預設值。也可以在 PodSecurityContext 中設定。如果同時在 SecurityContext 和 PodSecurityContext 中設定,系統會優先採用 SecurityContext 中指定的值。請注意,如果 spec.os.name 是 Windows,就無法設定這個欄位。
sidecars[].securityContext.runAsNonRoot
boolean
選填
表示容器必須以非超級使用者身分執行。如果為 true,Kubelet 會在執行階段驗證映像檔,確保映像檔不會以 UID 0 (根目錄) 執行,如果會,則無法啟動容器。如果未設定或設為 false,系統就不會執行這類驗證。也可以在 PodSecurityContext 中設定。如果同時在 SecurityContext 和 PodSecurityContext 中設定,則以 SecurityContext 中指定的值為準。
sidecars[].securityContext.runAsUser
integer
選填
用於執行容器程序進入點的 UID。如未指定,則預設為映像檔中繼資料中指定的使用者。也可以在 PodSecurityContext 中設定。如果同時在 SecurityContext 和 PodSecurityContext 中設定,則以 SecurityContext 中指定的值為準。請注意,如果 spec.os.name 為 Windows,則無法設定這個欄位。
sidecars[].securityContext.seLinuxOptions
object
選填
要套用至容器的 SELinux 情境。如未指定,容器執行階段會為每個容器分配隨機 SELinux 內容。也可以在 PodSecurityContext 中設定。如果同時在 SecurityContext 和 PodSecurityContext 中設定,系統會優先採用 SecurityContext 中指定的值。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.seLinuxOptions.level
string
選填
Level 是套用至容器的 SELinux 層級標籤。
sidecars[].securityContext.seLinuxOptions.role
string
選填
角色是套用至容器的 SELinux 角色標籤。
sidecars[].securityContext.seLinuxOptions.type
string
選填
類型是適用於容器的 SELinux 類型標籤。
sidecars[].securityContext.seLinuxOptions.user
string
選填
使用者是套用至容器的 SELinux 使用者標籤。
sidecars[].securityContext.seccompProfile
object
選填
這個容器要使用的 seccomp 選項。如果 Pod 和容器層級都提供 seccomp 選項,容器選項會覆寫 Pod 選項。請注意,如果 spec.os.name 為 windows,則無法設定這個欄位。
sidecars[].securityContext.seccompProfile.localhostProfile
string
選填
localhostProfile 表示應使用節點檔案中定義的設定檔。節點上必須預先設定設定檔,才能運作。必須是相對於 kubelet 設定的 seccomp 設定檔位置的遞減路徑。如果類型為「Localhost」,則必須設定。 不得為任何其他類型設定。
sidecars[].securityContext.seccompProfile.type
string
必填
type 則會指出要套用哪種 seccomp 設定檔。有效選項如下:\n Localhost - 應使用節點檔案中定義的設定檔。RuntimeDefault:應使用容器執行階段預設設定檔。Unconfined:不應套用任何設定檔。
sidecars[].securityContext.windowsOptions
object
選填
Windows 專屬設定會套用至所有容器。如未指定,系統會使用 PodSecurityContext 中的選項。如果同時在 SecurityContext 和 PodSecurityContext 中設定,系統會優先採用 SecurityContext 中指定的值。請注意,如果 spec.os.name 是 Linux,就無法設定這個欄位。
sidecars[].securityContext.windowsOptions.gmsaCredentialSpec
string
選填
GMSACredentialSpec 是 GMSA 許可 Webhook (https://github.com/kubernetes-sigs/windows-gmsa) 內嵌 GMSACredentialSpecName 欄位所命名 GMSA 憑證規格內容的位置。
sidecars[].securityContext.windowsOptions.gmsaCredentialSpecName
string
選填
GMSACredentialSpecName 是要使用的 GMSA 憑證規格名稱。
sidecars[].securityContext.windowsOptions.hostProcess
boolean
選填
HostProcess 會判斷容器是否應做為「主機程序」容器執行。Pod 的所有容器都必須具有相同的有效 HostProcess 值 (不得混用 HostProcess 容器和非 HostProcess 容器)。此外,如果 HostProcess 為 true,HostNetwork 也必須設為 true。
sidecars[].securityContext.windowsOptions.runAsUserName
string
選填
Windows 中的 UserName,用於執行容器程序的進入點。如未指定,則預設為映像檔中繼資料中指定的使用者。也可以在 PodSecurityContext 中設定。如果同時在 SecurityContext 和 PodSecurityContext 中設定,則以 SecurityContext 中指定的值為準。
sidecars[].startupProbe
object
選填
StartupProbe 表示 Pod 已成功初始化。如果指定了這項探測,系統會等到探測成功完成後,才執行其他探測。如果這項探測失敗,系統就會重新啟動 Pod,就像 livenessProbe 失敗一樣。在 Pod 生命週期開始時,載入資料或暖機快取可能需要較長時間,因此您可以使用這項功能,在 Pod 生命週期開始時提供與穩定狀態作業不同的探測參數。這項資訊無法更新。詳情請參閱:https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].startupProbe.exec
object
選填
Exec 指定要執行的動作。
sidecars[].startupProbe.exec.command
list (string)
選填
指令是指要在容器中執行的指令列,指令的目前使用的目錄是容器檔案系統中的根目錄 (「/」)。指令會執行,但不會在殼層中執行,因此標準殼層指令 (「|」等) 無法運作。如要使用殼層,您必須明確呼叫該殼層。系統會將結束狀態為 0 視為正常/健康,非零則為不健康。
sidecars[].startupProbe.exec.command[]
string
選填
sidecars[].startupProbe.failureThreshold
integer
選填
探測成功後,至少要連續失敗幾次,才算失敗。預設值為 3。值不得小於 1。
sidecars[].startupProbe.grpc
object
選填
GRPC 指定涉及 GRPC 通訊埠的操作。
sidecars[].startupProbe.grpc.port
integer
必填
gRPC 服務的通訊埠編號。數字必須介於 1 至 65535 之間。
sidecars[].startupProbe.grpc.service
string
選填
「服務」是指要放在 gRPC HealthCheckRequest 中的服務名稱 (請參閱 https://github.com/grpc/grpc/blob/master/doc/health-checking.md)。\n 如未指定,則預設行為由 gRPC 定義。
sidecars[].startupProbe.httpGet
object
選填
HTTPGet 會指定要執行的 HTTP 要求。
sidecars[].startupProbe.httpGet.host
string
選填
要連線的主機名稱,預設為 Pod IP。您可能想改為在 httpHeaders 中設定「Host」。
sidecars[].startupProbe.httpGet.httpHeaders
list (object)
選填
在要求中設定的自訂標頭。HTTP 允許重複的標頭。
sidecars[].startupProbe.httpGet.httpHeaders[]
object
選填
HTTPHeader 說明要在 HTTP 探測中使用的自訂標頭
sidecars[].startupProbe.httpGet.httpHeaders[].name
string
必填
標頭欄位名稱。輸出時會進行正規化,因此大小寫不同的名稱會視為相同標頭。
sidecars[].startupProbe.httpGet.httpHeaders[].value
string
必填
標頭欄位值
sidecars[].startupProbe.httpGet.path
string
選填
存取 HTTP 伺服器的路徑。
sidecars[].startupProbe.httpGet.port
integer or string
必填
容器上要存取的通訊埠名稱或編號。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].startupProbe.httpGet.scheme
string
選填
連線至主機時要使用的配置。 預設為 HTTP。
sidecars[].startupProbe.initialDelaySeconds
integer
選填
從容器啟動後到執行有效性探測之前,這段時間間隔的秒數。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].startupProbe.periodSeconds
integer
選填
執行探測作業的頻率 (以秒為單位)。 預設為 10 秒。值不得小於 1。
sidecars[].startupProbe.successThreshold
integer
選填
探測失敗後,至少要連續成功幾次,才算成功。預設值為 1。liveness 和 startup 必須為 1。值不得小於 1。
sidecars[].startupProbe.tcpSocket
object
選填
TCPSocket 會指定涉及 TCP 通訊埠的動作。
sidecars[].startupProbe.tcpSocket.host
string
選填
選用:要連線的主機名稱,預設為 Pod IP。
sidecars[].startupProbe.tcpSocket.port
integer or string
必填
要存取容器的通訊埠號碼或名稱。數字必須介於 1 至 65535 之間。 名稱必須是 IANA_SVC_NAME。
sidecars[].startupProbe.terminationGracePeriodSeconds
integer
選填
Pod 在探測失敗後需要正常終止的秒數 (選填)。寬限期是指 Pod 中執行的程序收到終止信號後,到程序因收到終止信號而強制停止的這段時間,以秒為單位。請將這個值設為超過程序預期的清除時間。如果這個值為 nil,系統會使用 Pod 的 terminationGracePeriodSeconds。否則,這個值會覆寫 Pod 規格提供的值。值必須為非負整數。值為零表示立即停止使用終止訊號 (沒有關閉的機會)。這是 Beta 版欄位,必須啟用 ProbeTerminationGracePeriod feature gate。最小值為 1。如未設定,則會使用 spec.terminationGracePeriodSeconds。
sidecars[].startupProbe.timeoutSeconds
integer
選填
這個秒數過後,探測作業就會逾時。預設值為 1 秒。值不得小於 1。詳情請參閱: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
sidecars[].stdin
boolean
選填
這個容器是否應在容器執行階段為 stdin 分配緩衝區。如未設定,從容器中的 stdin 讀取內容一律會導致 EOF。預設值為 false。
sidecars[].stdinOnce
boolean
選填
容器執行階段是否應在單一附加作業開啟 stdin 管道後關閉該管道。如果 stdin 為 true,stdin 串流會在多個附加工作階段中保持開啟。如果 stdinOnce 設為 true,stdin 會在容器啟動時開啟,並保持空白,直到第一個用戶端附加至 stdin 為止,然後保持開啟並接受資料,直到用戶端中斷連線為止,此時 stdin 會關閉並保持關閉,直到容器重新啟動為止。如果這個旗標為 false,從 stdin 讀取資料的容器程序永遠不會收到 EOF。預設值為 false
sidecars[].terminationMessagePath
string
選填
選填:要將容器的終止訊息寫入的檔案,在容器檔案系統中掛接的路徑。寫入的訊息應為簡短的最終狀態,例如斷言失敗訊息。如果超過 4096 位元組,節點會截斷該值。 所有容器的訊息總長度上限為 12 KB。預設為 /dev/termination-log。無法更新。
sidecars[].terminationMessagePolicy
string
選填
指出終止訊息的填入方式。檔案會使用 terminationMessagePath 的內容,在成功和失敗時填入容器狀態訊息。如果終止訊息檔案為空白,且容器因發生錯誤而結束,FallbackToLogsOnError 會使用容器記錄輸出內容的最後一個區塊。記錄輸出內容的上限為 2048 個位元組或 80 行,以較小者為準。預設為「File」。無法更新。
sidecars[].tty
boolean
選填
這個容器是否應自行分配 TTY,也需要將「stdin」設為 true。預設值為 false。
sidecars[].volumeDevices
list (object)
選填
volumeDevices 是容器要使用的區塊裝置清單。
sidecars[].volumeDevices[]
object
選填
volumeDevice 描述容器內原始區塊裝置的對應。
sidecars[].volumeDevices[].devicePath
string
必填
devicePath 是容器內的路徑,裝置會對應至該路徑。
sidecars[].volumeDevices[].name
string
必填
name 必須與 Pod 中的 persistentVolumeClaim 名稱相符
sidecars[].volumeMounts
list (object)
選填
要掛接至容器檔案系統的 Pod 磁碟區。無法更新。
sidecars[].volumeMounts[]
object
選填
VolumeMount 說明容器內磁碟區的掛接情形。
sidecars[].volumeMounts[].mountPath
string
必填
容器中應掛接磁碟區的路徑。不得包含「:」。
sidecars[].volumeMounts[].mountPropagation
string
選填
mountPropagation 會決定掛接點如何從主機傳播至容器,以及反向傳播。如未設定,則會使用 MountPropagationNone。 這個欄位在 1.10 版中為 Beta 版。
sidecars[].volumeMounts[].name
string
必填
這個名稱必須與磁碟區名稱相符。
sidecars[].volumeMounts[].readOnly
boolean
選填
如果為 true,則以唯讀模式掛接;否則以讀寫模式掛接 (false 或未指定)。預設值為 false。
sidecars[].volumeMounts[].subPath
string
選填
容器磁碟區應掛接的磁碟區內路徑。預設為「」 (磁碟區根目錄)。
sidecars[].volumeMounts[].subPathExpr
string
選填
磁碟區中應掛接容器磁碟區的展開路徑。行為與 SubPath 類似,但環境變數參照 $(VAR_NAME) 會使用容器的環境展開。預設為「」 (磁碟區的根目錄)。SubPathExpr 和 SubPath 互斥。
sidecars[].workingDir
string
選填
容器的目前使用的目錄。如未指定,系統會使用容器執行階段的預設值,這可能是在容器映像檔中設定。無法更新。

狀態結構定義

SidecarStatus 會指定 Sidecar 的觀測狀態。

conditions:
- lastTransitionTime: string
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams:
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
observedGeneration: integer
reconciled: boolean

欄位

類型
必填或選填

 

說明
conditions
list (object)
選填
「條件」代表實體目前狀態的最新可用觀察結果。
conditions[]
object
選填
條件包含這項 API 資源目前狀態某個層面的詳細資料。--- This struct is intended for direct use as an array at the field path .status.conditions. 例如: \n type FooStatus struct{ // Represents the observations of a foo's current state. // Known .status.conditions.type are: \"Available\", \"Progressing\", and \"Degraded\" // +patchMergeKey=type // +patchStrategy=merge // +listType=map // +listMapKey=type Conditions []metav1.Condition `json:\"conditions,omitempty\" patchStrategy:\"merge\" patchMergeKey:\"type\" protobuf:\"bytes,1,rep,name=conditions\"` \n // other fields }
conditions[].lastTransitionTime
string
必填
lastTransitionTime 是條件上次從一個狀態轉換為另一個狀態的時間。這應該是基礎條件變更的時間。如果不知道,可以使用 API 欄位變更的時間。
conditions[].message
string
必填

長度上限:32768

message 是人類可讀的訊息,指出轉換的詳細資料。這個值可以是空字串。
conditions[].observedGeneration
integer
選填
observedGeneration 代表設定條件時依據的 .metadata.generation。舉例來說,如果 .metadata.generation 為 12,但 .status.conditions[x].observedGeneration 為 9,則條件相對於例項的目前狀態已過時。
conditions[].reason
string
必填

長度下限:1;長度上限:1024

reason 包含程式輔助 ID,指出條件上次轉換的原因。特定條件類型的產生者可以定義這個欄位的預期值和意義,以及這些值是否視為保證 API。值應為駝峰式大小寫字串。 這個欄位不得留空。
conditions[].status
string
必填

有效值:"True"、"False"、Unknown

條件狀態,可為 True、False 或 Unknown。
conditions[].type
string
必填

長度上限:316

條件類型,採用駝峰式大小寫或 foo.example.com/CamelCase 格式。--- 許多 .condition.type 值在不同資源中保持一致,例如 Available,但由於任意條件可能很有用 (請參閱 .node.status.conditions),因此解決衝突的能力非常重要。比對的規則運算式為 (dns1123SubdomainFmt/)?(qualifiedNameFmt)
criticalIncidents
list (object)
選填
CriticalIncidents 是所有有效 Critical Incidents 的平面清單。
criticalIncidents[]
object
選填
CriticalIncident 包含目前重大事件的所有資訊。
criticalIncidents[].code
string
必填
Code 是這項特定錯誤的錯誤代碼。 錯誤代碼為 DBSE+數字字串,例如「DBSE1012」。
criticalIncidents[].createTime
string
必填
CreateTime 是指在來源建立這個事件的時間戳記。
criticalIncidents[].message
string
選填
訊息會說明發生的事件/錯誤。
criticalIncidents[].messageTemplateParams
object
選填
MessageTemplateParams 包含必要鍵/值組合,可在使用者介面中產生容易使用的資料導向版本 Message。
criticalIncidents[].resource
object
必填
資源包含回報事件的資料庫服務元件,以及 Kubernetes 資源的相關資訊。
criticalIncidents[].resource.component
string
必填
元件是回報事件的資料庫服務子系統內部 ID。
criticalIncidents[].resource.location
object
選填
Location
criticalIncidents[].resource.location.cluster
string
選填
叢集是受影響 Kubernetes 資源的叢集名稱。
criticalIncidents[].resource.location.group
string
選填
Group 是 Kubernetes 資源的群組名稱。
criticalIncidents[].resource.location.kind
string
選填
Kind 是 Kubernetes 資源的種類。
criticalIncidents[].resource.location.name
string
選填
Name 是受影響 Kubernetes 資源的名稱。
criticalIncidents[].resource.location.namespace
string
選填
命名空間是受影響的 Kubernetes 資源命名空間。
criticalIncidents[].resource.location.version
string
選填
版本是 Kubernetes 資源的版本。
criticalIncidents[].stackTrace
list (object)
選填
StackTrace 包含堆疊追蹤中未結構化的訊息清單。
criticalIncidents[].stackTrace[]
object
選填
CriticalIncidentStackTraceMessage 包含事件可用的堆疊追蹤資訊。
criticalIncidents[].stackTrace[].component
string
選填
「Component」是記錄訊息的資料庫服務元件名稱。
criticalIncidents[].stackTrace[].message
string
選填
記錄訊息。
criticalIncidents[].transientUntil
string
選填
如果出現 TransientUntil,表示在指定時間之前,問題應視為暫時性。
observedGeneration
integer
選填
內部:控制器觀察到的世代。
reconciled
boolean
選填
內部:資源是否已由控制器協調。