使用Kubernetes kubeadm和minikube在VM中创建节点

Jac*_*cob 3 kubernetes

我正在尝试使用同一台机器创建具有不同数量节点的Kubernetes集群。在这里,我想创建单独的VM,并需要在这些VM中创建节点。我目前正在探索针对这些任务的kubeadm和minikube。

在探索时,我有以下困惑:

  1. 我需要创建4个节点,每个节点都需要在不同的VM中创建。我可以使用kubeadm满足这些要求吗?
  2. 还发现Minikube用于创建单节点结构,也可以用于创建VM。kubeadm和minikube有什么区别?
  3. 如果我想在不同的VM中创建节点,那么在安装Kubernetes集群主服务器时应该使用哪个工具?
  4. 如果我使用的是VM,那么我可以在Ubuntu 16.04中直接安装VMware工作站/ virtualbox吗?
  5. 在AWS EC2中,他们已经将Ubuntu作为虚拟机。那么可以在ubuntu上安装VMware工作站吗?由于它是另一个VM上的VM。

Jak*_*kub 6

Kubeadm应该是您的理想选择。只需遵循文档,它就非常容易使用。Minikube只会给您单节点Kubernetes。

  1. Kubeadm是一种在现有机器上启动Kubernetes并使其运行的工具。它将基本上配置并启动所有必需的Kubernetes组件(以实现最小可行集群)。Kubeadm是在虚拟机上引导Kubernetes集群的正确工具。但是您需要自行准备机器(安装操作系统+所需的软件,网络等)。kubeadm不会为您这样做。
  2. Minikube是一个工具,可让您在本地启动单节点Kubernetes集群。这通常在VM中完成-minikube支持VirtualBox KVM和其他。它将为您启动虚拟机并处理所有事情。但这不会为您提供4节点群集。
  3. Kubeadm照顾了这两者。首先设置主服务器,然后在辅助节点上使用kubeadm加入主服务器。
  4. 当您使用Kubeadm时,它实际上并不在乎您将什么用于虚拟化。您可以选择任何您想要的。
  5. 为什么要在EC2计算机之上运行虚拟机?为什么不为集群创建更多(也许更小)的EC2计算机呢?您可以以此为灵感:https : //github.com/scholzj/terraform-aws-kubernetes。还有一些用于设置整个集群的更高级的工具,例如(Kops)

  • Kubernetes 通常由一个或多个 master 和一个或多个节点组成。你说的是 4 个虚拟机......我认为这些将是 1 个主节点 + 3 个节点。使用 VM 可以用于本地开发,其中您有一台 PC/服务器并希望运行多节点集群。您只需在 PC 上设置 4 个运行虚拟机并使用 Kubeadm 安装 Kubernetes。但是在 AWS 中,EC2 实例已经是 VM。因此,通常您没有理由获取 EC2 实例并在其上创建额外的 VM。只需创建更多更小的 EC2 实例并使用它们即可。 (4认同)