簡體   English   中英

Istio 網關內部代理

[英]Istio gateway internal proxy

我正在尋找一個內部集群代理,在 Istio 的網關文檔中我發現了以下內容:

您還可以使用網關來配置純內部代理

所以我的問題是我怎么能做到這一點? 我假設它的具體實現只是在集群上運行的單個特使。 對於網關的清單,選擇器是必需的,大多數情況下它是處理來自集群外部的流量的入口網關。 在我的情況下,選擇器應該是什么,因為我需要內部實現?

您可以為此使用 istio mesh網關。

istio 文檔中有一個示例,請查看粗體字體。

For example, the following VirtualService splits traffic for https://uk.bookinfo.com/reviews , https://eu.bookinfo.com/reviews , http://uk.bookinfo.com:9080/reviews , http:/ /eu.bookinfo.com:9080/reviews在端口 9080 上分為兩個版本(prod 和 qa)的內部評論服務。此外,包含 cookie “user: dev-123” 的請求將被發送到特殊端口 7777 qa 版。 同樣的規則也適用於網格內部對“reviews.prod.svc.cluster.local”服務的請求。 This rule is applicable across ports 443, 9080. Note that http://uk.bookinfo.com gets redirected to https://uk.bookinfo.com (ie 80 redirects to 443).

apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
  name: bookinfo-rule
  namespace: bookinfo-namespace
spec:
  hosts:
  - reviews.prod.svc.cluster.local
  - uk.bookinfo.com
  - eu.bookinfo.com
  gateways:
  - some-config-namespace/my-gateway
  - mesh # applies to all the sidecars in the mesh
  http:
  - match:
    - headers:
        cookie:
          exact: "user=dev-123"
    route:
    - destination:
        port:
          number: 7777
        host: reviews.qa.svc.cluster.local
  - match:
    - uri:
        prefix: /reviews/
    route:
    - destination:
        port:
          number: 9080 # can be omitted if it's the only port for reviews
        host: reviews.prod.svc.cluster.local
      weight: 80
    - destination:
        host: reviews.qa.svc.cluster.local
      weight: 20

由於文檔中沒有很好地描述,我准備了兩個帶有 nginx pod 的示例,請查看此處此處

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM