首页 > 解决方案 > 使用 rancher 直接寻址 kubernetes API

问题描述

我们有一个由 8 台机器组成的牧场主集群:

最近,我们的牧场主服务器丢失了。在.kube/configrancher 生成的文件中,引用的服务器是 rancher server :

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: XXX
    server: https://1.2.3.4/k8s/clusters/c-qz7pq
  name: k8s

但是,即使 Rancher 服务器没有启动,kubernetes 集群仍然启动并运行,但无法使用 kubectl 命令行连接到它,因为在 中引用的 Rancher 服务器.kube/config已关闭。我尝试在其中添加控制平面 ip 代替 Rancher 服务器 ip,.kube/config但它不起作用。

有没有办法直接处理与 rancher 一起使用的 kubernetes API?

牧场主版本:2.1.3

Kubernetes 版本:1.11.5

标签: kubernetesrancher

解决方案


目前没有办法做到这一点,但我们正在努力,你可以在这里跟踪它的进展: https ://github.com/rancher/rancher/issues/13698

如果集群由 GKE、AKS 或 EKS 提供,您可以直接访问云提供商提供的权限。意思是,你可以登录他们的 UI 并基本上获得超级管理员级别的 kubeconfig

对于基于 RKE 的集群,直接到 k8s 的超级管理员 kubeconfig 不容易暴露,但这将通过我提到的上述特性来解决


推荐阅读