ObjectMeta
import "k8s.io/apimachinery/pkg/apis/meta/v1"
ObjectMeta 是所有持久資源都必須擁有的元資料,其中包括使用者必須建立的所有物件。
name (字串)
Name 在命名空間內必須是唯一的。建立資源時為必要項,儘管某些資源可能允許用戶端請求自動產生適當的名稱。Name 主要用於建立等冪性和組態定義。無法更新。 更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/names#names
generateName (字串)
GenerateName 是一個可選的前綴,由伺服器使用,僅在未提供 Name 欄位時產生唯一名稱。如果使用此欄位,則傳回給用戶端的名稱將與傳遞的名稱不同。此值也將與唯一的後綴組合。提供的值具有與 Name 欄位相同的驗證規則,並且可能會因使伺服器上的值唯一所需的後綴長度而截斷。
如果指定此欄位且產生的名稱已存在,伺服器將傳回 409。
僅在未指定 Name 時套用。 更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#idempotency
namespace (字串)
Namespace 定義每個名稱必須唯一的空間。空的命名空間等同於 "default" 命名空間,但 "default" 是標準表示法。並非所有物件都必須限定在命名空間中 - 這些物件的此欄位值將為空。
必須是 DNS_LABEL。無法更新。 更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/namespaces
labels (map[string]string)
字串鍵值組的映射,可用於組織和分類(範圍和選擇)物件。可能與複製控制器和服務的選擇器匹配。更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/labels
annotations (map[string]string)
註解是一個非結構化的鍵值映射,與資源一起儲存,可以由外部工具設定以儲存和檢索任意元數據。它們不可查詢,並且在修改物件時應保留。更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/annotations
系統
finalizers ([]string)
集合:在合併期間將保留唯一值
在物件從登錄檔中刪除之前,必須為空。每個條目都是負責組件的識別符,該組件將從列表中移除該條目。如果物件的 deletionTimestamp 為非空值,則此列表中的條目只能被移除。Finalizers 可能以任何順序處理和移除。順序不是強制執行的,因為它會引入 finalizers 卡住的重大風險。finalizers 是一個共享欄位,任何具有權限的參與者都可以重新排序它。如果 finalizer 列表按順序處理,則可能導致以下情況:列表中第一個 finalizer 的負責組件正在等待列表中稍後 finalizer 的負責組件產生的訊號(欄位值、外部系統或其他),從而導致死鎖。在沒有強制排序的情況下,finalizers 可以自由地在彼此之間排序,並且不易受到列表中排序變更的影響。
managedFields ([]ManagedFieldsEntry)
原子性:在合併期間將被替換
ManagedFields 將工作流程 ID 和版本映射到由該工作流程管理的欄位集合。這主要用於內部管理,使用者通常不需要設定或理解此欄位。工作流程可以是使用者名稱、控制器名稱,或特定應用路徑的名稱,例如 "ci-cd"。欄位集合始終是工作流程修改物件時使用的版本。
ManagedFieldsEntry 是一個工作流程 ID、一個 FieldSet 以及 fieldset 應用於的資源的群組版本。
managedFields.apiVersion (string)
APIVersion 定義此欄位集應用於的資源版本。格式為 "group/version",就像頂層的 APIVersion 欄位一樣。追蹤欄位集的版本是必要的,因為它無法自動轉換。
managedFields.fieldsType (string)
FieldsType 是不同欄位格式和版本的鑑別器。目前只有一個可能的值:"FieldsV1"
managedFields.fieldsV1 (FieldsV1)
FieldsV1 保留第一個 JSON 版本格式,如 "FieldsV1" 類型中所述。
*FieldsV1 以類似 Trie 的資料結構儲存一組欄位,格式為 JSON。
每個鍵可以是 '.',表示欄位本身,並且始終映射到一個空集合,或者是一個字串,表示子欄位或項目。該字串將遵循以下四種格式之一:'f
', 其中 是結構體中的欄位名稱,或映射中的鍵 'v ', 其中 是列表項目的精確 json 格式化值 'i ', 其中 是列表中項目的位置 'k ', 其中 是列表項目的鍵欄位到其唯一值的映射。如果一個鍵映射到一個空的 Fields 值,則該鍵表示的欄位是集合的一部分。 確切的格式在 sigs.k8s.io/structured-merge-diff 中定義*
managedFields.manager (string)
Manager 是管理這些欄位的工作流程的識別符。
managedFields.operation (string)
Operation 是導致建立此 ManagedFieldsEntry 的操作類型。此欄位的唯一有效值為 'Apply' 和 'Update'。
managedFields.subresource (string)
Subresource 是用於更新該物件的子資源名稱,如果物件是透過主要資源更新的,則為空字串。此欄位的值用於區分管理器,即使它們共享相同的名稱。例如,狀態更新將與使用相同管理器名稱的常規更新不同。請注意,APIVersion 欄位與 Subresource 欄位無關,它始終對應於主要資源的版本。
managedFields.time (Time)
Time 是新增 ManagedFields 條目的時間戳記。如果新增欄位、管理器變更任何擁有的欄位值或移除欄位,時間戳記也會更新。當欄位從條目中移除時,時間戳記不會更新,因為另一個管理器接管了它。
Time 是 time.Time 的包裝器,它支援正確地封送處理為 YAML 和 JSON。為 time 套件提供的許多工廠方法提供了包裝器。
ownerReferences ([]OwnerReference)
修補策略:在鍵
uid
上合併映射:在合併期間,鍵 uid 上的唯一值將被保留
此物件所依賴的物件列表。如果列表中的所有物件都已被刪除,則此物件將被垃圾回收。如果此物件由控制器管理,則此列表中的條目將指向此控制器,並且 controller 欄位設定為 true。不能有多個管理控制器。
OwnerReference 包含足夠的資訊,讓您識別擁有物件。擁有物件必須與依賴物件位於相同的命名空間中,或是叢集範圍的,因此沒有命名空間欄位。
ownerReferences.apiVersion (string), 必要
參照物件的 API 版本。
ownerReferences.kind (string), 必要
參照物件的種類。更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
ownerReferences.name (string), 必要
參照物件的名稱。更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/names#names
ownerReferences.uid (string), 必要
參照物件的 UID。更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/names#uids
ownerReferences.blockOwnerDeletion (boolean)
如果為 true,且擁有者具有 "foregroundDeletion" finalizer,則在移除此參照之前,擁有者無法從鍵值儲存區中刪除。有關垃圾收集器如何與此欄位互動並強制執行前景刪除,請參閱 https://kubernetes.dev.org.tw/docs/concepts/architecture/garbage-collection/#foreground-deletion。預設值為 false。若要設定此欄位,使用者需要擁有者的 "delete" 權限,否則將返回 422 (Unprocessable Entity)。
ownerReferences.controller (boolean)
如果為 true,則此參照指向管理控制器。
唯讀
creationTimestamp (Time)
CreationTimestamp 是一個時間戳記,表示伺服器建立此物件時的時間。不保證在不同操作之間按先後順序設定。用戶端不得設定此值。它以 RFC3339 格式表示,並且是 UTC 時間。
由系統填充。唯讀。列表為空值。更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Time 是 time.Time 的包裝器,它支援正確地封送處理為 YAML 和 JSON。為 time 套件提供的許多工廠方法提供了包裝器。
deletionGracePeriodSeconds (int64)
在物件從系統中移除之前,允許物件正常終止的秒數。僅在也設定了 deletionTimestamp 時設定。可能只會縮短。唯讀。
deletionTimestamp (Time)
DeletionTimestamp 是 RFC 3339 日期和時間,表示此資源將被刪除的時間。當使用者請求正常刪除時,伺服器會設定此欄位,用戶端無法直接設定。在此欄位中的時間之後,一旦 finalizers 列表為空,預期資源將被刪除(從資源列表中不再可見,並且無法通過名稱訪問)。只要 finalizers 列表包含項目,刪除就會被阻止。一旦設定了 deletionTimestamp,此值可能不會被取消設定或設定為更遙遠的未來,儘管它可以縮短或資源可能在此時間之前被刪除。例如,使用者可以請求在 30 秒後刪除 pod。Kubelet 將通過向 pod 中的容器發送正常終止訊號來做出反應。30 秒過後,Kubelet 將向容器發送硬終止訊號 (SIGKILL),並在清理後從 API 中移除 pod。在存在網路分割的情況下,此物件可能在此時間戳記之後仍然存在,直到管理員或自動化程序可以確定資源已完全終止。如果未設定,則尚未請求物件的正常刪除。
當請求正常刪除時,由系統填充。唯讀。更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata
Time 是 time.Time 的包裝器,它支援正確地封送處理為 YAML 和 JSON。為 time 套件提供的許多工廠方法提供了包裝器。
generation (int64)
一個序列號,表示所需狀態的特定世代。由系統填充。唯讀。
resourceVersion (string)
一個不透明的值,表示此物件的內部版本,用戶端可以使用它來確定物件何時發生了變更。可用於樂觀鎖定、變更偵測以及資源或資源集的 watch 操作。用戶端必須將這些值視為不透明,並將其未經修改地傳回伺服器。它們可能僅對特定資源或資源集有效。
由系統填充。唯讀。值必須被用戶端視為不透明且未經修改地傳遞回伺服器。更多資訊:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
selfLink (string)
已棄用:selfLink 是一個舊版的唯讀欄位,系統不再填充它。
uid (string)
UID 是此物件在時間和空間上的唯一值。它通常由伺服器在成功建立資源時產生,並且不允許在 PUT 操作時變更。
由系統填充。唯讀。更多資訊:https://kubernetes.dev.org.tw/docs/concepts/overview/working-with-objects/names#uids
此頁面為自動產生。
如果您計劃報告此頁面的問題,請在您的問題描述中提及該頁面是自動產生的。修復可能需要在 Kubernetes 專案的其他地方進行。