Sidecar資源
更新時間 2024-09-09 19:47:58
最近更新時間: 2024-09-09 19:47:58
分享文章
本章節介紹服務網格Sidecar資源
概述
默認情況下,服務網格內的sidecar可以訪問到網格內的所有服務,也可以被網格內所有其他服務訪問到。Sidecar資源可以實現對網格內的sidecar更新粒度的配置,包括開放的端口、協議,可以訪問的服務等。
Sidecar資源創建
- 登錄服務網格控制臺,選擇流量管理中心 > Sidecar資源菜單,選擇相應的命名空間。
- 選擇使用YAML創建,目前提供了配置模板,可以基于模板修改或者自己編輯配置。

Sidecar資源修改
- 登錄服務網格控制臺,選擇流量管理中心 -> Sidecar資源菜單,選擇相應的命名空間。
- 在Sidecar資源列表右側操作欄可以看到編輯按鈕,可以對已創建的Sidecar資源進行編輯修改。
Sidecar資源刪除
- 登錄服務網格控制臺,選擇流量管理中心 > Sidecar資源菜單,選擇相應的命名空間。
- 在Sidecar資源列表右側操作欄可以看到刪除按鈕,可以刪除已創建的Sidecar資源。
下面的例子在prod-us1命名空間下定義了名為default的Sidecar配置,對于被選中的sidecar,只允許訪問prod-us1、prod-apis 和istio-system命名空間下的服務。
apiVersion: networking.istio.io/v1beta1
kind: Sidecar
metadata:
name: default
namespace: prod-us1
spec:
egress:
- hosts:
- "prod-us1/*"
- "prod-apis/*"
- "istio-system/*"
Sidecar配置說明如下:
| 字段 | 類型 | 必選 | 說明 |
|---|---|---|---|
| workloadSelector | WorkloadSelector | No | Sidecar資源應用到pod的選擇器。 |
| ingress | []IstioIngressListener | No | sidecar入流量配置。 |
| egress | []IstioEgressListener | No | sidecar出流量配置。 |
| outboundTrafficPolicy | OutboundTrafficPolicy | No | 外部訪問策略,可選項: 1,REGISTRY_ONLY:只允許訪問網格注冊中心的服務。 2,ALLOW_ANY:允許訪問所有服務。 |
IstioIngressListener
定義sidecar入流量監聽器的配置,具體配置項如下:
| 字段 | 類型 | 必選 | 說明 |
|---|---|---|---|
| port | Port | Yes | 監聽器端口配置。 |
| bind | string | No | 監聽器綁定的ip。 |
| captureMode | CaptureMode | No | 監聽器流量攔截策略。 |
| defaultEndpoint | string | Yes | 流量轉發的默認目標地址,可以是ip端口或者Unix domain socket。 |
| tls | ServerTLSSettings | No | 外部請求訪問的TLS卸載相關的配置。 |
IstioEgressListener
定義了出流量的監聽器配置,具體說明如下:
| 字段 | 類型 | 必選 | 說明 |
|---|---|---|---|
| port | Port | No | 監聽器端口。 |
| bind | string | No | 監聽器地址,可以是IP或者unix domain socket。 |
| captureMode | CaptureMode | No | 流量攔截策略。 |
| hosts | string | Yes | 當前sidecar可以訪問的外部服務列表,采用namespace/dnsName格式。 |