Как установить новый уровень ведения журнала на kube-proxy в работающем кластере
Есть ли способ изменить уровень ведения журнала на работающем кластере, особенно для одного компонента системы, такого как kube-proxy?
Я вижу некоторые обсуждения, связанные с этим:
https://github.com/kubernetes/test-infra/pull/4311 и кажется, что был создан какой-то механизм, но мне не ясно, как использовать этот механизм.
Этот вопрос возник из-за того, что мы устраняем неполадки при подключении к службе NodePort (которая должна проходить через kube-proxy), а на уровне по умолчанию --v=2 kube-proxy, похоже, не регистрирует ни одно из подключений, которые он прокси так стремясь увеличить его.
1 ответ
кажется, что был создан какой-то механизм, но мне не ясно, как использовать этот механизм
Я не видел в этом пиаре ничего такого, что заставило бы меня поверить, что есть динамика (то есть: без прекращения kube-proxy
) механизм для изменения уровней журнала. Нет никакого механизма регулировки динамического ведения журнала, о котором я знаю ни в одном из компонентов kubernetes.
Тем не мение, kube-proxy
(традиционно) работает в Docker-контейнере, как и любой другой Pod, и, следовательно, может быть перезапущен после завершения. Так что просто обновите его --v
в манифесте, убить контейнер (тот, без Pod
в его названии), и kubelet
начнет kube-proxy
обратно, теперь с новым --v
уровень.
(который должен пройти через Kube-прокси)
Просто для ясности, kube-proxy
только управляет iptables
правила в его конфигурации по умолчанию, и поэтому никакой трафик не проходит через него, о котором я знаю. Вот почему на самом деле безопасно просто перезапустить kube-proxy
по желанию.
Вы можете изучить правила, которые он вводит в действие с обычным iptables -t nat -L
команда и kube-proxy
Это даже достаточно полезно, чтобы добавить комментарии к правилам, показывающие, какую службу kubernetes они представляют.