kubectl не требует Python, но gcloud делает.
Вот часть исходного кода gcloud (на самом деле он написан на bash):
# CLOUDSDK_ROOT_DIR (a) installation root dir
# CLOUDSDK_PYTHON (u) python interpreter path
# CLOUDSDK_PYTHON_ARGS (u) python interpreter arguments
# CLOUDSDK_PYTHON_SITEPACKAGES (u) use python site packages
...
# Cloud SDK requires python 2.7
case $CLOUDSDK_PYTHON in
*python2*)
;;
*python[0-9]*)
CLOUDSDK_PYTHON=
;;
esac
# if CLOUDSDK_PYTHON is empty
if [ -z "$CLOUDSDK_PYTHON" ]; then
# if python2 exists then plain python may point to a version != 2
if which python2 >/dev/null; then
CLOUDSDK_PYTHON=python2
elif which python2.7 >/dev/null; then
# this is what some OS X versions call their built-in Python
CLOUDSDK_PYTHON=python2.7
else
CLOUDSDK_PYTHON=python
fi
fi
Итакпроверьте переменные окружения, чтобы понять, что происходит при запуске gcloud.
В качестве простого обходного пути вы можете установить python2 с помощью homebrew или просто создать символическую ссылку python2 -> python:
sudo ln -s `which python` $(dirname `which python`)/python2
Другой способ - настроить параметры pyenv, как описано в Документация pyenv , чтобы получить необходимые версии python.