使用来自不同子网的裸机服务器设置kubernetes集群

时间:2019-09-25 15:08:17

标签: nginx kubernetes cloud-bare-metal

我现在正在做什么:

我拥有许多VPS,可用于使用Docker compose部署应用程序,大多数机器来自不同的子网,并具有公共静态IP地址。

对于每个新应用程序,我将选择一个随机VPS,为新应用程序的子域的DNS指定VPS的IP地址,然后将我的应用程序部署在此VPS中Nginx代理(jwilder Nginx)的后面。

我认为这种方法非常舒适,因为jwilder的Nginx几乎为我完成了工作,而且我只需要分配正确的DNS。

我要实现的目标:

出于学习的目的,我想带走这些机器,并用它们组成一个Kubernetes集群,以便我可以学习更多有关该技术的知识。我的想法是,我只需要将新子域的DNS分配给一个点,这也可以充当负载平衡器并将流量传递给相应的Pod。

要将流量重定向到新的应用程序,我只需要配置负载平衡器。

我的问题:

由于我不了解很多Kubernetes,所以我知道这个问题不是很精确。而且,我的服务器不是来自Google或AWS之类的云提供商,因此我无法使用其解决方案。他们甚至都不来自单个云提供商,其中大多数来自我的大学,而有些来自私有云提供商。

有人可以告诉我如何实现这一目标吗?

1 个答案:

答案 0 :(得分:0)

我认为答案是kubeadm,您可以将其安装在自己的PC或虚拟机上。

它将创建一个可以与您的其他虚拟机连接的单个控制平面集群,并创建一个kubernetes集群。

  

kubeadm帮助您引导符合最佳实践的最小可行Kubernetes集群

     

kubeadm被设计为新用户开始尝试Kubernetes的一种简单方法,这可能是第一次,它是现有用户在其上测试应用程序并轻松将其拼接在一起的一种方法,并且是构建模块在其他具有更大范围的生态系统和/或安装程序工具中。

您的群集pods将通过CNI进行通信。

  

CNI是作为最低规范创建的,与许多网络供应商工程师一起构建,是容器运行时和网络插件之间的简单合同