I am trying to change istio global config parameter initialDelaySeconds value in inject-config.yaml
initialDelaySeconds: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/initialDelaySeconds` 1 ]]when i try below code sample for my initialDelaySeconds i am getting error..
$ kubectl get cm istio-sidecar-injector -n istio-system -o yaml | sed -e "s initialDelaySeconds: 1/ initialDelaySeconds: 10/" | kubectl apply -f -Getting below error
sed: -e expression #1, char 28: unknown option to `s'
error: no objects passed to apply
error: write /dev/stdout: The pipe has been ended.what is correct syntax to change my global parameter in sidecar inject-config.xml
Also below code snippet works for me for rewriteAppHTTPProbe
$ kubectl get cm istio-sidecar-injector -n istio-system -o yaml | sed -e "s/ rewriteAppHTTPProbe: false/ rewriteAppHTTPProbe: true/" | kubectl apply -f -you could just use kubectl edit to edit the configmap:
kubectl edit cm istio-sidecar-injector -n istio-systemRegular kubectl edit cm will work only for open source Istio.
Otherwise, if you are using Istio as GKE cluster add-on it'll be a bit tricky, because all edits are getting reconciled by mixer running on the master node. What you can do is to dump your configmap --> injection-cm, make edits you want and then use it for manual injections, i.e.
istioctl kube-inject -f deployment.yaml --injectConfigMapName injection-cmMore info here
share the below yaml file if possible istio-sidecar-injector -n istio-system -o yaml
try this
kubectl get cm istio-sidecar-injector -n istio-system -o yaml | sed -e "s/rewriteAppHTTPProbe: false/grewriteAppHTTPProbe: true/g" | kubectl apply -f -
master $ cat testfile
initialDelaySeconds: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/initialDelaySeconds` 1]]
sed -i '/initialDelaySeconds:/c\initialDelaySeconds: 10' testfile
master $ cat testfile
initialDelaySeconds: 10