企业级K8S多集群管理

简介: 企业级K8S多集群管理

在实际生产环境中,往往需要维护多个k8s集群,在多个环境和节点之间切换,影响工作效率,不符合devops的理念,因此尝试在单个节点下面维护多个k8s集群。

 

1) 模拟存在两套k8s集群

 

第一个k8s集群:

[root@k8smaster ~]# kubectl get nodes
NAME         STATUS      ROLES         VERSION
k8smaster     Ready        controlplane    v1.23.1
k8slave        Ready        worker          v1.23.1
k8smaster:182.168.40.180
k8slave:192.168.40.181

第二个k8s集群

[root@k8smaster2]# kubectl get nodes
NAME          STATUS     ROLES         VERSION
k8smaster2     Ready       controlplane    v1.23.1
k8slave2       Ready        worker        v1.23.1
k8smaster2:192.168.40.185
k8slave2:  192.168.40.186

2) kubeconfig文件

查看kubeconfig文件可以使用kubectl config命令,也可以直接查看/root/.kube/config(默认位置)

k8smaster集群
[root@k8smaster ~]#kubectl  config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://192.168.40.180:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: kubernetes-admin
  name: kubernetes-admin@kubernetes
current-context:kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name:kubernetes-admin
  user:
    client-certificate-data: REDACTED
    client-key-data: REDACTED

k8smaster2集群          

[root@k8smaster2~]# kubectl  config view
apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: DATA+OMITTED
    server: https://192.168.40.185:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: kubernetes-admin
  name: kubernetes-admin@kubernetes
current-context:kubernetes-admin@kubernetes
kind: Config
preferences: {}
users:
- name:kubernetes-admin
  user:
    client-certificate-data: REDACTED
    client-key-data: REDACTED

3) 在k8smaster上配置k8smaster2的cluster、user、context

 

a、添加cluster

[root@k8smaster]#kubectl config set-cluster k8smaster2 --server=https://192.168.40.185:6443--insecure-skip-tls-verify=true

b、添加user

[root@k8smaster]#kubeadm token create --print-join-command
[root@k8smaster]#kubectl config set-credentials k8smaster2-user --token= clknqa.km25oi82urcuja9u

c、添加context

[root@k8smaster]# kubectl config set-context k8smaster2-context--cluster= k8smaster2  --user=k8smaster2-user

d、切换context管理k8s集群

[root@k8smaster]#kubectl config use-context k8smaster2-context

至此,在k8smaster节点上维护了两个k8s集群,按照同样的办法可以添加更多的k8s集群,只是通过不同的context进行切换。


相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
Kubernetes Cloud Native 安全
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)(一)
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)
1562 0
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)(一)
|
1天前
|
存储 Kubernetes Docker
Kubernetes(K8S)集群管理Docker容器(概念篇)
Kubernetes(K8S)集群管理Docker容器(概念篇)
|
7月前
|
Kubernetes Devops 容器
生产环境实现k8s多集群管理
生产环境实现k8s多集群管理
|
7月前
|
Kubernetes jenkins Devops
基于Jenkins和k8s构建企业级DevOps容器云平台
基于Jenkins和k8s构建企业级DevOps容器云平台
|
1天前
|
JSON Kubernetes Cloud Native
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)
177 0
|
10月前
|
运维 Prometheus Kubernetes
选对方法,K8s 多集群管理没那么难
选对方法,K8s 多集群管理没那么难
|
7月前
|
Kubernetes Cloud Native 微服务
Kubernetes 简介:容器编排与集群管理的进化
Kubernetes 简介:容器编排与集群管理的进化
119 0
|
7月前
|
Kubernetes jenkins Devops
jenkins+kubernetes+harbor+gitlab构建企业级devops平台
jenkins+kubernetes+harbor+gitlab构建企业级devops平台
|
7月前
|
Kubernetes jenkins Devops
kubernetes+jenkins+harbor+gitlab构建企业级devops平台
kubernetes+jenkins+harbor+gitlab构建企业级devops平台
|
8月前
|
Kubernetes API 调度
云原生容器Clouder认证:容器应用与集群管理—课时10:Kubernetes简介(选学)
云原生容器Clouder认证:容器应用与集群管理—课时10:Kubernetes简介(选学)
83 0