zoukankan      html  css  js  c++  java
  • Kubernetes之Ingress认识

    Kubernetes之Ingress认识

    Ingress基本认识

    • 在之前我们通过Service的类型 ClusterIP、NodePort、LoadBlance中的NodePort实现端口的暴露,实现任意node节点+暴露的端口实现pod的访问

    • 这种方式就有一个缺陷

      • 我们所暴露的那个端口,在每个节点上都会被占用,也就是一个端口在集群中只能对应一个应用,只能使用一次

      • 实际访问中,一般我们都是通过域名来访问,然后根据域名来跳转到固定的ip,实现服务访问

      • 这时候,NodePort这种方式就出现了弊端,我该如何通过域名实现负载均衡访问我所有的pod呢?

    • ingress的出现就解决了这个尴尬问题

    Ingress的工作流程

    Ingress和Pod的关系

    • 通过上图我们可以知道

      • ingress是通过Service和pod关联的

        • service是通过标签labels关联pod的

      • ingress作为统一的入口,会维护很多的域名

        • 这些域名与Service进行关联

        • 实现一个域名与多个pod进行关联,实现负载均衡

    部署并使用:Ingress

    环境初始化

    • 我们创建一个测试的pod

      • kubectl create deployment webnginx --image nginx

    • 暴露我们创建的pod

      • kubectl expose deployment webnginx --port 80 --target-port 80 --type NodePort

      • 这个时候我们已经可以通过节点IP + 暴露的端口进行访问服务了

    部署ingress

    • 然后就是部署Ingress了,这里我们使用官方维护的nginx控制器,实现部署

    查看ingress部署信息

    • 然后我们查看一下该pod

      • 该资源编排文件是创建了一个名称空间的

      • 所以我们需要制定名称空间去查看

    • 查看ingress的pod部署信息

      • kubectl get pods -n ingress-nginx

    配置ingress规则

    • ingress是创建好了,至于上面我们画的流程图该如何实现了,这就需要我们手动去配置实现了

      • ingress-rule.yaml [提取码:6666]

      • 然后我们可以来解读一下里面配置的规则

    • 部署ingress-rule.yaml

    • 我们可以看到ingress 部署到了node1节点

    • 此时我们想要在浏览器进行访问,需要在win10的hosts文件中配置一下路由规则

      • 因为我们的服务不是在公网,所以需要做以下操作,做域名映射

        • 修改:C:WindowsSystem32driversetchosts 文件

        • 前面是我们部署ingress Pod的节点ip,后面是我们部署的ingress规则监听的域名

    测试

    • 我们再次查看一下ingress的服务以及监听的端口

    • 然后我们使用浏览器开始访问

    .

  • 相关阅读:
    .Net下HTTP访问穿越多层代理的方法以及代理服务器的验证 转载
    SB淘宝api的奇葩问题! 一则服务器无法访问淘宝api
    C# 系统应用之清除Cookies、IE临时文件、历史记录 转载
    Replication--进程无法在“xxxx”上执行“sp_replcmds”
    [leetcode] Search Insert Position
    [leetcode] Search for a Range
    [leetcode] Merge Sorted Array
    [leetcode] Remove Element
    [leetcode] Find Minimum in Rotated Sorted Array
    [leetcode] Container With Most Water
  • 原文地址:https://www.cnblogs.com/msi-chen/p/14346893.html
Copyright © 2011-2022 走看看