Docker 网络
Posted 林炜玮_51CTO
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker 网络相关的知识,希望对你有一定的参考价值。
docker网卡和高可用
Docker服务安装完毕后,默认为每个宿主机生成docker0网卡地址为172.17.0.1/16,作用通过它NAT访问宿主机的服务包括外网
docker结合负载实现网络高可用架构
实现思路:
1、docker容器1部署keepalived、haproxy、nginx
2、docker容器2部署keepalived、haproxy、nginx
3、结合应用间负载进行部署配置
docker网络互联
网络互联情景
pod:
容器到容器(k8s中同一个pod)
容器到容器(k8s中非同一个pod)
同一服务器
非同一服务器
容器到内网
内网到容器
网络三种类型
docker网络类型分为三种类型,bridge、host、none,docker network --help命令进行网络部分的帮助
bridge:
默认模式,无需指定模式
使用自定义IP,也可以DHCP
host
启动容器时命令指定网络模式为host,-net=host
不获取IP地址,直接使用物理机IP,并监听物理机IP监听端口,不会创建虚拟网卡
网络性能利用最高,适合mysql/kafka/redis/大数据容器业务,缺点是容器之间端口不能相同,不支持端口映射,适合固定的业务
none
没有网络包括网卡、IP、路由,命令指定-net=none
container
与已经存在的容器共享一个网络,命令指定-net=container
两个容器间通过lo网卡及容器ID通信
容器之间互联
通过名称、自定义名称(别名)互联,因为容器启动内部ip地址是DHCP分配的,名称/别名相对固定
容器跨主机在具备通信的情况下,宿主机做一个网络路由,复杂的环境使用google开源的k8s
思路
修改宿主机默认网段-更改服务器网段-重启网卡-添加静态路由-检查iptables规则
以上是关于Docker 网络的主要内容,如果未能解决你的问题,请参考以下文章