Я пытаюсь передать сертификаты mTLS на входной шлюз istio через файлы, а не через секреты. Контейнер инициализации Vault будет хранить сертификаты по адресу
/etc/istio/ingressgateway-certs/tls.key
/etc/istio/ingressgateway-certs/tls.cert
/etc/istio/ingressgateway-ca-certs/ca-chain.cert.pem
Итак, я пытаюсь удалить секретный элемент с помощью патча, подобного этому
- path: spec.template.spec.volumes[name:ingressgateway-ca-certs].emptyDir
value: {}
- path: spec.template.spec.volumes[name:ingressgateway-certs].emptyDir
value: {}
- path: spec.template.spec.volumes[name:ingressgateway-certs].secret
- path: spec.template.spec.volumes[name:ingressgateway-certs].secret.secretName
- path: spec.template.spec.volumes[name:ingressgateway-ca-certs].secret.secretName
- path: spec.template.spec.volumes[name:ingressgateway-ca-certs].secret
Но это не работает. Док говорит: «Для удаления значение не должно быть установлено».
https://istio.io/latest/docs/reference/config/istio.operator.v1alpha1/#K8sObjectOverlay-PathValue
Команда генерации istioctl manifest по-прежнему включает секретный раздел. Я также попытался установить значение unset, но (как предполагалось) в конечном итоге использовал unset в качестве буквального значения для секретного имени. Любые указатели приветствуются.