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

ASMSwimLaneGroup和ASMSwimLane CRD說明

ASM通過流量泳道組(ASMSwimLaneGroup)和流量泳道(ASMSwimLane)兩種資源實(shí)現(xiàn)針對服務(wù)調(diào)用鏈路的流量泳道能力。流量泳道能夠?qū)?yīng)用的相關(guān)版本(或者其他特征)隔離成一個獨(dú)立的運(yùn)行環(huán)境(即泳道),然后通過設(shè)置泳道引流規(guī)則,將滿足規(guī)則的請求流量路由到目標(biāo)版本(或者其他特征)的應(yīng)用上。

配置示例

以下配置表示為Kubernetes集群中default命名空間下的服務(wù)mocka、mockb、mockc建立一個名為mock的泳道組。泳道組中包含v1和v2兩條流量泳道,分別對應(yīng)這些服務(wù)的v1和v2版本(通過Pod上的version標(biāo)簽區(qū)分版本)。當(dāng)mocka、mockb、mockc相互發(fā)送請求時,將只會調(diào)用相同版本的服務(wù),保證v1和v2版本的隔離。同時,基于istio-system下名為ingressgateway的網(wǎng)關(guān)規(guī)則創(chuàng)建虛擬服務(wù),為兩條泳道進(jìn)行引流。

展開查看YAML

apiVersion: istio.alibabacloud.com/v1
kind: ASMSwimLaneGroup
metadata:
  name: mock
spec:
  ingress:
    gateway:
      name: ingressgateway
      namespace: istio-system
      type: ASM
  services:
  - name: mocka
    namespace: default
  - name: mockb
    namespace: default
  - name: mockc
    namespace: default
---
apiVersion: istio.alibabacloud.com/v1
kind: ASMSwimLane
metadata:
  labels:
    swimlane-group: mock
  name: v1
spec:
  ingressRules:
  - hosts:
    - '*'
    match:
      uri:
        exact: /mock
    name: r1
    online: true
    route:
      destination:
        host: mocka.default.svc.cluster.local
  labelSelector:
    version: v1
---
apiVersion: istio.alibabacloud.com/v1
kind: ASMSwimLane
metadata:
  labels:
    swimlane-group: mock
  name: v2
spec:
  ingressRules:
  - hosts:
    - '*'
    match:
      uri:
        exact: /mock
    name: r2
    online: true
    route:
      destination:
        host: mocka.default.svc.cluster.local
  labelSelector:
    version: v2

ASMSwimLaneGroup字段說明

ASMSwimLaneGroup定義了一個流量泳道組。流量泳道組主要定義多條流量泳道需要共享的信息,包括需要為哪些服務(wù)創(chuàng)建流量泳道隔離環(huán)境、泳道引流的虛擬服務(wù)規(guī)則需要基于哪個網(wǎng)關(guān)規(guī)則創(chuàng)建等。一個流量泳道組可以與多個流量泳道建立關(guān)聯(lián),流量泳道可以通過swimlane-group: {ASMSwimLaneGroup名稱}的方式關(guān)聯(lián)泳道組。

ASMSwimLaneGroupSpec

ASMSwimLaneGroupSpec是ASMSwimLaneGroup的核心配置,即spec字段的部分。

字段

類型

是否必選

說明

services

ClusterServiceRef[]

指定需要為K8s集群中的哪些服務(wù)創(chuàng)建泳道隔離環(huán)境。通過K8s Service的名稱、命名空間、所在K8s集群ID與集群名稱來引用K8s集群中的服務(wù)。

ingress

SwimLaneGroupIngressConfiguration

指定流量泳道組的入口網(wǎng)關(guān)的相關(guān)配置。入口網(wǎng)關(guān)的主要作用是為泳道組中的多個版本服務(wù)進(jìn)行引流。

isPermissive

bool

指定流量泳道組的模式。取值如下:

  • true:寬松模式。

  • false或不填:嚴(yán)格模式。

關(guān)于嚴(yán)格模式和寬松模式的流量泳道的詳情,請參見流量泳道概述

permissiveModeConfiguration

PermissiveSwimLaneGroupConfiguration

寬松模式下泳道組的相關(guān)配置,當(dāng)泳道組模式為寬松模式時必須配置。

defaultTrafficPolicyPatch

TrafficPolicy

應(yīng)用到泳道組內(nèi)所有服務(wù)的目的地流量策略。使用此字段時,泳道組將為所有泳道組內(nèi)的所有服務(wù)的目標(biāo)規(guī)則(DestinationRule)中增加指定的流量策略聲明。

說明

使用此字段需要ASM實(shí)例版本在1.21.6.104及以上。

defaultHttpRoutePatch

HTTPRoute

應(yīng)用到泳道組內(nèi)所有服務(wù)的HTTP路由操作。泳道組將為泳道組內(nèi)的所有服務(wù)聲明虛擬服務(wù)(VirtualService),使用此字段時,泳道組將會向泳道組內(nèi)每個服務(wù)的虛擬服務(wù)中增加指定的流量路由操作字段(如rewrite、timeout等)。注意,為防止破壞泳道流量規(guī)則,您無法指定match、name、route、delegate字段。

說明

使用此字段需要服務(wù)網(wǎng)格實(shí)例版本在1.21.6.104及以上。

ClusterServiceRef

每個ClusterServiceRef引用一個部署在K8s集群中的Service。流量泳道通過這些引用決定為哪些服務(wù)創(chuàng)建流量隔離環(huán)境。

字段

類型

是否必選

說明

name

string

K8s Service的名稱。

namespace

string

K8s Service所在的命名空間。

cluster

ClusterRef

K8s集群的引用信息。

trafficPolicyPatch

TrafficPolicy

應(yīng)用到具體泳道組內(nèi)服務(wù)上的目的地流量策略。如果被指定,此字段將覆蓋ASMSwimLaneGroupSpec下的defaultTrafficPolicyPatch。

說明

使用此字段需要服務(wù)網(wǎng)格實(shí)例版本在1.21.6.104及以上。

httpRoutePatch

HTTPRoute

應(yīng)用到具體泳道組內(nèi)服務(wù)的HTTP路由操作。如果被指定,此字段將覆蓋ASMSwimLaneGroupSpec下的defaultHttpRoutePatch

說明

使用此字段需要服務(wù)網(wǎng)格實(shí)例版本在1.21.6.104及以上。

ClusterRef

ClusterRef提供一個添加到ASM實(shí)例中的K8s集群的引用信息。

字段

類型

是否必選

說明

name

string

K8s集群的顯示名稱。

id

string

K8s集群的集群ID。

SwimLaneGroupIngressConfiguration

SwimLaneGroupIngressConfiguration定義了為泳道組內(nèi)服務(wù)進(jìn)行引流的入口網(wǎng)關(guān)的相關(guān)信息。

字段

類型

是否必選

說明

gateway

SwimLaneGatewayConfiguration

與入口網(wǎng)關(guān)關(guān)聯(lián)的網(wǎng)關(guān)規(guī)則(Gateway)的相關(guān)信息。

ingressRouting

SwimLaneGroupIngressRouteConfiguration

對泳道組內(nèi)服務(wù)進(jìn)行引流的引流規(guī)則相關(guān)配置。

說明

使用此字段需要網(wǎng)格實(shí)例版本在1.21.6.92及以上。

SwimLaneGatewayConfiguration

SwimLaneGatewayConfiguration定義了與入口網(wǎng)關(guān)相關(guān)聯(lián)的網(wǎng)關(guān)規(guī)則(Gateway)的相關(guān)信息。

字段

類型

是否必選

說明

name

string

網(wǎng)關(guān)規(guī)則的名稱。

namespace

string

網(wǎng)關(guān)規(guī)則所在命名空間。

type

string

網(wǎng)關(guān)規(guī)則的類型,必須填寫為ASM,即服務(wù)網(wǎng)格ASM提供的網(wǎng)關(guān)規(guī)則。關(guān)于網(wǎng)關(guān)規(guī)則的字段說明,請參見網(wǎng)關(guān)規(guī)則(Gateway)CRD說明

SwimLaneGroupIngressRouteConfiguration

SwimLaneGroupIngressRouteConfiguration定義了對泳道組內(nèi)服務(wù)進(jìn)行引流的引流規(guī)則相關(guān)配置。

字段

類型

是否必填

說明

ingressRoutingStrategy

string

對泳道組內(nèi)服務(wù)進(jìn)行引流的策略,可以指定兩個選項(xiàng):

  • rule_based:默認(rèn)的引流策略,每條泳道將使用ingressRules指定自己的請求匹配規(guī)則,匹配到某條匹配規(guī)則的請求將發(fā)往匹配規(guī)則對應(yīng)的泳道。

  • weighted:基于權(quán)重的引流策略,泳道組內(nèi)所有的服務(wù)將基于統(tǒng)一的請求匹配規(guī)則對請求進(jìn)行匹配,匹配到的請求將以指定的比例發(fā)往不同泳道中的服務(wù)。

weightedRoutingRule

WeightedSwimLaneIngressConfiguration

在基于權(quán)重的引流策略下,匹配所有請求時使用的統(tǒng)一匹配規(guī)則。僅在ingressRoutingStrategy值為weighted時起效。

WeightedSwimLaneIngressConfiguration

WeightedSwimLaneIngressConfiguration指定了基于權(quán)重的引流策略下匹配所有請求時使用的統(tǒng)一匹配規(guī)則。

字段

類型

是否必填

說明

hosts

[]string

匹配請求的域名,該域名必須聲明在泳道組關(guān)聯(lián)的網(wǎng)關(guān)規(guī)則(Gateway)中。

requestMatches

SwimLaneIngressRequestMatch

對請求URI及請求頭進(jìn)行匹配的匹配條件。

PermissiveSwimLaneGroupConfiguration

PermissiveSwimLaneGroupConfiguration定義了在寬松模式下,流量泳道組需要指定的參數(shù)。

字段

類型

是否必選

說明

routeHeader

string

寬松模式下,流量泳道的引流請求頭名稱。

引流請求頭用于請求在請求調(diào)用鏈路中傳遞時確定請求所處泳道。

在寬松模式下,請求經(jīng)入口網(wǎng)關(guān)轉(zhuǎn)發(fā)到達(dá)上游服務(wù)時,必須攜帶引流請求頭,以確定請求所處泳道。

traceHeader

string

寬松模式下,流量泳道使用的鏈路透傳請求頭名稱。

鏈路透傳請求頭必須具有以下性質(zhì):

  • 在請求的調(diào)用鏈路上保持傳遞。

  • 當(dāng)鏈路透傳請求頭與引流請求頭不相同時,需要鏈路透傳請求頭具有Trace ID的性質(zhì),可以使用Trace ID作為鏈路透傳請求頭(如x-b3-trace-id)。

fallbackTarget

string

寬松模式下的基線泳道名稱。當(dāng)路由到泳道對應(yīng)版本的服務(wù)失敗時,流量將回退到服務(wù)的基線版本。

ASMSwimLane字段說明

ASMSwimLane定義一條流量泳道。流量泳道定義主要包含與服務(wù)的具體版本(或其他特征)相關(guān)的信息。一條流量泳道通過打上swimlane-group: {ASMSwimLaneGroup名稱}標(biāo)簽的方式與一個泳道組建立關(guān)聯(lián)。

ASMSwimLaneSpec

ASMSwimLaneSpec是ASMSwimLane的核心配置,即spec的部分。

字段

類型

是否必選

說明

labelSelector

map<string, string>

一個或多個標(biāo)簽,用來匹配屬于此泳道的服務(wù)Pod。一般使用帶有版本信息的標(biāo)簽對泳道內(nèi)的Pod進(jìn)行匹配,如version: v1

services

ClusterServiceRef[]

指定泳道內(nèi)部署了哪些服務(wù)。和ASMSwimLaneGroupSpec中的services字段相同,通過K8s Service的名稱、命名空間、所在K8s集群ID與集群名稱來引用K8s集群中的服務(wù)。

  • 當(dāng)關(guān)聯(lián)的泳道組為嚴(yán)格模式時,此字段無需填寫。泳道內(nèi)默認(rèn)必須包含泳道組的全部服務(wù)。

  • 當(dāng)關(guān)聯(lián)的泳道組為寬松模式時,此字段必須填寫。此時ASMSwimLane的services字段必須為關(guān)聯(lián)的ASMSwimLaneGroup的services字段的子集。當(dāng)請求調(diào)用在泳道內(nèi)傳遞時,如果請求目的地服務(wù)沒有定義在此泳道中,則會對應(yīng)調(diào)用基線泳道中的對應(yīng)服務(wù)。

ingressRules

SwimLaneIngressRule[]

泳道對應(yīng)的引流規(guī)則定義。該引流規(guī)則定義將轉(zhuǎn)化為泳道組關(guān)聯(lián)的入口網(wǎng)關(guān)上的虛擬服務(wù)資源,負(fù)責(zé)將請求從網(wǎng)關(guān)上路由到泳道中的服務(wù)。

如果不填寫ingressRules字段,也可以手動創(chuàng)建網(wǎng)關(guān)上的虛擬服務(wù)資源為泳道內(nèi)的服務(wù)引流。

ingressWeight

SwimLaneIngressWeight

當(dāng)泳道組使用基于權(quán)重的引流策略時,使用此字段指定每條泳道對應(yīng)的引流權(quán)重比例。泳道組將依據(jù)不同泳道聲明的引流權(quán)重向該條泳道的入口服務(wù)轉(zhuǎn)發(fā)一定比例的請求。僅當(dāng)ingressRoutingStrategy值為weighted時起效。

SwimLaneIngressRule

SwimLaneIngressRule指定了網(wǎng)關(guān)為一條泳道內(nèi)服務(wù)進(jìn)行引流的路由規(guī)則,該規(guī)則將轉(zhuǎn)化為網(wǎng)關(guān)上的虛擬服務(wù)。

字段

類型

是否必選

說明

online

bool

指定引流規(guī)則是否生效。當(dāng)online為true時,網(wǎng)關(guān)上的虛擬服務(wù)才會對應(yīng)被創(chuàng)建。

hosts

string[]

引流規(guī)則匹配的域名。對應(yīng)虛擬服務(wù)中的hosts字段。

name

string

引流規(guī)則名稱。對應(yīng)虛擬服務(wù)中HTTP路由的名稱。

match

SwimLaneIngressRequestMatch

引流規(guī)則的請求匹配條件,將對應(yīng)轉(zhuǎn)化為虛擬服務(wù)中HTTP路由的match字段。

route

SwimLaneIngressRoute

引流規(guī)則的引流目的服務(wù),將對應(yīng)轉(zhuǎn)化為虛擬服務(wù)中HTTP路由的route字段。

SwimLaneIngressWeight

字段

類型

是否必選

說明

weight

int

泳道的引流權(quán)重?cái)?shù)值,不指定則為0。該數(shù)值將通過與其它泳道的引流權(quán)重比較來確定最終的引流比例。

destination

RouteDestination

在基于權(quán)重的引流策略下,指定應(yīng)將請求轉(zhuǎn)發(fā)到的服務(wù)實(shí)例。

SwimLaneIngressRequestMatch

SwimLaneIngressRequestMatch是引流規(guī)則的請求匹配條件。

字段

類型

是否必選

說明

uri

StringMatch

請求URI匹配條件。示例如下:

  • exact: "value":精確的字符串匹配。

  • prefix: "value":前綴匹配。

  • regex: "value":RE2樣式的正則表達(dá)式匹配。更多信息,請參見Syntax

headers

map<string, StringMatch>

請求Header匹配條件。Map的鍵必須小寫并使用短劃線(-),代表Header的名稱,例如x-request-id。Map的值同為StringMatch類型,示例如下:

  • exact: "value":精確的字符串匹配。

  • prefix: "value":前綴匹配。

  • regex: "value":RE2樣式的正則表達(dá)式匹配。更多信息,請參見Syntax

StringMatch

StringMatch指定一個字符串匹配條件,用于指定如何匹配請求的URI和Header。

字段

類型

是否必選

說明

任選其一

exact

string

精確的字符串匹配。

prefix

string

基于前綴的匹配。

regex

string

RE2風(fēng)格的基于正則表達(dá)式的匹配。更多信息,請參見wiki

SwimLaneIngressRoute

SwimLaneIngressRoute指定了引流規(guī)則的引流目的服務(wù)。

字段

類型

是否必選

說明

destination

RouteDestination

指定應(yīng)將請求轉(zhuǎn)發(fā)到的服務(wù)實(shí)例。

RouteDestination

字段

類型

是否必選

說明

host

string

K8s服務(wù)域名,例如mocka.default.svc.cluster.local

portNum

int

k8s服務(wù)端口。如8000

說明

使用此字段需要網(wǎng)格實(shí)例版本在1.21.4.104及以上。

相關(guān)文檔

  • 關(guān)于流量泳道的概念、使用場景,以及嚴(yán)格與寬松兩種模式的流量泳道對比,請參見流量泳道概述

  • 關(guān)于如何使用嚴(yán)格模式流量泳道實(shí)現(xiàn)全鏈路流量管理,請參見使用嚴(yán)格模式流量泳道

  • 關(guān)于如何使用寬松模式流量泳道實(shí)現(xiàn)全鏈路流量管理,請參見使用寬松模式流量泳道