在9-4分布式Docker环境这节课里,不太理解虚拟网络的意义

来源:9-4 分布式Docker环境

akiradunncoco

2020-04-08

老师在17分30秒的时候,讲到创建虚拟网络,关于虚拟网络的意义,老师说到:“一个docker虚拟机实例可能运行成百上千个容器,如果Swarm网络中的所有容器都运行在一个虚拟网络之内,ip地址都不够用的;所以我们可以创建多个虚拟网络,然后把这些容器划分到不同的虚拟网络之内,问题不就解决了吗”
对于这里我不太理解,我的理解,容器是跟端口相关,有很多容器为啥会影响ip地址够不够用呢? 如果容器很多,那么经映射到宿主机的端口之后,实际上是消耗的宿主机的端口,只是增加占用了宿主机的端口,并没有多增加ip的使用啊。
就拿这里的4台Docker虚拟实例来说,每台Docker虚拟实例里都可以运行几百个容器,每个Docker虚拟实例都在一个VM虚拟机实例上,每个VM虚拟机实例的ip都是192.168.1.x这个地址,拿其中一台VM虚拟机里的Docker虚拟实例来说,容器增加,只是这里docker要做的只是多一些容器与宿主机的端口映射,但并没有增加ip啊,也就没有消耗ip地址导致ip地址不够用这一说法了…
这里不太明白,希望老师能抽空解答一下我的疑惑,谢谢老师!

写回答

1回答

神思者

2020-04-08

我指的是容器内网IP不够用,因为每个容器都要有docker内网IP。如果你组成了swarm网络,每台宿主机运行几百个容器,那么很多台宿主机都在一个swarm网络中就会出现swam内网IP不够用,一个网段内的IP是有上限的。所以要把容器划分到不同的网段上面

1
1
akiradunncoco
谢谢老师,我之前没有了解过的是docker容器还有内网ip的概念,并且一个swarm网络还有网段的限制,现在了解之后清楚了,谢谢老师!
2020-04-08
共1条回复

阿里新零售数据库设计与实战 (升级版)

解锁“新零售”业务让数据库实战能力再上一层楼

2101 学习 · 701 问题

查看课程