您当前的位置是:  首页 > 资讯 > 国内 >
 首页 > 资讯 > 国内 >

VMware vSphere with Kubernetes实战之:节点访问

2020-07-28 10:50:33   作者:   来源:CTI论坛   评论:0  点击:


  VMware 在2020年4月2日发布了vSphere 7.0的正式版。这个版本的vSphere最显着的特性之一是它在hypervisor层内部创建了Kubernetes控制平面。该功能使vSphere大大扩展了它所能运行的工作负载范围,涵盖了更多当前流行的应用程序。我们将此功能之前称为“ Project Pacific”或WCP(工作负载控制平面),现在的正式名称是“vSphere with Kubernetes”。要了解有关vSphere 7的新功能的更多信息,请访问我们的网站:
  https://www.vmware.com/products/vsphere.html.
  背景介绍
  vSphere with Kubernetes中有2层Kubernetes群集,如上图所示。在基础架构层(底层)称为“Supervisor Kubernetes群集”,服务层(上层)称为“ Tanzu Kubernetes群集”。两个集群都有主(Master)节点和工作(Worker)节点。在某些情况下,出于调试或其他配置原因,您可能需要通过SSH协议访问这些节点。本文将通过实战的方式,来一步步展示来如何获取各个层次的不同节点的访问地址和秘钥,主要包含下面两个方面的内容:
  • 如何访问Supervisor Kubernetes集群的节点
  • 如何访问Tanzu Kubernetes集群的节点
  下面的实战练习需要几个前提条件:
  • 配置好Supervisor Kubernetes集群。请参考:Config a Supervisor Cluster
  • 创建并配置好Supervisor Kubernetes集群的命名空间。请参考:Configure Supervisor Cluster Namespaces.
  • 下载并安装好Kubernetes客户端根据kubectl和vSphere的插件。请参考:Download and Install the Kubernetes CLI Tools for vSphere
  • 在命名空间里创建一个或多个Tanzu Kubernetes 集群。请参考:How to Create Tanzu Kubernetes Clusters.
  访问Supervisor Kubernetes集群的节点
  有两种获取Supervisor群集的节点名称和IP地址的方法。一种是通过vCenter Server Client控制台,另一种是通过“ kubectl”命令。
  1. 通过kubectl命令,以数据中心管理员的身份登录Supervisor 集群。
  2. 通过下面的命令来获得Supervisor群集各个节点的访问地址:
  3. 访问Supervisor群集中的Worker节点
  Supervisor群集中的Worker节点是上面输出的最后三行。它们不是虚拟机,而是Esxi主机,这是vSphere with Kubernetes的最大的卖点之一。主机名和IP地址可在管理网络中访问,而数据中心管理员应该知道这些主机的密码。
  4、Master节点是上述示例输出中的前三行。Master的节点名称是长数字字符串,此处显示的IP地址是私有的IP地址,在管理网络中不可访问。您可以从vCenter Server客户端中获取Master节点的更有意义的名称和可访问的IP地址。如下图所示,在vCenter Server控制台中,Supervisor群集的Master节点称为“ SupervisorControlPlanVM”,我们还可以获得可在管理网络中访问的网络接口。现在的问题是我们不知道访问这些主节点的密码:
  5、为了获得Supervisor群集中的Master节点的密码,我们先要登录到vCenter Server的虚机中。通常来说,数据中心管理员应该会拥有vCenter Server的root用户的密码。先用root用户通过SSH登录vCenter Server,还需要运行一段脚本,才能获得我们所需要的密码:
  通过上面的密码,可以用root用户访问任意的一个Master节点。
  访问Tanzu Kubernetes集群的节点
  1. 通过kubectl命令,以数据中心管理员或者Namespace管理员的身份登录Supervisor 集群。
  2. 在Tanzu集群所在的命名空间里查看秘钥的信息,可以通过以下命令获得有关Tanzu集群跟SSH登录相关的秘钥信息,记住这个secret的名字,在下面的例子输出中是“my-tanzu-cluster-ssh”。
  3. 查看Tanzu集群的节点信息和IP地址
  4. 上面输出的IP地址是内网的私有地址,我们从管理网络段是无法访问的,因此我们需要一个跳板机。事实上在上节中,Supervisor集群的Master节点可以作为跳板机。但这样做比较麻烦,需要较多的步骤。下面的方法可以通过kubectl创建一个跳板机,并且将访问Tanzu集群节点的私钥也一起放在跳板机里,就可以方便的访问Tanzu集群中的各个节点:
  5. 部署这个跳板机,并且通过系统用户”vmware-system-user”和预制的SSH私钥去连接Tanzu集群的各个节点:
  总结
  在各种开发部署的环境下,总有一些场景需要登录到Master或Worker节点中,去查看日志信息,服务状态,甚至需要修改配置文件。本文通过一步步操作来说明如何来完成这些任务。
【免责声明】本文仅代表作者本人观点,与CTI论坛无关。CTI论坛对文中陈述、观点判断保持中立,不对所包含内容的准确性、可靠性或完整性提供任何明示或暗示的保证。请读者仅作参考,并请自行承担全部责任。

专题

CTI论坛会员企业