minikube 部署的 k8s 集群准备 kubeconfig 文件

CSDN 中文章不一定能及时更新,欢迎点击前往我的博客查看最新版本:许盛的博客

题外话

最近大出血,换了 m1pro,黑苹果就暂时没啥用了,本来准备装个 ubuntu 用来部署 kubesphere 玩玩的,不过在尝试了 ubuntu 官方的 multipass 虚拟机管理工具后,体验实在太好了。

同时又逛了逛 k8s 官网,比早两年要好太多了,正好就用虚拟机再过一遍 k8s 官方文档好了。

本文写的内容其实属于很简单的基础内容,其实是没必要写的,但是为了避免时间长了自己忘掉,还是记一记好了。

准备 kubeconfig 文件

k8s 官方文档上的一些操作是使用 minikube 部署的集群,入乡随俗,我也在虚拟机里用 minikube 部署了一个集群。

但是虚拟机里面没有装 zsh 等一些提升使用体验的插件,也不太想在虚拟机里折腾,这时候就需要在虚拟机外部操作内部的集群了。

找到虚拟机内部的 ~/.kube/config 文件,可以看到内容如下:

apiVersion: v1
clusters:
- cluster:
    certificate-authority: /home/ubuntu/.minikube/ca.crt
    extensions:
    - extension:
        last-update: Thu, 16 Dec 2021 20:23:25 CST
        provider: minikube.sigs.k8s.io
        version: v1.24.0
      name: cluster_info
    server: https://192.168.64.2:8443
  name: minikube
contexts:
- context:
    cluster: minikube
    extensions:
    - extension:
        last-update: Thu, 16 Dec 2021 20:23:25 CST
        provider: minikube.sigs.k8s.io
        version: v1.24.0
      name: context_info
    namespace: default
    user: minikube
  name: minikube
current-context: minikube
kind: Config
preferences: {}
users:
- name: minikube
  user:
    client-certificate: /home/ubuntu/.minikube/profiles/minikube/client.crt
    client-key: /home/ubuntu/.minikube/profiles/minikube/client.key

如果直接将这个文件复制到外部是无法使用的,可以看到文件中部分证书文件路径,在其他机器上是没有的。

准备证书数据

kubeconfg 文件除了使用证书文件的路径外,其实也可以将证书内容经过 base64 编码后直接写入文件。

首先将文件中的 certificate-authority: /home/ubuntu/.minikube/ca.crt 改为 insecure-skip-tls-verify: true

client-certificate 改为 client-certificate-data

client-key 改为 client-key-data

然后使用命令读取证书内容并输出 base64 字符串,再替换 kubeconfig 文件中内容即可:

# 对应 client-certificate-data 的值
cat ~/.minikube/profiles/minikube/client.crt | base64 -w 0

# 对应 client-key-data 的值
cat ~/.minikube/profiles/minikube/client.key | base64 -w 0

kubeconfig 文件内容准备好后,在希望使用 kubectl 命令的机器上,创建 ~/.kube/config 文件,并将上面准备的内容写入即可。

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值