Как изменить глобальный параметр istio в sidecar inject-config.yaml - PullRequest
1 голос
/ 07 мая 2019

Я пытаюсь изменить значение параметра глобальной конфигурации istio initialDelaySeconds значение в inject-config.yaml

initialDelaySeconds: [[ annotation .ObjectMeta `readiness.status.sidecar.istio.io/initialDelaySeconds`  1  ]]

, когда я пробую приведенный ниже пример кода для моего initialDelaySeconds, я получаю ошибку ..

$ kubectl get cm istio-sidecar-injector -n istio-system -o yaml | sed -e "s initialDelaySeconds: 1/ initialDelaySeconds: 10/" | kubectl apply -f -

Ошибка ниже:

 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.

Какой правильный синтаксис для изменения моего глобального параметра в sidecar inject-config.xml

Кроме того, приведенный ниже фрагмент кода работает для меня rewriteAppHTTPProbe

$ kubectl get cm istio-sidecar-injector -n istio-system -o yaml | sed -e "s/ rewriteAppHTTPProbe: false/ rewriteAppHTTPProbe: true/" | kubectl apply -f -

Ответы [ 3 ]

1 голос
/ 07 мая 2019

Обычный kubectl edit cm будет работать только для открытого исходного кода Istio.

В противном случае, если вы используете Istio в качестве надстройки кластера GKE, это будет немного сложнее, потому что все изменения согласовываются микшером, работающим на главном узле. Что вы можете сделать, так это сбросить свою конфигурационную карту -> injection-cm, внести необходимые изменения и затем использовать ее для ручных инъекций, т.е.

istioctl kube-inject -f deployment.yaml --injectConfigMapName injection-cm

Подробнее здесь

1 голос
/ 07 мая 2019

Вы можете просто использовать kubectl edit для редактирования карты конфигурации:

kubectl edit cm istio-sidecar-injector -n istio-system
1 голос
/ 07 мая 2019

поделитесь приведенным ниже файлом yaml, если это возможно istio-sidecar-инжектор -n istio-система -o yaml

попробуйте это

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
...