首页 > 解决方案 > Kubectl 和几个 AWS 账户

问题描述

我在 AWS 上使用 EKS 服务,并使用 kubectl 来管理所有 kubernetes 基础设施。我有几个 aws 配置文件,我需要在需要时在这些配置文件之间切换。

为了在不同的 aws 帐户中调用相同的 kubectl 命令,从 aws 配置文件切换到另一个配置文件的最佳方法是什么?

谢谢

标签: amazon-web-serviceskuberneteskubectl

解决方案


在您的~/.kube/config中,您可以设置要使用的配置文件。

例子:

users:
- name: arn:aws:eks:us-east-1:########:cluster/production
  user:
    exec:
      apiVersion: client.authentication.k8s.io/v1alpha1
      args:
      - --region
      - us-east-1
      env:
      - name: AWS_PROFILE
        value: <my-profile>
      command: aws

如果您需要更改它,您可以编辑该文件。

如果您希望能够更轻松地更改配置文件,另一种选择是为每个配置文件创建单独的配置文件。然后在运行命令时,可以设置KUBECONFIG值:KUBECONFIG=~/.kube/config-alternate kubectl .... 为了更容易使用,它也可以被别名化。如果有更简单的方法,我不知道。


推荐阅读