开发者社区> 太公> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

阿里云VPC下Kubernetes的网络地址段

简介: kubernetes地址段划分 在阿里云上创建Kubernetes就能的时候,通常可以选择自动创建专有网络,完全不用操心地址分配的问题。然后事情并非总是真么简单,某些情况下,还是得自己规划ECS地址、Kubernetes Pod地址和Service地址。
+关注继续查看

在阿里云上创建Kubernetes就能的时候,通常可以选择自动创建专有网络,完全不用操心地址分配的问题。然后事情并非总是真么简单,某些情况下,还是得自己规划ECS地址、Kubernetes Pod地址和Service地址。本文将介绍阿里云VPC环境下Kubernetes里各种地址作用,以及地址段该如何选择。首先来看几个和IP地址有关的概念

VPC网段

在创建VPC选择的地址段。只能从10.0.0.0/8,172.16.0.0/12,192.168.0.0/16三者当中选择一个。

交换机网段

在VPC里创建交换机时指定的网段,必须是当前VPC网段的子集(可以跟VPC网段地址一样,但不能超过)。交换机下面的ECS所分配到的地址,就是从这个交换机地址段内获取的。一个VPC下,可以创建多个交换机,但交换机网段不能重叠。

VPC网段结构如下图

vpc

Pod地址段

Pod是Kubernetes内的概念,每个Pod具有一个IP地址。在阿里云容器服务上创建Kubernetes集群时,可以指定Pod的地址段,不能和VPC网段重叠。比如VPC网段用的是172.16.0.0/12,Kubernetes的Pod网段就不能使用172.16.0.0/16,不能使用172.17.0.0/16...这些地址都涵盖在172.16.0.0/12里了。

Service地址段

Service也是Kubernetes内的概念,每个Service有自己的地址。同样,Service地址段也不能和VPC地址段重合,而且Service地址段也不能和Pod地址段重合。Service地址只在Kubernetes集群内使用,不会出集群。

Kubernetes网段和VPC网段关系如下图

kubernetes_vpc

如何选择地址段

单VPC+单Kubernetes集群场景

这是最简单情形。VPC地址在创建VPC的时候已经确定的,创建Kubernetes集群时,选择和当前VPC不一样的地址段就可以了。

单VPC+多Kubernetes集群场景

一个VPC下创建多个Kubernetes集群。在默认的网络模式下(Flannel),Pod的报文需要通过VPC路由转发,容器服务会自动在VPC路由上配置到每个Pod地址段的路由表。所有Kubernetes集群的Pod地址段不能重叠,但Service段可以重叠。

VPC地址还是创建VPC的时候确定的,创建Kubernetes的时候,为每个Kubernetes集群选择一个不重叠的地址段,不仅不能和VPC地址重叠,也不和其他Kubernetes Pod段重叠。

需要注意的是,这种情况下Kubernetes集群部分互通,一个集群的Pod可以直接访问另外一个集群的Pod和ECS,但不能访问另外集群的Service。

VPC互联场景

两个VPC网络互联的情况下,可以通过路由表配置哪些报文要发送到对段VPC里。以下面的场景为例,VPC 1使用地址段192.168.0.0/16,VPC 2使用地址段172.16.0.0/12,我们可以通过路由表,指定在VPC 1里把172.16.0.0/12的报文都发送到VPC 2。

vpc_h

在这种情况下,VPC 1里创建的Kubernetes集群,首先不能和VPC 1的地址段重叠,同时其地址段也不能和要路由到VPC 2的地址段重叠。在VPC 2上创建Kubernetes集群也类似。这个例子上,Kubernetes集群Pod地址段可以选择10.0.0.0/8下的某个子段。

这里要特别关注“路由到VPC 2”的地址段,可以把这部分地址理解成已经占用的地址,Kubernetes集群不能和已经占用的地址重叠。

如果VPC 2里要访问VPC 1的Kubernetes Pod,则需要在VPC 2里配置到Kubernetes的路由。

VPC网络到IDC的场景

和VPC互联场景类似,同样存在VPC里部分地址段路由到IDC里,Kubernetes集群的Pod地址就不能和这部分地址重叠。IDC里如果需要访问Kubernetes里的Pod地址,同样需要在IDC端配置到专线VBR的路由表。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
专有版Kubernetes集群支持VPC多路由表
背景 Kubernetes通过Cloud Controller Manager(又称CCM)组件在VPC路由表中添加合适的路由来打通集群中Pod之间的网络连接。 近期VPC发布了对多个路由表的支持能力,让用户可以自行选择ECS关联哪些路由表,为用户提供了丰富的路由管理能力。由于CCM早期版本中仅提供了VPC单路由表的支持,因此您需要在容器服务控制台升级CCM至最新版本。 前置条件 通过
131 0
蚂蚁大规模 Kubernetes 集群无损升级实践指南【探索篇】
蚂蚁 Sigma 作为蚂蚁集团核心的基础设施,经过多年的发展其规模已经处于业界领先位置,大规模集群对 Kubernetes 的稳定性及功能性提出更高的要求。蚂蚁 Sigma 力争在万级规模的云原生环境下,挑战高效稳定、无损无感的云原生操作系统升级,给用户带来极致稳定的、功能新颖的云原生服务。
143 0
Kubernetes 集群部署 Redis + redis_exporter (单点)
在使用 Kubernetes 部署应用后,一般会习惯与将应用的配置文件外置,用 ConfigMap 存储,然后挂载进入镜像内部。这样,只要修改 ConfigMap 里面的配置,再重启应用就能很方便就能够使应用重新加载新的配置,很方便。
288 0
Kubernetes 集群可视化监控之Weave Scope
weave scope 可以以其简洁的可视化为我们更生动形象的展现出service/controller/pod等资源对象的管理及简单的 Web UI 操作,方便故障排除及时定位。
111 0
Kubernetes 集群部署 Ingress Traefik v2.4
Traefik 是一个开源的可以使服务发布变得轻松有趣的边缘路由器。它负责接收你系统的请求,然后使用合适的组件来对这些请求进行处理。
269 0
自建Kubernetes集群如何使用免密组件拉取容器镜像
aliyun-acr-credential-helper是一个可以在ACK集群中免密拉取ACR个人版或企业版私有镜像的组件。该组件会默认安装在所有ACK集群中。本文列举四个场景介绍如何使用免密组件拉取私有镜像。
477 0
从零到破万节点!支撑618大促背后的蚂蚁金服Kubernetes集群
今年618天猫大促,蚂蚁首次在调度系统和技术栈全量应用Kubernetes,这也是世界最大规模的Kubernetes集群之一。这是由一个仅有十几人组成的小队团蚂蚁金服的 Kubernetes开发团队用短短一年时间取得的成绩。
1998 0
kubernetes集群问题排查
本文CSDN博客地址:http://blog.csdn.net/huwh_/article/details/71308301 1. 查看系统Event事件 [plain] view plain copy kubectl describe pod  --namespace=   该命令可以显示Pod创建时的配置定义、状态等信息和最近的Event事件,事件信息可用于排错。
3795 0
+关注
太公
姜继忠,阿里云高级技术专家,负责阿里云容器服务和容器Hub等产品。目前关注容器相关技术。
19
文章
0
问答
来源圈子
更多
容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理。容器服务 Kubernetes 版简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。
+ 订阅
相关文档: 云原生应用交付平台 ADP 容器镜像服务 容器服务Kubernetes版
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载