Kubernetes数据流分析

本文以网页应用访问为例,深入探讨Kubernetes中的数据流。从Service到Pod的请求转发,kube-proxy通过iptables实现负载均衡。容器间通信,同一Node上Pod通过共享网络命名空间直接通信,不同Node上的Pod通信涉及NodePort与ServicePort。详细分析了mysql-rc.yaml和myweb-rc.yaml文件在Service创建中的角色。
摘要由CSDN通过智能技术生成

以一个网页应用的访问为例

首先在部署阶段,需要启动两个容器WebApp容器和Mysql容器。

整个部署过程:

  1. 启动Mysql,mysql-rc.yaml在之后给出,创建对应的Service
  2. 启动myweb, myweb-rc.yaml在之后给出,创建对应的Service,并通过NodePort方式暴露服务
  3. 通过浏览器访问网页

这里写图片描述

此时,如果从外部访问服务,则流程如图:

这里写图片描述

有三种访问方式:

这里写图片描述

过程原理

从Service到Pod

k8s在创建服务的时候会为服务分配一个虚拟的IP地址,然后客户端通过访问这个虚拟的IP地址来访问服务,而服务则负责将请求转发到后端的Pod上。

而真正起到作用的就是kube-proxy,每个Node都会运行一个kube-proxy进程。对每个TCP类型的Service,kube-proxy都会在本地Node上建立

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值