Istio 注入带有 secret 和 configmap 的应用程序
Istio injection with an app with secret and configmap
我正在尝试使用 Istio/envoy 入口测试 SSL 直通,因为我能够使用 nginx 入口控制器实现它。
所以我创建了一个 nginx https 部署并测试了 deployment/pod/service 的效果。
但是,当我像往常一样运行时,kubectl apply -f <(istioctl kube-inject -f ~/nginx/nginx-app.yaml)
部署不会继续(因此没有创建 pod)。
似乎是卷和装载导致了问题。 Istio 似乎也在尝试挂载这些。
spec:
volumes:
- name: secret-volume
secret:
secretName: nginxsecret
- name: configmap-volume
configMap:
name: nginxconfigmap
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
ports:
- containerPort: 80
- containerPort: 443
volumeMounts:
- mountPath: /etc/nginx/ssl
name: secret-volume
- mountPath: /etc/nginx/conf.d
name: configmap-volume
有没有人有见识?
谢谢!
我找到了解决办法。
与https://github.com/istio/istio/issues/3548有关
该问题已修复但尚未合并。
所以解决方法是添加 sidecar.istio.io/inject: "false"
例如
spec:
replicas: 1
template:
metadata:
annotations:
sidecar.istio.io/inject: "false"
labels:
app: nginx
我正在尝试使用 Istio/envoy 入口测试 SSL 直通,因为我能够使用 nginx 入口控制器实现它。 所以我创建了一个 nginx https 部署并测试了 deployment/pod/service 的效果。
但是,当我像往常一样运行时,kubectl apply -f <(istioctl kube-inject -f ~/nginx/nginx-app.yaml)
部署不会继续(因此没有创建 pod)。
似乎是卷和装载导致了问题。 Istio 似乎也在尝试挂载这些。
spec:
volumes:
- name: secret-volume
secret:
secretName: nginxsecret
- name: configmap-volume
configMap:
name: nginxconfigmap
containers:
- image: nginx
imagePullPolicy: Always
name: nginx
ports:
- containerPort: 80
- containerPort: 443
volumeMounts:
- mountPath: /etc/nginx/ssl
name: secret-volume
- mountPath: /etc/nginx/conf.d
name: configmap-volume
有没有人有见识?
谢谢!
我找到了解决办法。
与https://github.com/istio/istio/issues/3548有关
该问题已修复但尚未合并。
所以解决方法是添加 sidecar.istio.io/inject: "false"
例如
spec:
replicas: 1
template:
metadata:
annotations:
sidecar.istio.io/inject: "false"
labels:
app: nginx