Cliente Kubernetes python: problema de autenticación

Estamos usando el cliente de python kubernetes (4.0.0) en combinación con el motor kubernetes de google (master + nodepools run k8s 1.8.4) para programar periódicamente cargas de trabajo en kubernetes. La versión simplificada del script que utilizamos para crear el pod, adjuntarlo a los registros e informar el estado final del pod se ve de la siguiente manera:

config.load_kube_config(persist_config=False)
v1 = client.CoreV1Api()
v1.create_namespaced_pod(body=pod_specs_dict, namespace=args.namespace)
logging_response = v1.read_namespaced_pod_log(
    name=pod_name,
    namespace=args.namespace,
    follow=True,
    _preload_content=False
)
for line in logging_response:
    line = line.rstrip()
    logging.info(line)
status_response = v1.read_namespaced_pod_status(pod_name, namespace=args.namespace)
print("Pod ended in status: {}".format(status_response.status.phase))

Todo funciona bastante bien, sin embargo, estamos experimentando algunos problemas de autenticación. La autenticación se realiza por defectogcp auth-provider, para el que obtuve el token de acceso inicial ejecutando unkubectl container cluster get-credentials manualmente en el planificador. En algunos marcos de tiempo aleatorios, algunas llamadas API dan como resultado una respuesta 401 del servidor API. Supongo que esto sucede cada vez que el token de acceso caduca, y el script intenta obtener un nuevo token de acceso. Sin embargo, sucede que varios scripts se ejecutan simultáneamente en el planificador, lo que resulta en la obtención de una nueva clave de API varias veces, de las cuales solo una es válida. Probé varias formas de solucionar el problema (usepersist_config=True, vuelva a intentar 401 después de volver a cargar la configuración, ...) sin ningún éxito. Como no estoy completamente consciente de cómo funcionan la autenticación gcp y la configuración del cliente kubernetes python (y los documentos para ambos son bastante escasos), me quedo un poco en la oscuridad.

¿Deberíamos usar otro método de autenticación en lugar delgcp proveedor de autenticación? ¿Es esto un error en el cliente de python kubernetes? ¿Deberíamos usar múltiples archivos de configuración?

Respuestas a la pregunta(2)

Su respuesta a la pregunta