File tree Expand file tree Collapse file tree 3 files changed +20
-20
lines changed Expand file tree Collapse file tree 3 files changed +20
-20
lines changed Original file line number Diff line number Diff line change 2
2
3
3
&emsp ;&emsp ; 现在我们将从网络管理角度简要讨论您应该注意的一些方面。大多数这些问题对于多主机部署同样重要:
4
4
5
- - IP地址分配
5
+ ## IP地址分配
6
6
7
- &emsp ;&emsp ; 当容器频繁创建、销毁时候,手动分配IP地址是不可持续的,桥接模式在一定程度上解决了这个问题。为了防止本地网络上的ARP冲突,Docker守护程序从分配的IP地址生成一个MAC地址。
7
+ &emsp ;&emsp ; 当容器频繁创建、销毁时候,手动分配IP地址是不可持续的,桥接模式在一定程度上解决了这个问题。为了防止本地网络上的ARP冲突,Docker守护程序从分配的IP地址生成一个MAC地址。
8
8
9
- - 管理端口
9
+ ## 管理端口
10
10
11
- &emsp ;&emsp ; 有两种管理端口的方法:固定端口分配或端口动态分配。对于桥接模式,Docker可以自动分配(UDP或TCP)端口,从而使其可路由。像Kubernetes这样的系统采用扁平的IP容器网络模式,不会遇到这个问题。
11
+ &emsp ;&emsp ; 有两种管理端口的方法:固定端口分配或端口动态分配。对于桥接模式,Docker可以自动分配(UDP或TCP)端口,从而使其可路由。像Kubernetes这样的系统采用扁平的IP容器网络模式,不会遇到这个问题。
12
12
13
- - 网络安全
13
+ ## 网络安全
14
14
15
- &emsp ;&emsp ; 开箱即用,Docker启用了[ 容器间通信] ( https://docs.docker.com/network/ ) (意味着缺省值为--icc=true)。这意味着主机上的容器可以互相通信而没有任何限制,这可能会导致拒绝服务攻击。此外,Docker通过--ip_forward和--iptables标志来控制容器间和容器与容器外的通信。一种好的做法是,您应该研究这些标志的默认设置,根据公司的实际安全策略在Docker守护程序中设置它们。
15
+ &emsp ;&emsp ; 开箱即用,Docker启用了[ 容器间通信] ( https://docs.docker.com/network/ ) (意味着缺省值为--icc=true)。这意味着主机上的容器可以互相通信而没有任何限制,这可能会导致拒绝服务攻击。此外,Docker通过--ip_forward和--iptables标志来控制容器间和容器与容器外的通信。一种好的做法是,您应该研究这些标志的默认设置,根据公司的实际安全策略在Docker守护程序中设置它们。
16
16
17
- &emsp ;&emsp ; 像[ CRI-O] ( http://cri-o.io ) 这样的系统,使用的是容器运行时接口(CRI),没有像Docker这样有功能庞大的守护进程,像较于Docker,可能会暴露更小的攻击面。
17
+ &emsp ;&emsp ; 像[ CRI-O] ( http://cri-o.io ) 这样的系统,使用的是容器运行时接口(CRI),没有像Docker这样有功能庞大的守护进程,像较于Docker,可能会暴露更小的攻击面。
18
18
19
- &emsp ;&emsp ; 另一个网络安全方面是线上加密,通常意味着[ RFC 5246] ( https://tools.ietf.org/html/rfc5246 ) 标准的TLS/SSL。
19
+ &emsp ;&emsp ; 另一个网络安全方面是线上加密,通常意味着[ RFC 5246] ( https://tools.ietf.org/html/rfc5246 ) 标准的TLS/SSL。
Original file line number Diff line number Diff line change 16
16
17
17
*** 分布式系统和数据局部性:***
18
18
19
- 使用分布式系统(用于计算或存储)的基本思想是受益于并行处理,通常与数据局部性相对应。就数据局部性而言,我的意思是将代码传送到数据所在的位置,而不是(传统的)其他方式。
19
+ & emsp ;& emsp ; * 使用分布式系统(用于计算或存储)的基本思想是受益于并行处理,通常与数据局部性相对应。就数据局部性而言,我的意思是将代码传送到数据所在的位置,而不是(传统的)其他方式。*
20
20
21
- 此时你可以想一下:如果数据集大小在TB范围内,并且代码大小以MB为单位,那么在集群中移动代码比将所有数据传输到中央处理位置更有效。 除了能够并行处理事物之外,通常可以通过分布式系统获得容错能力,因为系统的某些部分可以或多或少独立地继续工作。
21
+ & emsp ;& emsp ; * 此时你可以想一下:如果数据集大小在TB范围内,并且代码大小以MB为单位,那么在集群中移动代码比将所有数据传输到中央处理位置更有效。 除了能够并行处理事物之外,通常可以通过分布式系统获得容错能力,因为系统的某些部分可以或多或少独立地继续工作。*
22
22
23
23
&emsp ;&emsp ; 简而言之,Docker网络是Docker原生提供的本地容器SDN解决方案。
Original file line number Diff line number Diff line change 2
2
3
3
&emsp ;&emsp ; 容器网络技术栈包含以下内容:
4
4
5
- - 低层网络层
5
+ ## 低层网络层
6
6
7
- &emsp ;&emsp ; 包括网络设备,iptables,路由,IPVLAN和Linux命名空间。除非你从事容器网络相关的工作,否则通常不需要知道该层的细节,但至少应该知道这一点。请注意,这里的技术已经存在并被使用了十年以上。
7
+ &emsp ;&emsp ; 包括网络设备,iptables,路由,IPVLAN和Linux命名空间。除非你从事容器网络相关的工作,否则通常不需要知道该层的细节,但至少应该知道这一点。请注意,这里的技术已经存在并被使用了十年以上。
8
8
9
- - 容器网络层
10
-
11
- &emsp ;&emsp ; 该层提供了一些抽象,如单主机桥接网络模式和多主机IP-per-container解决方案。我将在第2章和第3章中介绍了这一层。
9
+ ## 容器网络层
12
10
13
- - 容器编排层:
14
-
15
- &emsp ;&emsp ; 在这里,容器调度程序在调度容器的时候需要由较低层提供部分网络信息。在第4章中,我们将简要介绍下容器编排系统,在第5章中我们将重点讨论服务发现方面的内容。第6章讨论容器网络标准CNI,最后在第7章讨论Kubernetes网络。
11
+ &emsp ;&emsp ; 该层提供了一些抽象,如单主机桥接网络模式和多主机IP-per-container解决方案。我将在第2章和第3章中介绍了这一层。
16
12
17
- ## 软件定义网络
13
+ ## 容器编排层
18
14
19
- &emsp ;&emsp ; SDN实际上是一个营销术语。采用SDN,网络管理团队变得更加敏捷,并且可以对不断变化的业务需求做出更快的反应。 SDN是使用软件对网络进行配置,无论是通过API补充[ 网络功能虚拟化] ( https://en.wikipedia.org/wiki/Network_function_virtualization ) 还是通过软件构建网络。特别是如果您是开发人员或架构师,我建议您快速浏览思科对此主题的[ 精彩概述] ( https://www.cisco.com/web/solutions/trends/sdn/index.html ) 以及SDxCentral的文章“[ 什么是软件定义的网络(SDN)] ( https://bit.ly/2jvUkiO ) ?”
15
+ &emsp ;&emsp ; 在这里,容器调度程序在调度容器的时候需要由较低层提供部分网络信息。在第4章中,我们将简要介绍下容器编排系统,在第5章中我们将重点讨论服务发现方面的内容。第6章讨论容器网络标准CNI,最后在第7章讨论Kubernetes网络。
16
+
17
+ *** 软件定义网络***
18
+
19
+ &emsp ;&emsp ; * SDN实际上是一个营销术语。采用SDN,网络管理团队变得更加敏捷,并且可以对不断变化的业务需求做出更快的反应。 SDN是使用软件对网络进行配置,无论是通过API补充[ 网络功能虚拟化] ( https://en.wikipedia.org/wiki/Network_function_virtualization ) 还是通过软件构建网络。特别是如果您是开发人员或架构师,我建议您快速浏览思科对此主题的[ 精彩概述] ( https://www.cisco.com/web/solutions/trends/sdn/index.html ) 以及SDxCentral的文章“[ 什么是软件定义的网络(SDN)] ( https://bit.ly/2jvUkiO ) ?”*
20
20
21
21
&emsp ;&emsp ; 如果你在网络运维团队,那么你可能很乐意马上阅读下一章。 但是,如果您是架构师或开发人员,并且您的网络知识可能有点生疏,我建议在大概学习完[ Linux网络管理员指南] ( http://www.tldp.org/LDP/nag2/nag2.pdf ) 之后进行下一步学习。
You can’t perform that action at this time.
0 commit comments