标签: kubeconfig

kubelet 和 apriserver 随着 minikube 停止

我对 Kubernetes 完全陌生。我试图在本地机器上使用 minikube。我已经在本地安装了 kubectl 和 minikube。当我跑步时

minikube start --vm-driver=virtualbox # and then 
minikube status
Run Code Online (Sandbox Code Playgroud)

我的输出是

E0512 23:33:45.964815   23423 status.go:233] kubeconfig endpoint: extract IP: "minikube" 
does not appear in  /.kube/config
m01
host: Running
kubelet: Stopped
apiserver: Stopped
kubeconfig: Misconfigured
WARNING: Your kubectl is pointing to stale minikube-vm. 
To fix the kubectl context, run `minikube update-context`
Run Code Online (Sandbox Code Playgroud)

当我运行时minikube update-context输出是

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x148ecb0]
..... and more 
Run Code Online (Sandbox Code Playgroud)

有人可以帮忙吗?提前致谢

kubernetes kubectl minikube kubeconfig

7
推荐指数
2
解决办法
7022
查看次数

查找正在使用的 kubeconfig 文件

我了解 kubectl 按顺序获取 kubeconfig 文件

  1. 命令行选项--kubeconfig
  2. 环境变量KUBECONFIG=
  3. 默认路径~/.kube/config

但是有没有一种方法可以从当前正在使用的 kubectl 获取 kubeconfig 路径/文件详细信息?

就像是kubectl config path

automation kubernetes kubectl kubeconfig

7
推荐指数
1
解决办法
1万
查看次数

禁用自定义 helm 图表中的子图

我创建了一个自定义舵图作为elastic-stack具有以下配置的子图。

# requirements.yaml
dependencies:
  - name: elastic-stack
    version: 1.5.0
    repository: '@stable'
Run Code Online (Sandbox Code Playgroud)
# values.yaml
elastic-stack:
  kibana:
    # at this level enabled is not recognized (does not work)
    # enabled: true

    # configs like env, only work at this level
    env:
      ELASTICSEARCH_URL: http://foo-elasticsearch-client.default.svc.cluster.local:9200
    service:
      externalPort: 80

# enabled only works at root level
elasticsearch:
  enabled: true
kibana:
  enabled: true
logstash:
  enabled: false
Run Code Online (Sandbox Code Playgroud)

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

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

kubernetes elastic-stack kubernetes-helm kubeconfig

5
推荐指数
1
解决办法
8404
查看次数

如何在没有 kubeconfig 文件的情况下为 C# Kubernetes 客户端启用 TLS 验证?

我希望 C# 代码连接到 K8s 集群,现在只需列出命名空间。我尝试的以下 C# 代码可以工作,并连接到 Kubernetes 集群,但仅在“SkipTlsVerify = true”时才有效。当我将 SkipTlsVerify 设置为 false 时,出现以下错误:

Unhandled exception: k8s.Exceptions.KubeConfigException: A CA must be set when SkipTlsVerify === false

我不想跳过 TLS 验证。如何向 C# Kubernetes 客户端提供必要的 CA 信息以启用 TLS 验证?

我不想使用 BuildConfigFromConfigFile()。这些都无法进入文件系统来读取或写入文件。现在我只能使用局部变量

我一开始尝试过,它有效,但它跳过了 TLS 验证:

        var contextName = "mycontext, i copied this from my kubeconfig file"
        var server = "https://...*** copied from 'server' in kubeconfig file *** "

        var config = new KubernetesClientConfiguration()
        {
            Host = server,
            AccessToken = accessToken,
            SkipTlsVerify = true, …
Run Code Online (Sandbox Code Playgroud)

.net c# client-certificates kubernetes kubeconfig

5
推荐指数
1
解决办法
454
查看次数

如何安全地向 kubectl 提供 kubeconfig

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

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

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

kubernetes kubectl kubeconfig

4
推荐指数
1
解决办法
4859
查看次数

生成用于访问 Amazon EKS 集群的 kubeconfig

假设我有两个 Kubernetes 集群,一个托管在 AWS EKS 上,另一个托管在另一个云提供商上,我想从另一个云提供商管理 EKS 集群。进行身份验证以便我可以执行此操作的最简单方法是什么?

生成一个 kubeconfig 是否合理,我将结果aws get-token(或类似的东西)嵌入到其他云提供商的集群中?或者这些令牌不是持久的?

任何帮助或指导将不胜感激!

amazon-web-services kubernetes amazon-eks kubeconfig

4
推荐指数
1
解决办法
2万
查看次数

合并 kubeconfig JSON 和 YAML

我有两个 kubeconfigs 文件,第一个文件用于与集群通信,第二个文件用于 Aquasec,采用 JSON 格式。我怎样才能合并这两个?

apiVersion: v1
    clusters:
    - cluster:
        certificate-authority-data: DATA+OMITTED
        server: https://656835E69F31E2933asdAFAKE3F5904sadFDDC112dsasa7.yld432.eu-west-2.eks.amazonaws.com
      name: arn:aws:eks:eu-west-2:test651666:cluster/Magento
    - cluster:
        certificate-authority-data: DATA+OMITTED
        server: https://kubernetes.docker.internal:6443
      name: docker-desktop
    - cluster:
        certificate-authority-data: DATA+OMITTED
        server: https://192.142.242.111:6443
      name: kubernetes
    contexts:
    - context:
        cluster: arn:aws:eks:eu-west-2:test651666:cluster/testing
        user: arn:aws:eks:eu-west-2:test651666:cluster/testing
      name: arn:aws:eks:eu-west-2:test651666:cluster/testing
    - context:
        cluster: docker-desktop
        user: docker-desktop
      name: docker-desktop
    - context:
        cluster: docker-desktop
        user: docker-desktop
      name: docker-for-desktop
    - context:
        cluster: kubernetes
        user: kubernetes-admin
      name: kubernetes-admin@kubernetes
    current-context: arn:aws:eks:eu-west-2:test651666:cluster/testing
    kind: Config
    preferences: {}
    users:
    - name: arn:aws:eks:eu-west-2:test651666:cluster/testing
Run Code Online (Sandbox Code Playgroud)

kubernetes kubectl kubeconfig

4
推荐指数
1
解决办法
6117
查看次数

kubectl : --dry-run 已弃用,可以替换为 --dry-run=client

我有 aws-eks 集群,下面是我替换现有配置的命令。

kubectl create configmap flink-config --from-file=./config -o yaml --dry-run | kubectl replace -
Run Code Online (Sandbox Code Playgroud)

但是当我运行这个命令时。它给出了一个错误,如

W1009 17:00:14.998329  323115 helpers.go:553] --dry-run is deprecated and can be replaced with --dry-run=client.
Run Code Online (Sandbox Code Playgroud)

如果我将 -dry-run 替换为 -dry-run=client,它会做同样的事情吗?

kubernetes kubectl amazon-eks kubeconfig

4
推荐指数
1
解决办法
3750
查看次数

如何使用 kubectl 正确访问多个 kubernetes 集群

我有两个集群,配置文件存储在.kube. 我出口KUBECONFIG如下

export KUBECONFIG=/home/vagrant/.kube/config-cluster1:/home/vagrant/.kube/config-cluster2
Run Code Online (Sandbox Code Playgroud)

检查上下文

kubectl config get-contexts
CURRENT   NAME        CLUSTER     AUTHINFO           NAMESPACE
*         cluster-1   cluster-1   kubernetes-admin   
          cluster-2   cluster-2   kubernetes-admin   
Run Code Online (Sandbox Code Playgroud)

但是当我选择 cluster-2 作为我当前的上下文时,我收到一个错误

kubectl config get-contexts
CURRENT   NAME        CLUSTER     AUTHINFO           NAMESPACE
*         cluster-1   cluster-1   kubernetes-admin   
          cluster-2   cluster-2   kubernetes-admin   

kubectl config use-context cluster-2
Switched to context "cluster-2".


kubectl get pods -A
error: You must be logged in to the server (Unauthorized)

Run Code Online (Sandbox Code Playgroud)

如果我只导出 cluster-2 的配置并尝试运行kubectl它就可以了。

我的问题是我是正确导出配置文件还是应该做更多的事情。

kubernetes kubectl kubeconfig

4
推荐指数
1
解决办法
480
查看次数

如何使用替代 kubeconfig 文件?

默认情况下,kubectl配置位于~/.kube/config. 使用命令时是否可以显式指定 kubeconfig 文件kubectl

kubernetes kubectl kubeconfig

4
推荐指数
1
解决办法
6723
查看次数

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

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

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

文档1

文档2

kubernetes kubeadm kube-proxy kubeconfig

3
推荐指数
1
解决办法
5035
查看次数

我可以在 kubernetes 集群上找到 kubeadm-config.yaml

有一个 k8s 单主节点,我需要备份并恢复它我用 google 搜索了这个主题并找到了解决方案 - https://elastisys.com/2018/12/10/backup-kubernetes-how-and-why/

一切看起来都很简单;因此,我按照说明操作并获得了证书的副本和 etcd 数据库的快照。

但最后,我无法在我的主服务器上找到 kubeadm-config.yaml。

哪里可以找到这个文件?

kubernetes kubeconfig

3
推荐指数
1
解决办法
7591
查看次数

从 kubectx 工作流程中删除 kubernetes 集群信息

有没有办法从kubectx中删除 kubernetes 集群上下文?或者只能通过手动从 kubeconfig 中删除它们来完成?

kubernetes kubectl kubeconfig

0
推荐指数
1
解决办法
1378
查看次数