Cliente python Kubernetes: problema de autenticação

Estamos usando o cliente python do kubernetes (4.0.0) em combinação com o mecanismo kubernetes do google (master + nodepools executam o k8s 1.8.4) para agendar periodicamente as cargas de trabalho no kubernetes. A versão simplificada do script que usamos para criar o pod, anexar aos logs e relatar o status final do pod é o seguinte:

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

Tudo funciona muito bem, no entanto, estamos com alguns problemas de autenticação. A autenticação acontece através do padrãogcp auth-provider, para o qual obtive o token de acesso inicial executando umkubectl container cluster get-credentials manualmente no agendador. Em alguns períodos aleatórios, algumas chamadas de API resultam em uma resposta 401 do servidor de API. Meu palpite é que isso acontece sempre que o token de acesso expira e o script tenta obter um novo token de acesso. No entanto, vários scripts estão em execução simultaneamente no planejador, resultando na obtenção de uma nova chave de API várias vezes, das quais apenas uma ainda é válida. Tentei várias maneiras de corrigir o problema (usepersist_config=True, tente novamente o 401 após recarregar a configuração, ...) sem êxito. Como não estou completamente ciente de como a autenticação gcp e a configuração do cliente python do kubernetes funcionam (e os documentos para ambos são bastante escassos), fico um pouco no escuro.

Devemos usar outro método de autenticação em vez dogcp provedor de autenticação? Isso é um bug no cliente python do kubernetes? Devemos usar vários arquivos de configuração?

questionAnswers(2)

yourAnswerToTheQuestion