Încerc să rulez google cloud python sdk din interiorul unui pod k8, rulând pe motorul de calcul Google. Există un cont de serviciu atașat la VM, care îi oferă acces la managerul de secrete. Pot accesa managerul de secrete de la gazdă, cu toate acestea, rulând python sdk de la podul k8 se plâng că nu pot accesa serviciul de metadate
>>> secret_id = 'unskript_test'
>>> nume = client.secret_path(project_id, secret_id)
>>> răspuns = client.get_secret(cerere={"nume": nume})
Traceback (cel mai recent apel ultimul):
Fișierul „/opt/conda/lib/python3.7/site-packages/google/api_core/grpc_helpers.py”, rândul 67, în error_remapped_callable
returnează apelabil_(*args, **kwargs)
Fișierul „/opt/conda/lib/python3.7/site-packages/grpc/_channel.py”, linia 946, în __call__
return _end_unary_response_blocking(state, call, False, None)
Fișierul „/opt/conda/lib/python3.7/site-packages/grpc/_channel.py”, rândul 849, în _end_unary_response_blocking
ridică _InactiveRpcError(stare)
grpc._channel._InactiveRpcError: <_InactiveRpcError a RPC care s-a încheiat cu:
status = StatusCode.UNAVAILABLE
detalii = „Obținerea metadatelor de la plugin a eșuat cu eroare: nu s-a putut prelua http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true din serviciul de metadate Google Compute Engine. Metadatele Compute Engine Server indisponibil"
debug_error_string = "{"created":"@1630634901.103779641","description":"Obținerea metadatelor de la plugin a eșuat cu eroare: nu s-a putut prelua http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default /?recursive=true din serviciul de metadate Google Compute Engine. Server de metadate Compute Engine indisponibil","file":"src/core/lib/security/credentials/plugin/plugin_credentials.cc","file_line":90,"grpc_status":14}"
>
metadata.google.internal nu se rezolvă din podul k8
jovyan@jovyan-25ca6c8c-157d-49e5-9366-f9d57fcb7a9f:~$ wget http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true
--2021-09-03 02:11:19-- http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true
Rezolvarea metadata.google.internal (metadata.google.internal)... nu a reușit: Numele sau serviciul nu se cunoaște.
wget: nu se poate rezolva adresa gazdei âmetadata.google.internalâ
Cu toate acestea, gazda este capabilă să o rezolve
ubuntu@gcp-test-proxy:~$ wget http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true
--2021-09-03 02:11:27-- http://metadata.google.internal/computeMetadata/v1/instance/service-accounts/default/?recursive=true
Se rezolvă metadata.google.internal (metadata.google.internal)... 169.254.169.254
Se conectează la metadata.google.internal (metadata.google.internal)|169.254.169.254|:80... conectat.
Solicitare HTTP trimisă, așteaptă răspuns... 403 Interzis
2021-09-03 02:11:27 EROARE 403: Interzis.
Cum pot face ca podul să rezolve metadata.google.internal?