通过kubeconfig同时连接多个K8S集群

  1. 修改两个kubeconfig.json的内容

    {
        "kind": "Config",
        "apiVersion": "v1",
        "preferences": {},
        "clusters": [ {
            "name": "externalCluster", # 修改这里-1
            "cluster": {
                "server": "https://119.xxx.xxx.xxx:5443",
                "insecure-skip-tls-verify": true
            }
        }],
        "users": [{
            "name": "user", # 修改这里-2
            "user": {
                "client-certificate-data": "LS0tLS1CRUdJTxM...",
                "client-key-data": "LS0tLS1CRUdJTiB...."
            }
        }],
        "contexts": [{
            "name": "external", # 修改这里-3
            "context": {
                "cluster": "externalCluster", # 修改这里-1
                "user": "user" # 修改这里-2
            }
        }],
        "current-context": "external" # 修改这里-3
    }
    
  2. 合并kubeconfig.json

    # 备份原始 kubeconfig 文件
    cp ~/.kube/config ~/.kube/config.bak
    
    # 合并 kubeconfig1.json 和 kubeconfig2.json
    KUBECONFIG=kubeconfig1.json:kubeconfig2.json kubectl config view --flatten > ~/.kube/config
    
  3. 使用方式

    # 切换集群
    kubectl config use-context Cluster-A-Context
    # 查看集群信息
    kubectl cluster-info
    
posted @ 2025-04-29 13:34  凨筝  阅读(21)  评论(0)    收藏  举报