Можно ли наблюдать за всеми событиями в кластере Kubernetes с помощью Python API?
Используя Python API kubernetes<вы должны указать события для просмотра? Можно ли смотреть все события в кластере
1 ответ
Да.
Я почти уверен, что есть библиотека Python, которая уже реализует это, но в моем случае я реализую ее с помощью команды: --watch-only
Например: kubectl get pods --watch-only > -> покажет только изменения в модулях. Создание процесса Python, который собирает информацию из, вызовет только новые изменения.
Из того, что я понимаю, вы ищете это.
import kubernetes as k8s
core_api = k8s.client.CoreV1Api()
watcher = k8s.watch.Watch()
stream = watcher.stream(core_api.list_event_for_all_namespaces, timeout_seconds=5)
for raw_event in stream:
logging.info("Kubernetes Event: %s %s" % (raw_event['type'],raw_event['object'].metadata.name))
Я не тестировал фрагмент, но он должен работать.