kubectl连接不同集群的方法
有的时候我们有多个集群需要连接,比如自建k8s集群、云上的容器服务等等。因为云上的容器服务我们的master节点可能是托管在云上的,因此如果我们需要连接我们云上的集群,或者是不同集群切换连接,我们需要怎么操作呢?请接着往下看!首选我们需要使用kubectl 连接到Kubernetes集群,因此您需要有一台安装了kubectl的终端,是master节点还是node节点是无所谓的。安装 Kubectl
有的时候我们有多个集群需要连接,比如自建k8s集群、云上的容器服务等等。因为云上的容器服务我们的master节点可能是托管在云上的,因此如果我们需要连接我们云上的集群,或者是不同集群切换连接,我们需要怎么操作呢?请接着往下看!
首选我们需要使用kubectl 连接到Kubernetes集群,因此您需要有一台安装了kubectl的终端,是master节点还是node节点是无所谓的。
安装 Kubectl 工具
参考https://kubernetes.io/docs/tasks/tools/,安装 Kubectl 工具。
说明: 如果您已经安装 Kubectl 工具,请忽略本步骤。 此步骤以 Linux 系统为例。
执行以下命令,添加执行权限。
chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl version
Client Version: version.Info{Major:"1", Minor:"5", GitVersion:"v1.5.2", GitCommit:"08e099554f3c31f6e6f07b448ab3
首先要明白一点,kubectl是如何连接到集群的:
在我们刚搭建好集群的时候,有如下的输出,可以看到这里是讲config文件添加到系统的环境变量里去的:
用于配置集群访问的文件有时被称为 kubeconfig 文件。 这是一种引用配置文件的通用方式,并不意味着存在一个名为 kubeconfig 的文件。
现在我们尝试去连接另外一个集群 -->> 腾讯云TKE集群:
这里如果你的终端和这个集群不在同一个vpc下的话,就需要开通外网访问,说明一下:已放通IP地址:0.0.0.0/0是很不安全的,在生产环境中不要这样使用,这里只是做演示。如果和TKE集群是同一个vpc的话,开通内网访问就好,安全性也更高一些。
然后我们需要下载这个Kubeconfig文件,如下图:
然后我们把这个Kubeconfig文件添加到我们终端的/root/.kube/文件夹下:
上面的图里我们可以看到有两个Kubeconfig文件,一个是本机集群的文件,另外一个是腾讯云TKE集群的文件。
目前我们连接的是本机的集群,现在我们连接到腾讯云TKE集群试下:
export KUBECONFIG=~/.kube/cls-xxxxxxbqt-config
kubectl config get-contexts
上图我们能看到我们已经连接到了腾讯云TKE集群上了
同理使用:
export KUBECONFIG=~/.kube/config
把集群切换到本地集群
更多推荐
所有评论(0)