《容器化开发竞赛培训》-5.网络管理_第1页
《容器化开发竞赛培训》-5.网络管理_第2页
《容器化开发竞赛培训》-5.网络管理_第3页
《容器化开发竞赛培训》-5.网络管理_第4页
《容器化开发竞赛培训》-5.网络管理_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Docker容器技术与应用》

学习目标01

能够陈述网络连接模式。02

能够利用网络将同一宿主机上的容器互联。03

能够利用网络实现跨主机上的容器互联。04

提高网络安全意识,加强网络安全教育。容器不是孤立的,可能需要容器间进行通信,还可能需要跨主机间容器进行通信,这就需要使用Docker网络。Docker网络配置主要解决容器的网络连接问题、容器之间或跨主机容器之间的通信问题。描

述项目描述任

务分解tasks

01容器的网络连接模式

02单宿主机容器间互联

03跨主机实现容器通信

01

任务1:容器的网络连接模式

容器的网络连接模式--任务说明了解Docker的网络架构了解不同网络模式的区别点了解Docker

的网络模式创建不同网络模式的容器

容器网络模型CNM沙盒:

包含容器的网络配置。每个容器中会有一个隔离的用于网络配置的环境。一个沙盒可以有多个端点和多个网络。EP:

Endpoint是一个网络接口,可理解为虚拟网卡,是成对出现的,

一端连接在具体容器的网络沙盒,一段连接docker网络。

一个端点只可以属于一个网络并

且只属于一个沙盒。Network:类似于网桥或虚拟交换机。端点如果到其中一个网络,

那么将无法与外界连接。不连接

容器网络模型CNM

CNM组件与容器关联•容器A与容器B通过网络A实现相互通信。容器B的两个端点不能通信。01bridge模式默认的网络模式。

02host模式--net=host

CNM的分类04non模式--net=none

03container模式•

当使用docker

run命令创建Docker容器时,

可以使--net选项指定容器的网络模式。

--net=container:

容器ID或容器名称

CNM的分类--net=bridge•默认网络模式。每个容器分配一个网络命名空间。每个容器分配一个docker0子网的IP地址,默认网关为docker0的IP地址,

一个宿主机上的Docker容器连接到同一

个虚拟网桥(虚拟交换机)上。

容器网络模式CNM的分类—

bridge模式

容器网络模式CNM的分类—

bridge模式

容器网络模式CNM的分类—

host模式•容器和宿主机(物理机)共享网络命名空间,共用IP地址和端口等信息。[root@docker-zq

~]#docker

run

-it

--net=host

centos/bin/bash

容器网络模式CNM的分类—

host模式

容器网络模式CNM的分类—container模式•容器和一个已经存在的容器共享网络命名空间,

共用IP地址和端口等信息。

容器网络模式CNM的分类—container模式

容器网络模式CNM的分类—

none模式•容器拥有自己的网络命名空间,但是关闭了容器的网络配置,没有IP地址等信息。•可以使用Docker网络驱动(bridge、

overlay、

macvlan)或第三方网络驱动插件创建一个自定义的网络,然后将多个容器连接到同一个自定义网络。

容器网络模式CNM的分类—

自定义网络CNM容器网络模型none模式Bridge模式Host模式项目总结网络模式的分类Container模式《Docker容器技术与应用》下期见!分别使用四种网络模式创建容器,并容器分配到的IP等信息。

实操练习

02

任务2:单宿主机容器间互联使用bridge模式实现单宿主机容器间通信使用自定义桥接网络实现容器间通信

单宿主机容器间互联•创建或启动容器时不指定网络,则该容器会被连接到默认网络模式(bridge模式)。该模式下,

同一个Docker网络上的所有容器在所有端口上都可以相互连接。且只能通过IP地址互相访问,验证方法:1、使用bridge模式启动两个容器。2、查看bridge网络的详细信息,是否包含这两个容器。3、进入其中一个容器后,使用ping命令尝试连接第二个容器IP地址和容器名,查看是否连通。

bridge模式实现容器间通信

bridge模式实现容器间通信1、使用bridge模式启动两个容器。

bridge模式实现容器间通信2、查看bridge网络的详细信息,是否包含这两个容器。

bridge模式实现容器间通信3、进入其中一个容器后,

使用ping命令尝试连接第二个容器IP地址和容器名,

查看是否连通。网络

通畅网络

不通

自定义桥接网络实现容器间通信

在自定义桥接网络中,容器不仅能通过IP地址进行通信,而且还能将容器名称解析到IP地址,这种功能称为自动服务发现。自定义网桥的命令为:docker

network

create

[选项]

网络名称验证方法:1、创建自定义的zq-net网络。2、创建三个容器,两个使用自定义的zq-net网络,

一个使用默认网络模式。3、进入第一个容器,使用ping命令尝试连接其他容器的IP地址和容器名,

查看是否连通。

自定义桥接网络实现容器间通信1、创建自定义的zq-net网络。

自定义桥接网络实现容器间通信2、创建三个容器,两个使用自定义的zq-net网络,

一个使用默认网络模式。

自定义桥接网络实现容器间通信3、进入第一个容器,使用ping命令尝试连接其他容器的IP地址和容器名,

查看是否连通。网络

不通网络

通畅验证通信自定义网络模式Bridge模式验证通信项目总结实现容器通信实现容器通信《Docker容器技术与应用》下期见!实现单宿主机容器间的通信

实操演示

03

任务3:跨主机实现容器通信使用Flannel实现跨主机通信跨主机实现容器通信--任务说明Flannel的实现步骤

Flannel方式Flannel是

Kubernetes集群中常用的网络配置工具。功能是让集群中的不同主机创建的Docker容器都具有全集群唯一的虚拟IP地址。Etcd---flannel是为集群中所有节点重新规划IP地址的使用规则,从而使不同节点上的容器能够获得“同属一个内网“且”不重复的“ip地

址,并让属于不同节点上的容器能够通信。

Flannel方式编辑etcd配置文件

并启动etcd服务设置域名解析

Flannel实现跨主机通信的操作步骤01030405创建跨主机的容器,测

试连通性安装etcd和

flannel服务测试etcd服务

02

○0

启动容器,测试连通性。配置06

Flannel实现跨主机通信的操作步骤配置并重启flannel服务○1

09

08

flannel0与

docker0之间

的网络设置网络网段

10

设置防火墙07Flannel实现跨主机通信—操作步骤(1)在两个节点上创建容器,测试两个容器是否连通?。(2)配置域名解析(两个节点)Flannel实现跨主机通信—操作步骤(3)安装etcd和flannel服务(controller节点安装两个服务,

client节点只安装flannel服务)[rootecortrgller~]#yum.-yinstalletcdannel[rootedogker-zq-l#yum-yinstallflannel(4)

controller节点配置etcd服务,并启动etcd服务。节点名称端地址数据存放位置监听客户通知etcd

服务器显示结果healthy,代表正常Flannel实现跨主机通信—操作步骤(5)测试etcd服务是否正常开启。

Flannel实现跨主机通信—操作步骤(6)设置网络网段。(7)配置flannel服务,并启动flannel服务。[rootecontrglLer~l#systemctlenableflannelg--now边界IP,和上述文件FLANNEL_SUBNET对应Flannel实现跨主机通信—操作步骤(8)配置flannel0与docker0之间的网络(两个节点)网络最大传输单元,和上述文件F

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论