问题标签 [kubeconfig]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
131 浏览

kubernetes - 如何使用 kubectl 工具(以有状态/本地方式)同时管理来自不同目录的多个集群?

有没有办法可以在“会话”中运行 kubectl,以便它从本地目录而不是从本地目录获取 kubeconfig ~/.kubeconfig

示例用例

鉴于问题的抽象性质,值得描述为什么这在示例中可能很有价值。如果有人有一个应用程序,称之为“a”,并且他们有 4 个 kubernetes 集群,每个集群都运行 a,他们可能有一个简单的脚本,该脚本kubectl在每个集群中执行一些操作来冒烟测试 A 的新部署,例如,他们可能想要部署该应用程序,并查看之后在每个集群中自动扩展了多少个它的副本。

示例解决方案

就像在 git 中一样,也许可以将“如果你能找到一个本地 kubeconfig 文件”作为 git 风格的全局设置:

然后,在一个终端中:

然后,在另一个终端:

因此,完全相同的 kubectl 命令(无需设置上下文)实际上针对新集群运行,具体取决于您所在的目录。

解决方案的一些想法

  • 我对此的一个想法是编写一个 kubectl-context 插件,它以某种方式使 kubectl 总是检查本地 kubeconfig,如果可以的话,在运行之前将上下文设置为全局配置中与目录名称匹配的上下文。

  • 我的另一个想法是创建不同的用户,每个用户都有不同的 kubeconfig 主文件。

  • 当然,使用 virtualenv 之类的东西,你也许可以做一些 kubeconfig 文件有自己不同价值的事情。

最后的想法

最终,我认为这里的目标是颠覆 ~/.kubeconfig 文件具有任何特定含义的想法,而是着眼于在同一台机器上可以使用许多 kubeconfig 文件的方式,但是,不仅仅是使用--kubeconfig选项,而是,这样状态仍然以目录本地方式维护。

0 投票
1 回答
804 浏览

kubernetes - 如何在不创建新配置文件的情况下快速将 --pod-manifest-path 传递给 kubelet?

运行kubelet --pod-manifest-path=/newdir返回错误。

我不清楚在哪里可以将其添加到Ubuntu--pod-manifest-path上的 systemd 文件中。我知道有 KubeletConfiguration 类型,但我正在使用.v1.12v1.11

0 投票
2 回答
1999 浏览

kubectl - 带有用于服务帐户的自定义 kubeconfig 文件的 kubectl 会出现未经授权的错误

我创建了一个 serviceaccount 并为该服务帐户创建了一个 kubeconfig,但是当我运行 kubectl --kubeconfig=sa.kubeconfig get nodes or get pods 我首先收到错误:> error:You must be logged in to the server (Unauthorized).
现在我收到了消息error: the server doesn't have a resource type "svc"

这是创建sa、role和rolebinding的yaml文件

然后,我为服务帐户创建了 kubeconfig 文件。

有人看到我做错了吗?

0 投票
1 回答
435 浏览

kubernetes - KubeConfig 文件是如何使用的?

当我们使用 kubeadm init 设置 kubernetes master 时。在该过程结束时,我们必须将 /etc/kubernetes/admin.conf 复制到 $home/.kube/config 。

当我打开文件时,我发现了以下详细信息。

  • 证书颁发机构数据
  • 客户证书数据
  • 客户关键数据

我知道当我们尝试使用 kubectl 访问集群时,该文件用于身份验证。

我想了解的是这些细节是从哪里生成的?.

0 投票
0 回答
79 浏览

kubernetes - Kubernetes 资源在命名空间之间跳转

我有一个 Kubernetes 集群,它有 5 种不同的服务。集群部署后,我可以运行:

看看我所有的豆荚。但是几分钟后,当我再次运行相同的命令时,我看到:

而且我只能在运行后看到我的豆荚:

有人可以解释我的问题是什么吗?

0 投票
2 回答
3802 浏览

kubernetes - 在自定义 helm 图表中禁用子图表

我创建了一个自定义舵图,其中elastic-stack包含以下配置的子图。

我不明白为什么我必须在内部定义enabled标签elasatic-stack:和所有其他配置?

这是正常的掌舵行为还是弹性堆栈图表中的一些错误配置?

0 投票
2 回答
3857 浏览

python - 如何在 python openshift rest 客户端中使用 load_incluster_config 时修复“没有这样的文件或目录:'/home/jenkins/.kube/config'”

我编写了一个脚本来检查 OpenShift 集群中的一些秘密。我为 Openshift 使用了 python rest-client 库,脚本在集群中执行。但我总是得到 IOError: [Errno 2] No such file or directory: '/home/jenkins/.kube/config'

我知道我在 pod 中没有 kube 配置,因此我尝试使用该kubernetes.config.load_incluster_config()方法来启用集群配置。

我假设不再需要通过 load_incluster_config 调用提供 kube 配置。是否有人使用服务帐户解决了其余客户端和 openshift 在集群执行中的问题?

我感谢任何帮助,谢谢。

0 投票
3 回答
1134 浏览

kubernetes - 如何安全地将 kubeconfig 提供给 kubectl

我们的用户只能从管理站访问 Kubernetes 集群,无法直接从他们的笔记本电脑/工作站访问 API。

每个用户都拥有属于该特定用户的相关秘密的 kubeconfig。由于 kubeconfig 还包含用于针对 Kubernetes API 进行身份验证的令牌,因此无法将 kubeconfig“按原样”存储在管理站文件系统上。

有什么方法可以通过 STDIN 向 kubectl 提供令牌/kubeconfig,而不是将其暴露给文件系统上的其他用户(例如管理站的管理员)?

0 投票
1 回答
6285 浏览

kubernetes - 在准备好的 Kubernetes 本地集群上的 Kube 代理中启用 IPVS 模式

我想在现有集群中为 IPVS 启用 Kube-proxy 模式。目前,它在 IPtables 上运行。如何在不影响现有工作负载的情况下将其更改为 IPVS?

我已经安装了所有必需的模块来启用它。另外,我的集群是使用 kubeadm 安装的,但是在安装过程中我没有使用配置文件。在我的集群上启用 IPVS 的命令应该是什么。

文件1

文档2

0 投票
1 回答
280 浏览

kubernetes - 如何在 .kube/config 中使用生成的 kubeconfig 文件

我正在使用数字海洋来部署托管的 kubernetes 集群,它给了我一个配置文件供我下载。如何将下载的 .yaml 文件与 /.kube 目录中的默认配置文件一起使用?

我尝试合并配置文件,但没有成功。有什么简单的方法可以让它工作吗?