1、介绍

①主管集群(SupervisorControlPlane)

这是一个特殊的 Kubernetes 集群,它使用 ESXi 而不是 Linux 作为其工作节点。

这是通过将 Kubernetes 工作负载 Spherelets 直接集成到 ESXi 管理程序中来实现的。该集群使用 vSphere Pod 服务在 vSphere 主机上本地运行容器工作负载,利用 ESXi 管理程序的安全性、可用性和性能。

主管集群不是一个符合 Kubernetes 集群的设计,它使用 Kubernetes 来增强 vSphere。这最终能够直接在 ESXi 主机上与虚拟机一起运行 Pod,并作为 Tanzu Kubernetes 集群的管理。

②Tanzu Kubernetes 集群(TKG)

为了开发人员提供与上游 Kubernetes 一致且完全符合标准的 Kubernetes 集群,可以使用 Tanzu Kubernetes 集群(也称为“访客”集群)。

Tanzu Kubernetes 集群是一个 Kubernetes 集群,它运行在 Supervisor 层的虚拟机内,而不是在 vSphere Pod 上。

作为完全符合上游标准的 Kubernetes,它保证可以与您的所有 Kubernetes 应用程序和工具一起使用。vSphere 中的 Tanzu Kubernetes 集群使用开源集群 API 项目进行生命周期管理,而后者又使用 VM Operator 来管理组成集群的 VM。

简而言之,Tanzu Kubernetes 集群更加接近于原生的kubernets集群。

2、检查内容库

①检查方法一:(在vCenter里查看内容库)

②检查方法二:(登录控制平面虚拟机查看)

3、新建命名空间

①在集群上右键,新建命名空间

②选择部署tkg的集群,输入命名空间名称,此实例为:tkg-cluster-01。

③创建完成如下图

④其他配置

说明:

1、在左侧点击刚刚新建的【命名空间】:tkg-cluster-01

2、在【权限】选项卡处,添加该命名空间的所有者,本例所有者为 Administrator。

3、在【存储】选项卡处,选择用于该命名空间的存储的存储策略(本例为k8s)。

4、在【Tanzu Kubernets Grid服务】处,选择一个内容库,该内容库必须有所需的OVA镜像。

5、在【虚拟机服务】处,点击【管理虚拟机类】,选择一个虚拟机类去关联该命名空间(本例为best-effort-medium,该配置关系到控制节点和工作节点的虚拟机规格大小)。

4、准备Tanzu Guest Cluster集群YAML文件

①cat tkg.yaml

apiVersion: run.tanzu.vmware.com/v1alpha1
kind: TanzuKubernetesCluster
metadata:
    name: web-portal      ###此处定于集群名称
spec:
   topology:
       controlPlane:
           count: 3         ###定义控制节点数量
           class: best-effort-medium      ###定义控制节点虚拟机规格
           storageClass: k8s
       workers:
           count: 3       ###定义工作节点数量
           class: best-effort-medium     ###定义工作节点虚拟机规格
           storageClass: k8s
   distribution:
        version: v1.20.2       ###定义控制节点和工作节点的kubernetes版本
   settings:
        network:
          cni:
              name: antrea
          services:
             cidrBlocks: ["198.51.100.0/12"]
          pods:
             cidrBlocks: ["192.0.2.0/16"]

②通过tanzu cli工具登录主管集群

kubectl-vsphere login --server 10.245.0.1 --vsphere-username administrator@vsphere.local --insecure-skip-tls-verify

③切换命名空间至tkg-cluster-01

kubectl config use-context tkg-cluster-01

④应用yaml

kubectl apply -f tkg.yaml

⑤在vCenter中可以查看tkg集群正在创建,可以通过以下命令查看

kubectl get events -w    ###实时查看创建过程

kubectl get tanzukubernetesclusters

kubectl  describe tanzukubernetesclusters

kubectl get virtualmachine

kubectl describe virtualmachine tgk-cluster-01-control-plane-fdx4k

④该过程会在NSX-T上自动创建2个分段、1个T1网关,1个LB,大概10分钟左右,可以用上面提供的命令查看具体进度,或者通过vCenter查看进度。

⑤TKG集群创建完成,如下图所示:根据yaml文件内容,创建了3台控制平台虚拟机,3台worker节点,组成了一个Tanzu Kubernetes Grid集群。

⑥命令行查看集群状态

kubectl describe tanzukubernetescluster

kubectl get tanzukubernetescluster

kubectl get cluster

5、登录TKG集群

①命令如下:

kubectl-vsphere login \
--insecure-skip-tls-verify \
--server https://10.245.0.1 \
--vsphere-username administrator@vsphere.local \
--tanzu-kubernetes-cluster-namespace tkg-cluster-01 \
--tanzu-kubernetes-cluster-name web-portal

②查看节点信息

kubectl get node

Tanzu系列:第8部分 - 创建tkg集群相关推荐

  1. 【Kubernetes 系列】Kubernetes 创建K8s集群项目

    作者:半身风雪 上一节:Kubernetes 概述 创建K8s集群项目 一.创建Minikube 二.创建Deployment 三.创建 Service 四.启用插件 五.删除集群 总结 一.创建Mi ...

  2. 使用Kubeadm创建k8s集群之节点部署(三十二)

    前言 由于上次忘开申明原创,特再发一次. 本篇部署教程将讲述k8s集群的节点(master和工作节点)部署,请先按照上一篇教程完成节点的准备.本篇教程中的操作全部使用脚本完成,并且对于某些情况(比如镜 ...

  3. 快速入门容器服务,创建Kubernetes集群

    使用须知 创建集群过程中,容器服务会进行如下操作: 创建 ECS,配置管理节点到其他节点的 SSH 的公钥登录,通过 CloudInit 安装配置 Kubernetes 集群. 创建安全组,该安全组允 ...

  4. k8s 离线安装_使用 Kind 在离线环境创建 K8S 集群

    背景 Kind 是 Kubernetes In Docker 的缩写,顾名思义是使用 Docker 容器作为 Node 并将 Kubernetes 部署至其中的一个工具.现在包括 Kubernetes ...

  5. 大数据系列(一)之hadoop介绍及集群搭建

    大数据系列(一)之hadoop介绍及集群搭建 文章最早发布来源,来源本人原创初版,同一个作者: https://mp.weixin.qq.com/s/fKuKRrpmHrKtxlCPY9rEYg 系列 ...

  6. CDC系列(一)、Canal 集群部署及使用(带WebUI)

    目录 前言 准备工作 MySQL开启Binlog 安装Canal Admin WEB UI 安装Canal Server 监控MySQL并导入Kafka 尾巴 前言 CDC(Change Data C ...

  7. Linux下安装Weblogic10.3.6并创建简单集群测试

    Linux下安装Weblogic10.3.6并创建简单集群进行测试 一.卸载随系统安装的openjdk 1.先查看安装的jdk信息,常用命令有rpm -qa | grep java, rpm -qa  ...

  8. 5 秒创建 k8s 集群[转]

    据说 Google 的数据中心里运行着超过 20 亿个容器,而且 Google 十年前就开始使用容器技术. 最初,Google 开发了一个叫 Borg 的系统(现在命令为 Omega)来调度如此庞大数 ...

  9. 使用Kubeadm创建k8s集群之部署规划(三十一)

    前言 上一篇我们讲述了使用Kubectl管理k8s集群,那么接下来,我们将使用kubeadm来启动k8s集群. 部署k8s集群存在一定的挑战,尤其是部署高可用的k8s集群更是颇为复杂(后续会讲).因此 ...

最新文章

  1. 每日一皮:测试都ok啊,咋一上线就乱了呢...
  2. ajax登录验证的原理,ajax用户登录验证-get和post提交方式,与工作原理—2018-8-15...
  3. 收购Nervana,英特尔缘何看中AI市场
  4. Python+sklearn使用线性回归算法预测儿童身高
  5. Tensorflow 2 循环神经网络 GRU 豆瓣IMDB影评数据集训练模型
  6. JAVA面向对象OOP、类、属性、方法、样例代码
  7. java uuid 随机生成唯一序列号
  8. JavaScript中的ActiveXObject对象
  9. html插入activex,在HTML网页中插入ActiveX控件
  10. 《layui宇宙版教程》:分页组件laypage
  11. 设置win10自动登录/免密码自动登录方法
  12. 机电学生写给十年后自己的一封信
  13. java lru笔试题,2016年头条校招笔试(LRU算法)
  14. java星座测试需求分析_如何进行软件测试需求分析
  15. java使用jol打印对象信息
  16. Educational Codeforces Round 95题解
  17. c语言程序设计课后答案西电,C语言程序设计习题大全(含答案)C语言-.doc
  18. Java 并发之 AQS 详解(上)
  19. wps 设置代码块和代码块快捷键 多级编号
  20. 图纸加密模块介绍(主模块)

热门文章

  1. leetcode题目-最小栈和用两个栈实现队列
  2. vue.config.js配置configureWebpack的optimization splitChunks页面空白
  3. 加载msvcr100.dll时提示已加载,但是为什找不到输入点dllregisterserver
  4. 还在为ElementUI的原生校验方式苦恼吗,快用享受element-ui-verify插件的快乐吧(待续)
  5. 力扣 6009. 使两字符串互为字母异位词的最少步骤数
  6. 笔记本电源指示灯维修及散热硅脂替换
  7. 计算机和人脑在线阅读,人脑与电脑
  8. (解决)org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)问题的办法
  9. 2020年最烂密码出炉!一秒钟就破解!
  10. HTTP协议-get与post请求