<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # Pod Preset > **注意:**PodPreset 資源對象只有 kubernetes 1.8 以上版本才支持。 Preset 就是預設,有時候想要讓一批容器在啟動的時候就注入一些信息,比如 secret、volume、volume mount 和環境變量,而又不想一個一個的改這些 Pod 的 template,這時候就可以用到 PodPreset 這個資源對象了。 本頁是關于 PodPreset 的概述,該對象用來在 Pod 創建的時候向 Pod 中注入某些特定信息。該信息可以包括 secret、volume、volume mount 和環境變量。 ## 理解 Pod Preset `Pod Preset` 是用來在 Pod 被創建的時候向其中注入額外的運行時需求的 API 資源。 您可以使用 [label selector](https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/#label-selectors) 來指定為哪些 Pod 應用 Pod Preset。 使用 Pod Preset 使得 pod 模板的作者可以不必為每個 Pod 明確提供所有信息。這樣一來,pod 模板的作者就不需要知道關于該服務的所有細節。 關于該背景的更多信息,請參閱 [PodPreset 的設計方案](https://git.k8s.io/community/contributors/design-proposals/service-catalog/pod-preset.md)。 ## 如何工作 Kubernetes 提供了一個準入控制器(`PodPreset`),當其啟用時,Pod Preset 會將應用創建請求傳入到該控制器上。當有 Pod 創建請求發生時,系統將執行以下操作: 1. 檢索所有可用的 `PodPresets`。 2. 檢查 PodPreset 標簽選擇器上的標簽,看看其是否能夠匹配正在創建的 Pod 上的標簽。 3. 嘗試將由 `PodPreset` 定義的各種資源合并到正在創建的 Pod 中。 4. 出現錯誤時,在該 Pod 上引發記錄合并錯誤的事件,PodPreset *不會*注入任何資源到創建的 Pod 中。 5. 注釋剛生成的修改過的 Pod spec,以表明它已被 PodPreset 修改過。注釋的格式為 `podpreset.admission.kubernetes.io/podpreset-<pod-preset name>": "<resource version>"`。 每個 Pod 可以匹配零個或多個 Pod Prestet;并且每個 `PodPreset` 可以應用于零個或多個 Pod。 `PodPreset` 應用于一個或多個 Pod 時,Kubernetes 會修改 Pod Spec。對于 `Env`、`EnvFrom` 和 `VolumeMounts` 的更改,Kubernetes 修改 Pod 中所有容器的容器 spec;對于 `Volume` 的更改,Kubernetes 修改 Pod Spec。 > **注意:**Pod Preset 可以在適當的時候修改 Pod spec 中的 `spec.containers` 字段。Pod Preset 中的資源定義將*不會*應用于 `initContainers` 字段。 ### 禁用特定 Pod 的 Pod Preset 在某些情況下,您可能不希望 Pod 被任何 Pod Preset 所改變。在這些情況下,您可以在 Pod 的 Pod Spec 中添加注釋:`podpreset.admission.kubernetes.io/exclude:"true"`。 ## 啟用 Pod Preset 為了在群集中使用 Pod Preset,您必須確保以下內容: 1. 您已啟用 `settings.k8s.io/v1alpha1/podpreset` API 類型。例如,可以通過在 API server 的 `--runtime-config` 選項中包含 `settings.k8s.io/v1alpha1=true` 來完成此操作。 2. 您已啟用 `PodPreset` 準入控制器。 一種方法是將 `PodPreset` 包含在為 API server 指定的 `--admission-control` 選項值中。 3. 您已經在要使用的命名空間中通過創建 `PodPreset` 對象來定義 `PodPreset`。 ## 更多資料 - [使用 PodPreset 向 Pod 中注入數據](https://kubernetes.io/docs/tasks/inject-data-application/podpreset)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看