0
点赞
收藏
分享

微信扫一扫

Kubectl连接k8s集群

12a597c01003 2022-02-09 阅读 124

一. 概述

需要使用kubectl连接多个k8s集群, 所以在这里做一个记录.

二.安装kubectl

macOS 下直接使用 homebrew 管理工具进行安装:

确认是否安装成功:

其他系统安装方式详见 Install and Set Up kubectl。

三. 配置.

先说一下, 在配置的时候,需要通过kubectl config xxx指令配置三部分内容.

  1. 设置集群信息
# 配置集群名称与服务地址
kubectl config --kubeconfig=${HOME}/.kube/config set-cluster cluster-name --server=https://{IP} --insecure-skip-tls-verify

  1. 设置用户信息,用户连接集群
# 设置一个管理 标识为 k8s-cluster ,并设置访问凭证。此处使用 用户名-密码 的验证方式
kubectl config --kubeconfig=${HOME}/.kube/config set-credentials k8s-cluster --username=username --password=pwd

kubectl config --kubeconfig=${HOME}/.kube/config set-credentials k8s-cluster --client-certificate=fake-cert-file --client-key=fake-key-seefile


  1. 设置context信息, 用于建立用户和集群的关系.

# 设置一个名为 k8s-cluster 的配置,使用 cluster-name 集群与 k8s-cluster 用户的上下文
kubectl config --kubeconfig=${HOME}/.kube/config set-context k8s-cluster --cluster=cluster-name --namespace=default --user=username

  1. 切换默认的context

# 启用 k8s-cluster  为默认上下文
kubectl config --kubeconfig=${HOME}/.kube/config use-context k8s-cluster 

  1. 删除信息相关操作
要删除用户,可以运行 kubectl --kubeconfig=${HOME}/.kube/config config unset users.<name>
要删除集群,可以运行 kubectl --kubeconfig=${HOME}/.kube/config config unset clusters.<name>
要删除上下文,可以运行 kubectl --kubeconfig=${HOME}/.kube/config config unset contexts.<name>

四. 配置文件地址(可以直接修改)

  • 参考示例:
apiVersion: v1
clusters:
- cluster:
    insecure-skip-tls-verify: true
    server: https://127.0.0.1:11081
  name: xxxcloud
- cluster:
    certificate-authority-data: LS0tLS1CRUd....
    server: https://kubernetes.docker.internal:6443
  name: docker-desktop
- cluster:
    insecure-skip-tls-verify: true
    server: https://127.0.0.1:16443
  name: fi-k8s
contexts:
- context:
    cluster: xxxcloud
    namespace: scheduler
    user: netease
  name: default
- context:
    cluster: docker-desktop
    user: docker-desktop
  name: docker-desktop
- context:
    cluster: fi-k8s
    namespace: default
    user: kubernetes-admin
  name: fi-k8s-default
- context:
    cluster: fi-k8s
    namespace: scheduler
    user: kubernetes-admin
  name: fi-k8s
- context:
    cluster: xxxcloud
    user: netease
  name: scheduler
current-context: default
kind: Config
preferences: {}
users:
- name: docker-desktop
  user:
    client-certificate-data: LS0tLS1CRUdJ............
    client-key-data: LS0tLS1CRUdJTiBS....
- name: kubernetes-admin
  user:
    client-certificate-data: LS0tLS1...
    client-key-data: LS0tLS1CRUdJT...
- name: netease
  user:
    token: eyJhbGciOiJSU....



举报

相关推荐

0 条评论