日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

EnvoyFilterTemplate和EnvoyFilterTemplateBinding CRD說明

ASM支持通過Envoy過濾器模板(EnvoyFilterTemplate)和Envoy過濾器模板綁定(EnvoyFilterTemplateBinding)創建Envoy過濾器。同一個Envoy過濾器模板可以被用來創建多個Envoy過濾器,應用于不同的工作負載和命名空間,從而提高配置的復用性和管理效率。

配置示例

以下配置指定了一個Envoy過濾器模板(EnvoyFilterTemplate),該模板指定了一個適用于1.19及以上Istio版本的Envoy過濾器模板內容。同時指定了一個Envoy過濾器模板綁定(EnvoyFilterTemplateBinding),該模板綁定將創建一個生效在istio-system命名空間(即全局生效)的Envoy過濾器(EnvoyFilter),該Envoy過濾器生效在所有1.20版本的數據面代理中,過濾器內容取自上述Envoy過濾器模板中定義的適用于1.19以及以上版本的Envoy過濾器模板。

展開查看EnvoyFilterTemplate YAML

apiVersion: istio.alibabacloud.com/v1
kind: EnvoyFilterTemplate
metadata:
  name: seth2windows
  namespace: istio-system
spec:
  templates:
  - istioVersion: "1.19-MAX_VERSION"
    value: |
      apiVersion: networking.istio.io/v1alpha3
      kind: EnvoyFilter
      spec:
        configPatches:
        - applyTo: NETWORK_FILTER
          match:
            context: ANY
            listener:
              filterChain:
                filter:
                  name: envoy.filters.network.http_connection_manager
              portNumber: 80
          patch:
            operation: MERGE
            value:
              typed_config:
                '@type': type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
                http2_protocol_options:
                  initial_connection_window_size: 65536
                  initial_stream_window_size: 65536
        priority: 0
---
apiVersion: istio.alibabacloud.com/v1
kind: EnvoyFilterTemplateBinding
metadata:
  name: seth2windows-binding-1.20
  namespace: istio-system
spec:
  templateRef:
    istioVersion: "1.20"
    name: seth2windows
  workloads:
  - kind: Namespace
    namespace: istio-system

以上配置最終會指定創建出如下的Envoy過濾器:

展開查看EnvoyFilter YAML

apiVersion: networking.istio.io/v1alpha3
kind: EnvoyFilter
metadata:
  labels:
    asm-system: "true"
    binding-name: seth2windows-binding-1.20
    binding-namespace: istio-system
    provider: asm
    workload-name: ""
    workload-namespace: istio-system
  name: seth2windows-binding-1.20-for-istio-system
  namespace: istio-system
spec:
  configPatches:
  - applyTo: NETWORK_FILTER
    match:
      context: ANY
      listener:
        filterChain:
          filter:
            name: envoy.filters.network.http_connection_manager
        portNumber: 80
      proxy:
        proxyVersion: ^1\.20.*
    patch:
      operation: MERGE
      value:
        typed_config:
          '@type': type.googleapis.com/envoy.extensions.filters.network.http_connection_manager.v3.HttpConnectionManager
          http2_protocol_options:
            initial_connection_window_size: 65536
            initial_stream_window_size: 65536
  priority: 0

EnvoyFilterTemplate字段說明

EnvoyFilterTemplate定義了一系列的Envoy過濾器(EnvoyFilter)內容。這些Envoy過濾器分別適用于不同的Istio版本。由于Envoy過濾器存在版本兼容性風險,自行創建Envoy過濾器對網格的升級與維護都造成了較大挑戰。通過EnvoyFilterTemplate,可以針對不同的Istio版本針對性地定制不同的Envoy過濾器內容。當對數據面代理進行版本升級后,可以讓適用于新版本的Envoy過濾器生效在新版本代理中,降低兼容性風險。

EnvoyFilterTemplateSpec

EnvoyFilterTemplateSpec是EnvoyFilterTemplate的核心配置,即spec部分。

字段

類型

是否必選

說明

templates

TemplateValue[]

指定一系列Envoy過濾器模板值。每個模板值都有適配的Istio版本或版本范圍。模板值之間適配的Istio版本范圍不能有重合的部分。

TemplateValue

每個TemplateValue指定一個Envoy過濾器的YAML內容以及該Envoy過濾器對應的適配Istio版本或版本范圍。

字段

類型

是否必選

說明

istioVersion

string

Envoy過濾器適配的Istio版本或版本范圍。版本必須為Istio的Minor版本(例如1.19、1.20),可以使用短劃線(-)連接兩個版本,表示在指定的版本范圍內Envoy過濾器均可生效。

當表達版本范圍時,允許使用MIN_VERSION代表已知最小版本,使用MAX_VERSION代表已知最大版本。

示例:

  • "1.19":適用于1.19版本。

  • "1.18-1.20":適用于1.18、1.19和1.20三個版本。

  • "1.19-MAX_VERSION":適用于1.19及以上版本。

  • "MIN_VERSION-1.19":適用于1.19及以下版本。

value

string

Envoy過濾器的YAML內容,必須為YAML字符串,同時YAML需要符合Envoy過濾器字段定義。關于Envoy過濾器的字段定義,請參見Envoy過濾器(Envoy Filter)CRD說明

在TemplateValue中定義的Envoy過濾器內容,不需要包含metadata、workloadSelector字段,這些字段會在實際創建Envoy過濾器時,根據Envoy過濾器模板綁定的定義進行填充。

EnvoyFilterTemplateBinding字段說明

EnvoyFilterTemplateBinding關聯到一個EnvoyFilterTemplate,并指明EnvoyFilterTemplate中定義的Envoy過濾器內容需要生效到哪些工作負載內、哪些版本的數據面代理中。

EnvoyFilterTemplateBindingSpec

EnvoyFilterTemplateBindingSpec是EnvoyFilterTemplateBinding的核心配置,即spec部分。

字段

類型

是否必選

說明

templateRef

EnvoyFilterTemplateRef

模板引用,指定EnvoyFilterTemplateBinding所引用的EnvoyFilterTemplate以及綁定的版本信息。

workloads

WorkloadRef[]

指定需要為哪些工作負載創建Envoy過濾器。

EnvoyFilterTemplateRef

字段

類型

是否必選

說明

name

string

引用的EnvoyFilterTemplate的名稱。

istioVersion

string

指定要為哪些版本的數據面代理生效Envoy過濾器。

版本必須為Istio的Minor版本(例如1.19、1.20),可以使用短劃線(-)連接兩個版本,表示在指定的版本范圍內Envoy過濾器均可生效。

當表達版本范圍時,允許使用MIN_VERSION代表已知最小版本,使用MAX_VERSION代表已知最大版本。

示例:

  • "1.19":適用于1.19版本。

  • "1.18-1.20":適用于1.18、1.19和1.20三個版本。

  • "1.19-MAX_VERSION":適用于1.19及以上版本。

  • "MIN_VERSION-1.19":適用于1.19及以下版本。

WorkloadRef

WorkloadRef定義了一個Envoy過濾器的生效范圍,能夠指定Envoy過濾器生效在哪些工作負載上。

字段

類型

是否必選

說明

namespace

string

命名空間名稱,指定在哪個命名空間創建Envoy過濾器。

name

string

工作負載名稱,此名稱將決定最終創建的Envoy過濾器的名稱,建議填寫為Service或Deployment的名稱。

當Envoy過濾器生效在整個命名空間時,無需填寫。

kind

string

用于區分Envoy過濾器綁定的工作負載的類型,僅做展示區分用途。

selector

map<string, string>

指定一系列的標簽,用作選擇Pod的條件,將轉化成Envoy過濾器的workloadSelector字段。當不填寫時,創建的Envoy過濾器將在整個命名空間生效。

相關文檔