温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Kubernetes网络的示例分析

发布时间:2021-12-29 13:44:59 来源:亿速云 阅读:228 作者:小新 栏目:大数据

这篇文章主要介绍Kubernetes网络的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

Kubernetes 网络

Kubernetes是Google开源的容器集群管理系统。它构建docker技术之上,为容器化的应用提供资源调度、部署运行、服务发现、扩容缩容等整一套功能,本质上可看作是基于容器技术的mini-PaaS平台。

Kubernetes网络的示例分析

那么关于k8s最重要的几个概念是什么呢?

Pod通信

  • Pod内部: 端口互访;

  • 同一Node上: 通过网桥通信;

  • 不同Node上: 通过Overlay网络或路由来通信; RC管理的Pod的版本更新或重启导致IP变化

Service与Pod通信

Service作为Pod的服务代理,必须满足:

  • 对外访问点(IP地址)固定,不轻易更新;

  • 转发外部的访问请求到endpoints;

  • 监控endpoints的变化,实时更新规则;

  • 提供负载均衡

每个service都有2种模式,可根据实际情况在配置kubernetes的时候选择适合的模式来工作。

Userspace模式:

在选择Userspace模式,分为三种类型:

Cluster-IP类型:

  1. Cluster-IP-range可配置;

  2. Cluster-IP不需要配置到网卡上;

  3. 报文被转到kube-proxy自动分配的端口上;

  4. 适用于Pod与Host访问Service;

Node-Port类型:

  1. 监听Node上所有IP的相应端口;

  2. 报文被转到kube-proxy自动分配的端口上;

  3. 适用于外部主机通过Node物理网络访问Service;

LoadBalancer类型:

  1. 外部LB的对应port监听请求,将流量转发到Node;

  2. 各Node上基于Node-Port的配置来接力转发;

  3. 适用于外网访问内部Service;

Kubernetes网络的示例分析

iptables模式:

  1. 无论何类型均会分配到Cluster-IP;

  2. Cluster-IP的监听端口可指定;

  3. 对Iptables的使用,像openflow的流表逐级过滤;

  4. 需要对endpoint上发送来的流量做SNAT;

  5. 重点是如何做负载均衡。

服务发现

Service环境变量:

{SVCNAME}_SERVICE_HOST

{SVCNAME}_SERVICE_PORT

{SVCNAME}_SERVICE_PORT_{PORTNAME}

Link环境变量:

<alias>_NAME

<name>_PORT_<port>_<protocol>

<name>_PORT_<port>_<protocol>_ADDR

<name>_PORT_<port>_<protocol>_PORT

<name>_PORT_<port>_<protocol>_PROTO

缺陷:

  1. Pod获取环境变量无法跨Namespace;

  2. 时序,Pod必须晚于Service创建;

Cluster DNS

  1. Kube2sky监听K8S Api-server;

  2. Service更新,kube2sky将记录保存到etcd;

  3. Skydns支持以etcd backend;

  4. Pod访问skyDNS解析域名。

Kubernetes网络的示例分析

search default.svc.wise2c.com svc.wise2c.com wise2c.comnameserver 192.168.99.1optionsndots:5

  1. 绝对域名,即域名以`.`结尾, 仅查询该域名;

  2. 相对域名,且域名包含的`.`的数目大于或等于option ndots命令指定的数,仅查询该域名;

  3. 相对域名,且域名包含的`.`的数目少于option ndots命令指定的数,依次往传入的域名后追加search列表中的后缀;

以上是“Kubernetes网络的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI