如何在Mac M1上使用zsh安装gke-gcloud-auth-plugin?

33

我尝试在一台装有zsh的Mac M1上安装gke-gcloud-auth-plugin,并按照gcloud 文档进行操作。

安装过程没有问题,重新运行gcloud components install gke-gcloud-auth-plugin命令后,我收到了All components are up to date.的提示信息。

但是,gke-gcloud-auth-plugin --version命令返回了zsh: command not found: gke-gcloud-auth-plugin的错误信息,而同样以这种方式安装的kubectl可以正常工作。

我尝试使用brew来安装kubectl,但结果也没有成功。


我也是同样的情况,但我在使用bash的Intel Mac上... - Eric Meadows
积极的一面是,如果问题发生在不同的设置上,找到救我们的人的可能性更高。 - Amiel
3个回答

37
我遇到了同样的错误,这是我修复它的方法。
brew info google-cloud-sdk

生成的结果是:
To add gcloud components to your PATH, add this to your profile:

  for bash users
    source "$(brew --prefix)/share/google-cloud-sdk/path.bash.inc"

  for zsh users
    source "$(brew --prefix)/share/google-cloud-sdk/path.zsh.inc"
    source "$(brew --prefix)/share/google-cloud-sdk/completion.zsh.inc"

  for fish users
    source "$(brew --prefix)/share/google-cloud-sdk/path.fish.inc"


复制代码到你的终端,然后运行它(例如,对于zsh)。
source "$(brew --prefix)/share/google-cloud-sdk/path.zsh.inc"

将上述行添加到您的.zshrc配置文件中,以确保每次打开新终端时都加载它。
我最初使用Homebrew安装了gcloud sdk,命令是"brew install google-cloud-sdk"。当时,我阅读了注意事项,其中告诉您如何将gcloud组件添加到PATH中。
我同时安装了kubectl和gke-gcloud-auth-plugin,但在命令行中找不到它们。我得到了与OP相同的错误提示"command not found"。

6
对我来说,使用了稍微不同的路径:/opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc - Janosch
你刚才是不是在.zshrc文件中复制粘贴了那个路径? - samplecode3300
你刚刚是把那个路径复制粘贴到.zshrc文件里了吗? - undefined
@samplecode3300 - 是的,将这两行代码复制并粘贴到您的.zshrc文件中,不要进行任何更改。 - LHWizard
@samplecode3300 - 是的,请将这两行代码复制并粘贴到您的.zshrc文件中,不要进行任何修改。 - undefined
对我来说,自定义路径也起作用 - "/usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.zsh.inc"。我在"brew info google-cloud-sdk"命令的输出中找到了它。 - undefined

30
gcloud components install gke-gcloud-auth-plugin

我们开始吧:在此输入图像描述


这个完美地运作。干杯! - undefined
太棒了,感谢你的评论,非常感激!👍 - undefined

8

不确定在 macOS 上是否相同。您可以尝试以下操作:

export USE_GKE_GCLOUD_AUTH_PLUGIN=True

然后重新加载集群:

gcloud container clusters get-credentials clustername

猜测已经安装但未使用。

可能只需要将包含gke-gcloud-auth-plugin文件的目录添加到PATH中即可。

当您使用绝对路径调用它时,是否有效?

path/to/gke-gcloud-auth-plugin --version

使用以下命令查找文件:

sudo find / -name gke-gcloud-auth-plugin

谢谢,我尝试了但没有成功。我认为这可能可以使用绝对路径来解决 - 但问题是:我不知道它安装在哪里。我注意到并非所有gcloud组件都是相同的。例如,kubectl被安装在/usr/local/bin/kubectl中。 - Amiel
尝试输入:sudo find / -name gke-gcloud-auth-plugin - enceladus2022
1
谢谢!我是这样找到它的,然后我创建了一个符号链接到我的PATH文件夹。现在一切都正常了。我接受了你的答案,但我该怎么让你在评论中的建议更加突出呢? - Amiel
很高兴听到它有所帮助。我会在我的答案中添加它。谢谢。 - enceladus2022

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接