00:00
欢迎大家继续收看上硅谷的Linux云计算视频,大家好,我是汪洋老师。上节课呢,我们给大家讲了一些,我们后面可能会涉及到一些网络的相关概念,对吧,那当然有些东西我们都已经学习过很长时间了,所以为了防止大家遗忘呢,给大家做了一个补充。好,那这节课呢,我们就会继续往后去看。我们看什么呢?看也是一些网络相关,只不过这个网络相关是针对于我们的。牛创这个项目去说的。其实对于我们的欧star的网络环境来说,并不是从我们的第一个版本到现在都是唯一不变的,而是经过了很大的一个转移。包括到今天为止,在不同的公有云环境中,他们都采用了不同的方案去实现的。比如比如。呃,叫什么网易云。网易云呢,它主要采用的就是我们等会要去说的这种比较老旧的方案,并不是说老旧的方案不好,而且网易云通过硬件页对我们的老旧方案做了一些补充,让他实现了隔离。
01:09
那比如。呃,阿里云它采用的就是我们的最新的流创方案。所以还是不一样的,对吧?好,那我们大家先看一下,在扭创项目之前,Open star如果想实现网络的话,想实现我们的虚拟网络的话,那它是怎样去做的。那它的这个项目呢,命名比较简单,就叫就叫nova network。那当时的nova nova network呢?有这么几种方案,第一个叫Fla,第二叫flat dhcp,第三个叫贝。就这么几种方式。那这里大家也看到了,对吧,就是直接把我们的网卡相连,通过我们的调节器进行我们所谓的虚拟机以及我们的控制节点之间的转发,以及所谓的通讯。那这种方案肯定会有对应的一个影响,对吧,比如我们的啊,指望之间啊,不隔离啊,对吧,这都会存在一定的问题,不可能在大规模的环境中去应用。
02:07
有点类似于我们当前用的什么一个虚拟机的方案,就是我们虚拟机和虚拟机之间通过网桥去通讯。那你要知道,在我们的open style想解决的是一个语音环境,对吧?那可能会有多个租户,有张三,有李四,他们的主题如果能够相互直接连通的话,会出现一堆的问题。比如如果。如果你的IP。对吧,设置完了以后,那比如是一个什么,可能是一个数据库服,那我有可能通过,我要知道你IP以后可能通过我们直接的。虚拟机相连,直接连到你的数据库内部,那这样是非常危险的,对吧。肯定会暴露一定的危险隐患。那对于这noone network来说呢?他们有这么几种实验方案,我们一个个去看一下吧。首先第一个。Flat说的是什么呢?就是指定一个直网,规定虚拟机使用的IP范围。
03:07
能理解吗?就讲白来说,就是我说你能用10.0.0.0杠的四维网段。那你就用这个网段。一旦开启一个新的虚拟机以后,那你就需要从这个有效的地址池里获取一个IP地址即可。并且当时的IP地址还是我们的,所谓的并不是DCP这种类型,而是通过我们的。呃,脚本或者是我们的人工去配置的。好。那还需要去手动配置好网桥等等,通过一个网条相连实例组成一个虚拟网网,也就意味着这些实例之间是相互连通,并不能做隔离的。如果想跟web通讯,还要借助这种那方案。并且只能对类UI操作系统生效。
04:01
这都是发的一个缺点对吧。那大家也看到了。这里只规定了一个IP的可用范围。以及我们的通讯方案。但是这里的IP是需要我们通过脚本或者是手动去指定的,比较恶心对吧,那甚至是不是有的时候还可能去配IP配冲突了,那怎么办呢?变成了flat概率CP。蒋白来说,就是flat的网络加了一个DHCP的功能,仅此而已。相信大家应该都能理解对吧?好,那但是这个实现的DCP服务器并不是通过我们传统的d cp server去实现的,而是一个叫DNSMSQ这个软件去实现的。这是我们在生动华特七中红帽比较推荐的这么一个DNS服务器。功能比较小,软件也比较少。但是比较精简对吧,好。
05:00
那我们再看下一个VLAN的这么一种网络的。呃,搭建类型,构建类型。那在网络在VLAN的这种网络的构建类型里呢,每个用户就可以分配到一个VLAN了。那每个用户创造的网站接口都会在同一个VLAN内部。那这样的话就会出现一个结果了,就是。在我的虚拟化环境中,或者在我的云环境中,如果部署了VLAN这种类型的话,那每一个用户我就可以把它隔离到一个VLAN内部。微量内部的虚拟机呢,它们之间能够相互通讯,但不同微难,也就是不同用户之间呢,是无法通讯的。问题是解决了,并且他们每个VLAN之间通过DHCP去分配地址都没问题,但是这个比较贴近于我们的私有云,原因是什么呢?VLAN有个最基础的限制,就是它最多只能有4096个。你一旦超过这个限制,他就不支持了,也就意味着你最大只能支持4096个用户。
06:03
毕竟没有一个用户想跟别的用户去共用一个网络吧,这个很好理解对吧,那所以出现这种问题以后,他只能符合我们的。对于公务员来说。是不可能的,对吧?公务员哪能只能只有4096的用户呢?肯定不现实,除非你不想做大对吧?好,那所以就会存在这样的问题,又是传统的桥接模式,用户又不能自定义网络,都是一个分配的,对吧?我们说的自定义网络式不能自定义网段。你的IP地址还是可以自定义的,对吧?好,第三个网络隔离也会出现一定问题。第四个就是大规模。部署的时候。不太应用不太适用对吧。好,那如果我们想去。把这个项目进行更改。我们就需要提一堆需求了。那需求有很多,比如技术需求,高密度。
07:01
多住户、大规模扩展、虚拟机、可移动资源自动管理、低成本的实现方案,这都是我们对open star网络节点想要去更新以后想要去得到了一个最起码的需求。这些需求相当于。呃,怎么说呢。就是对于不同的用户能够进行不同的隔离。对吧,并且这个量要大,你不能搞一个什么4096个就完了。而且它能够实现我们的。后期扩展啊。对吧,还有实现成本比较低,这都是我们需要得到的这么一个结果。那对于企业来说,它还要加一些新的功能,比如什么可以自定义网络啊。那可以进行我们的流量控制啊,对吧,可以进行防火墙啊,可以进行监控审计啊,那这样的话,我才能去对一些用户的消耗的资源去收费。这个很好理解对吧,毕竟企业就是为了赚钱嘛,我都不知道你用了多少流量,我怎么去对你进行收费呢?不太合理对吧。
08:03
所以有了这些需求以后呢,我们的牛创项目就诞生了,那什么是纽创呢?怎么来说就是。网络连接服务。就是我们在open中的网络连接符。那有哪些特点呢?面向知乎IP接口,用于创建虚拟网络路由器。负载均衡,关联网络接口至指定的网络和路由器。那也就意味着我们可以通过不同的租户。这里也就是。如果放在我们的,呃,怎么说呢,现实环境中的话,就是张三和李四两个人对吧,分别有不同的ipi接口,可以创建自己的这么一个网络。那也可以通过ipi接口管理虚拟机物理交换可以通过plug架构支持不同的技术平台,也就可以通过插件的方式去添加不同的功能,去适应不同的平台。那主要的部署方式呢?有两种,第一个是可以提供固定的CIP,第二是可以提供浮动IP,这都是牛创的一个基础概念,或者它的一些特性。
09:07
在纽创项目里呢,它有一些关键词,或者叫关键概念。第一个叫network。Network讲白来说就是一个可用网络,这个可用网络我们讲的是一个二层结构啊,或者叫二层单元,或者叫做二层区间。并且租户是可以通过我们的IPIPI接口去创建自己的网络的,也就我可以创建一个幺九,2.16 8.6.3,甚至我可以创建一个20.6,这20.0,这都是没问题的。你可以自己去确定自己的网段。Down subne。这个讲的是一段IPV4或IPV6的地址段。这个是什么意思啊,Sum,比如。Network讲的是一个范围。讲的是一个具体的对这个范围内的一个描述。能理解我的意思吧,那它sum就是10.0.0.0杠四,这就是一个sum。
10:05
好,Root呢是一个。跟我们的传统的概念没什么区别,就是一个上层路由器,只不过它是通过软件去实现的,仅此而已。可以为我们的租户的实例提供路由功能,对吧,好,还有pot端口。传统的意义上的端口呢,就是我们的网卡插入的地方,水晶头插入的地方,对吧,那在我们的整个open star环境中呢,它也有对应的端口的概念。那把。把我们的这个sum插入到对应的路由器的某个端口上,这样的话才进行了连接,需要大家注意一下。那接下来我们看一下我们刚才讲的那些。概念对应之间的关系。那这里呢,会有一个所谓的地址对吧,以及我们的实例主机这里是一对多的关系,也就一个主机可以有多个地址,这肯定是没问题的。
11:01
地址和我们的。Sub之间呢,也是一个。一对多,比如一个网段内部有多个地址,那一个地址肯定是属于一个网段内部的,对吧?好,Net和路由器之间有多对多的关系,也就意味着可能会出现这么一种情况。这是一个。路由器set set路由器,它们之间是可以相互重叠连接的。一对多对多是完全没有问题的,那。网络呢,网络网络呢,和我们的一个区域内部,它是一个一对多的关系。对吧,好端口和网络它也是一个一对多的关系。一个网络。只能有一个接口去匹配。那一个接口可以有多个网络,这肯定是没问题的,对吧?好,那这是我们的概念之间的。对应关系。那接下来我们继续往后看,看的是我们的。流创了里面的一个组件架构。
12:01
就怎样去实现的,或者让它实现的分布图。那这里呢,主要分为两个地方。一个是我们的服务端。一个是我们的代理端。那用户呢,可以通过一些什么所谓的什么租户的脚本。仪表盘套件或nova对吧,我们的。计算节点通过对应的IP或客户端连接到我们的流创的ipi去创建对应的网络。创建对应的。接口或者端口都没有问题。这些ipi就是过以后呢,要被转交到他,可他可做不了对应的操作,对吧,然后转交到我们的纽创的plugin上,Plugin呢去创建网络,创建端口。当然,这里的创建网络,创建端口只是输入对应的命令,这个命令会被转接到我们什么?消除队列服务怎么办?消息队列服务中来,消息队列服务中来,这个信息会被我们在不同的nova主机上的唯一的我们的。
13:03
V Switch的。Switch的这么一个代理。去接收到,接收到以后,他再在对应的主机上去创建。所以在这里你会发现,这里也是一个一对多的关系。当然,我这里说的一也是可以是负载均衡之后的一。能理解我的意思吗?也就意味着这里的牛创社会可能有很多个,但是被负载以后,是不是只有一个在同时生效?这个很好理解对吧?好,那这里的多是讲完的时候是什么?就是每台主机都有一个v Switch。而且是唯一的一个,它是在当前主机实现这些网络实现的。组件。当它也是一个控制结果对吧,底层依然是通过我们所所谓的,嗯嗯。Open Switch Switch的软件啊,或者是底层的什么所谓的name SP的命名,命名空间啊,这样的方案去实现,需要大家注意一下。
14:01
那接着我们继续往后。
我来说两句