Istio侧面汽车外部存储安装问题

时间:2019-06-27 19:29:49

标签: azure istio grpc-java envoyproxy

我正在使用istio sidecar自动注入,我有grpc transcrpter Envoy Fliter,它需要一个文件安装在Azure的共享驱动器上。但是side car无法挂载该目录,因为我的吊舱中有挂载配置。< / p>

  

apiVersion:networking.istio.io/v1alpha3类型:EnvoyFilter元数据:   名称:{{.Values.filter.name}}命名空间:{{.Values.namespace}}

     

spec:workloadLabels:app:{{.Values.grpc.appname}}过滤器:

     

listenerMatch:端口号:50051侦听器类型:SIDECAR_INBOUND   listenerProtocol:HTTP insertPosition:索引:FIRST relativeTo:   envoy.router filterName:envoy.grpc_json_transcoder filterType:HTTP   filterConfig:protoDescriptor:{{.Values.storage.mount}} / {{   .Values.filter.file}}服务:com.demo.DemoService printOptions:   alwaysPrintPrimitiveFields:真

我的pod文件中有

  

volumeMounts:   -mountPath:{{.Values.storage.mount}}名称:{{.Values.storage.volume}}

  

卷:   -名称:{{.Values.storage.shareume}} azureFile:secretName:{{.Values.storage.secret}} shareName:{{.Values.storage.shareName}}   readOnly:是

特使筛选器抱怨选择此文件,因为找不到路径。

为解决此问题,我禁用了Auto istio侧车注入,并根据以下说明添加了安装座。 https://istio.io/docs/setup/kubernetes/additional-setup/sidecar-injection/

1 个答案:

答案 0 :(得分:0)

我认为在您的特定情况下,您仍然可以依靠自动istio-sidecar-injector,并使用要进行注射的Pod的sidecar.istio.io/userVolume注释。顾名思义,它使您可以在sidecar-injector模板中以JSON格式配置用户定义的卷。

您可以找到其用法here的示例。