标签: Kubernetes


  1. K8s network之五:Kubernetes集群Pod和Service之间通信的实现原理

      Kubernetes集群内Pod之间默认可以无障碍的进行通信,但是通常情况下Pod是不稳定的,无法确定Pod会在何时因为何种原因被重启。当Pod重启后,其会得到一个新的IP地址。而且,如无特别指明,Pod有可能会在不同的节点之间被调度。当提供相同服务的Pod有多个时,就需要一个统一的对外地址来接收服务请求,并将请求以负载均衡的方式分发到Pod上。Kubernetes Service就是在这种背景下被引入的,Service是一种为一组提供相同服务的Pod提供单一不变的、简单透明的接入访问点的资源对象。Service的IP地址和端口在其整个生命周期不会改变,客户端可以通过服务IP:服务Port的方式发起服务请求,也可以直接访问服务名,由Kubernetes集群提供的DNS解析服务将请求分发到Service背后的Pod上。出于篇幅考虑,相关的yaml配置不会在文章中出现,特殊情况除外,相关的yaml配置可以参考Kubernetes官方文档。

    Read More...


  2. K8s network之四:Kubernetes集群通信的实现原理

      Kubernetes网络架构要求集群内的任意两个Pod之间可以在无需NAT的前提下进行通信。在集群中一共有四种Pod间通信的场景:Pod内容器之间相互通信、同一个节点内多个Pod之间相互通信、不同节点上的多个Pod之间相互通信以及Pod和Service之间的通信。其中,Pod和Service之间的通信过程分析请移步到《K8s network之五:Kubernetes集群Pod和Service之间通信的实现原理》,本文会着重分析多容器Pod内、同一节点上的Pod之间以及不同节点上的Pod之间的通信过程。出于篇幅考虑,相关的yaml配置不会在文章中出现,特殊情况除外,相关的yaml配置可以参考Kubernetes官方文档。

    Read More...


  3. K8s network之二:Kubernetes的域名解析、服务发现和外部访问

      在《K8s network之一:K8s网络模型与网络策略》中我们大概了解了Kubernetes的IP-Per-Pod模型和CNI接口规范,以及如何配置网络策略来限制出入Pod的流量。本篇会继续了解和学习Kubernetes集群如何向集群外提供服务访问以及服务之间如何相互发现这两个重要问题。出于篇幅考虑,相关的yaml配置不会在文章中出现,特殊情况除外,相关的yaml配置可以参考Kubernetes官方文档。

    Read More...


  4. K8s network之一:K8s网络模型与网络策略

      Kubernetes网络是Kubernetes得以正常工作的重要基础之一,这其中涉及到了包括但不限于IP地址划分、MAC地址学习、路由转发、服务发现、网络通信等诸多领域。借助于CNI接口及其实现产品,Kubernetes可以提供丰富的网络配置架构方案。关于Kubernetes网络,将会有一系列笔记,本篇是第一篇—关于Kubernetes网络模型和策略的初步学习,知其然,稍微知其所以然。出于篇幅考虑,相关的yaml配置不会在文章中出现,特殊情况除外,相关的yaml配置可以参考Kubernetes官方文档。

    Read More...