当前位置: 首页 > 网络应用技术

入口控制器的安装部署

时间:2023-03-06 20:24:23 网络应用技术

  本教程仅适用于学习和开发环境部署,并且不建议为环境产生环境。

  关于Internet上的入口控制器部署的文章很多。有各种部署方法。结合实际环境,找到适合您,记录并将其送给未来的方法。

  安装和部署个人对Ingress Controller的安装部署的理解分为两个步骤:

  在第一步和第二步之后,在K8S集群的交界处建立了一个通信桥。

  入口控制器只是一个抽象的集体名称。其实施的组成部分如下:

  来源

  注意:Ingress Nginx是本文安装的部署对象。所有入口控制器均涉及入口NGINX方案

  命令行(在K8S v19.2上进行了验证):

  这是一个官方的强制性文件。入口控制器的许多部署教程都不提供完整的强制性文件。它仅提供一个URL,但此URL通常有两个问题:

  因此,我发布了完整版本的强制性文件的完整版本,以快速安装验证功能并为自己进行备份(如果您想生产,强烈建议不建议直接使用YML文件)。

  修改了一个地方:

  它被修改的原因是因为直接使用部署时,我发现:我无法拉下图像:。

  因此,在节点节点上,首先将Docker映像下载到local(),然后将Deploy()下载。

  知识点:

  默认的镜像绘图策略是IFNOTERENT:当图像存在时,Kubelet将不再拉镜子。如果您想强制镜像,则可以执行以下操作之一:

  如果ImagePullPolicy未定义为特定值,它也将设置为始终

  来源

  部署入口控制器有很多方法。以下示例有三种常见方法:

  在这里,我主要是针对前两个部署方法进行的。

  NodePort的部署想法:

  应当指出,入口控制器容器可以部署在节点节点或主节点之一(不建议)上,也可以将其部署在所有节点节点和主节点上。后者的优点是网络流量转发可以降低NAT以提高效率;缺点也很明显,在有限的资源下,不能将入口控制器容器部署在每个节点中。

  此部署方法的SVC YAML文件。在节点节点上以nodeport为单位,在群集的外部接触一个30080端口。

  外部访问方法:

  Hostnetwork的部署想法:

  与NodePort模式相比,HostNetwork模式不需要创建SVC来统一流量流,而是让每个节点自行将流量转发。

  该计划已部署,您需要修改强制性。

  外部访问方法:

  知识点:什么是deamonset部署?

  Daemonset确保所有(或某些)节点节点上的POD副本。当节点连接到群集时,将添加一个新的POD。从群集中删除节点时,这些POD也会被回收。Deemonset。将删除其创建的所有POD。

  知识点:为什么使用deamonset部署?

  结合DS的定义和HostNetwork的部署想法,我们可以看到可以轻松实现使用DS:在所有节点上部署Ingress Contrancter容器的副本。当然,您还可以使用K8S标签选择器来部署A一个或多个节点上的入口控制器容器的副本。操作如下:

  NodePort和HostNetwork解决方案的比较