- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
容器技术分享之三
——网络、存储和服务
内容概要
Docker提供的网络模式——网桥模式
默认模式
建立虚拟网卡Docker0
增加路由规则
配置iptables
在宿主机上有何容器的端口映射
也叫做NAT模式,使用最多
Docker提供的网络模式——None模式
容器启动时不创建任何网络,即此时在容器内部没有配置任何地址
此模式可以在容器启动后再配置容器网络
nova-docker使用此种方式
网络创建的责任完全交给用户
Docker提供的网络模式——Host模式
容器启动时和宿主机共用网络配置
使用宿主机的地址作为容器地址
端口也为宿主机端口,但不能使用低配置端口,需要管理好端口分配
网络没有进行隔离,存在安全隐患
Docker提供的网络模式——容器模式
容器启动时和另外一个容器共用网络配置
使用另外一个容器的地址作为容器地址
端口也为另外一个容器端口,需要管理好端口分配
网络和另外一个容器没有进行隔离
网络存在问题
在同一台宿主机器内,容器间可以相互访问,跨主机访问成为问题
虽然使用网桥模式可以跨主机,但性能较差
使用Host模式也可以实现跨主机,但存在安全问题
为解决这个问题,先后出现了多种方案:
Docker 1.9 新的网络模式
Weave
Flannel
Pipwork
Calico
二层VLAN或者Overlay
上面提到的网络项目在实现细节上存在很多差异,但其思路无非分为两种:二层VLAN网络和Overlay网络
二层VLAN网络的解决跨主机通信的思路是把原先的网络架构改造为互通的大二层网络,通过特定网络设备直接路由,实现容器点到点的之间通信。特点是传输效率高,但需要二层网络设备支持,通用性和灵活性不如,可能带来广播泛滥
Overlay网络是指在不改变现有网络基础设施的前提下,通过某种约定通信协议,把二层报文封装在IP报文之上的新的数据格式, Overlay网络实际上是目前最主流的容器跨节点数据传输和路由方案
Docker 1.9 跨主机网络
Sandbox:对应一个容器中的网络环境,包括相应的网卡配置、路由表、DNS配置
Endpoint:实际上就是一个容器中的虚拟网卡,在容器中会显示为eth0、eth1依次类推
Network:指的是一个能够相互通信的容器网络,加入了同一个网络的容器直接可以直接通过对方的名字相互连接
需要Swarm
Weave
pcap
overlay
fast datapath来提供高性能
Flannel
UDP
vxlan
etcd存储配置数据和子网分配
Calico
纯三层的 SDN 实现,它基于 BPG 协议和 Linux 自己的路由转发机制,不依赖特殊硬件,没有使用 NAT 或 Tunnel 等技
性能接近于物理机
问题
容器网络一般采用哪两种方式实现?
内容概要
存储问题
容器的两个事实:
容器内数据随容器销毁而销毁
容器集群后会进行漂移
带来的问题:
日志如何收集和查看?
文件存储在哪里?
容器漂移后,状态数据如何处理?
Docker 存储挂载
不同存储需求的进行不同处理:
日志挂载宿主本地文件系统
数据库挂载SSD磁盘
普通文件挂载SAS
持久的用分布式存储
容器漂移——Flocker
Docker的plugin机制
可以随容器的迁移而迁移
支持多种存储后端
问题
Docker是否支持以插件模式管理存储?
内容概要
容器化后服务使用问题
容器启动前地址一般不是事先确定的,这就造成基于地址的服务发现和使用成为问题
两种思路:
一种是将服务的地址在服务使用方容器启动时以环境变量注入进去
一种是通过DNS域名解析方式使用服务
Kubernetes服务
支持两种方式
变量注入(自动)
DNS
Consul——分布式服务注册和发现
Consul 的优势
使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接. 相比较而言, zookeeper 采用的是 Paxos, 而 etcd 使用的则是 Raft.
支持多数据中心,内外网的服务采用不同的端口进行监听。 多数据中心集群可以避免单数据中心的单点故障,而其部署则需要考虑网络延迟, 分片等情况等. zookeeper 和 etcd 均不提供多数据中心功能的支持.
支持健康检查. etcd 不提供此功能.
支持 http 和 dns 协议接口. zookeeper 的集成较为复杂, etcd 只支持 http 协议.
官方提供web管理界面, etcd 无此功能.
问题
Kubernetes使用环境变量注入存在什么问题?
您可能关注的文档
最近下载
- 中国银行新疆区分行招聘笔试试题2024 .pdf VIP
- 2025中国银行新疆区分行社会招聘笔试备考题库及答案解析.docx VIP
- 2024电能计量装置典型设计低压用电客户.docx VIP
- 粗轧机AWC液压控制系统故障原因分析和改进.pdf VIP
- 2025年中国银行社会招聘备考试题及答案解析.docx VIP
- 《草原》部编版 六年级上册语文PPT课件.ppt VIP
- 市属投资集团公司下属企业工资总额预算管理办法.pdf VIP
- 2025中国银行社会招聘考试备考题库及答案解析.docx VIP
- 2025中国银行新疆区分行社会招聘笔试模拟试题及答案解析.docx VIP
- 2025中国银行新疆区分行社会招聘笔试参考题库附答案解析.docx VIP
文档评论(0)