专项技能训练五《云计算网络技术与应用》实训8-1:建立基于OpenvSwitch的GRE隧道

本文主要是介绍专项技能训练五《云计算网络技术与应用》实训8-1:建立基于OpenvSwitch的GRE隧道,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 建立基于OpenvSwitch的GRE隧道
        • 1. 使用VMware安装2个CentOS 7虚拟机,安装时记得都开启CPU虚拟化,第一台命名为“Docker”,第二台命名为“KVM”。
        • 2. 安装完虚拟机后,进入虚拟机,修改网络配置(onboot改为yes)并重启网络服务,查看相应IP地址,并使用远程连接软件进行连接。
        • 3. 把老师所给Packages包、centos的docker镜像以及cirros镜像使用winSCP传送至虚拟机(centos6.5传送至docker虚拟机,cirros传送至KVM虚拟机),并解压Packages包至/opt目录下。
        • 4. 两台虚拟机都配置默认镜像yum源,并且把Packages包也一起配置到本地yum源当中。
        • 5. 修改主机名,方便区分。第一台虚拟机(命名为Docker那台)修改主机名为docker,第二台虚拟机(命名为KVM那台)修改主机名为kvm。如下图所示。
    • 配置虚拟机Docker
        • 6. 修改网络配置,新增一行NM_CONTROLLER=no,如下图所示:
        • 7. 关闭防火墙
        • 8. 开启内核转发
        • 9. 安装openvswitch、bridge-utils、tunctl、docker-io服务
        • 10. 更新下路由,看是否有最新路由版本。
        • 11. 启动openvswitch服务以及docker服务。
        • 12. 检查OVS是否安装好。
        • 13. 创建br0网桥,并创建名字为br-int的OVS开放虚拟交换机,并重启网络。
        • 14. 安装net-tools,并给br0设置地址为30.1.0.1/24
        • 15. 把br0桥接到br-int上
        • 16. 把br0桥接到br-int上
        • 17. 在OVS交换机br-int上创建gre接口,地址指向kvm虚拟机IP
        • 18. 启动br0和br-int;
        • 19. 添加一条路由信息,使30.2.0.0网段的路由指向kvm虚拟机的ens33网卡
        • 20. 修改docker配置信息。配置完成后启动docker。
        • 21. 把开始上传的镜像包导入docker,并添加tag。
        • 22. 启动docker,并查看docker的CONTAINER ID
        • 23. 进入docker,查看docker的IP
    • 配置虚拟机KVM
        • 24. 进入网络配置目录,复制一个网络配置文件,命名为ifcfg-br-ex,并修改其配置,如下图所示
        • 25. 修改ens33网卡配置,如下图所示
        • 25. 关闭防火墙规则
        • 26. 开启内核转发
        • 27. 关闭防火墙
        • 28. 更新路由到最新版本
        • 28. 安装openvswitch、qemu-kvm、libvirt、dnsmasq、net-tools服务
        • 29. 开启openvswitch服务,并新建br-int虚拟交换机
        • 30. 给br-int设置ip地址为30.2.0.1/24并开启
        • 31. 在br-int上新添加gre接口,使其指向docker虚拟宿主机
        • 32. 新增一条路由信息,指向docker虚拟宿主机的IP地址
        • 33. 配置dnsmasq;
        • 34. 重新启动dnsmasq;
        • 35. 新建ovs-ifup和if-down脚本。
        • 36. 给两个脚本赋予执行权限
        • 37. 为防止冲突,删除tap0接口
        • 38. 启动kvm虚拟机
        • 39. 使用给的账号密码登录进入
        • 40. 查看kvm虚拟机ip地址
    • 测试连通性
        • 1.kvm虚拟宿主机ping docker虚拟宿主机网桥br0的IP(30.1.0.1),证明两个主机间连通。
        • 2.docker虚拟宿主机ping kvm虚拟宿主机网桥br0的IP(30.2.0.1),证明两个主机间连通。
        • 3.docker中ping kvm虚拟宿主机IP。
        • 4.docker中ping docker宿主机IP。
        • 5.kvm虚拟机中ping通docker
        • 6.docker虚拟机中ping通kvm

建立基于OpenvSwitch的GRE隧道

实验前准备:编辑虚拟机网络配置,使VMnet8处在192.168.10.0网段。

1. 使用VMware安装2个CentOS 7虚拟机,安装时记得都开启CPU虚拟化,第一台命名为“Docker”,第二台命名为“KVM”。
2. 安装完虚拟机后,进入虚拟机,修改网络配置(onboot改为yes)并重启网络服务,查看相应IP地址,并使用远程连接软件进行连接。
3. 把老师所给Packages包、centos的docker镜像以及cirros镜像使用winSCP传送至虚拟机(centos6.5传送至docker虚拟机,cirros传送至KVM虚拟机),并解压Packages包至/opt目录下。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4. 两台虚拟机都配置默认镜像yum源,并且把Packages包也一起配置到本地yum源当中。

镜像yum源配置教程详见:CentOS如何配置本地yum源。
Packages包本地yum源配置详见:实训5-1

5. 修改主机名,方便区分。第一台虚拟机(命名为Docker那台)修改主机名为docker,第二台虚拟机(命名为KVM那台)修改主机名为kvm。如下图所示。

docker那台:
在这里插入图片描述
KVM那台:
在这里插入图片描述

配置虚拟机Docker

6. 修改网络配置,新增一行NM_CONTROLLER=no,如下图所示:

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7. 关闭防火墙

在这里插入图片描述

在这里插入图片描述

8. 开启内核转发

小知识:为什么我们需要开启内核转发?
linux服务器经常被用来提供防火墙、路由器、NAT等功能,在这些场景下,linux内核需要将网卡上收到的报文转发给其他网络设备。linux内核提供了ip_forward参数用于开关内核的报文转发功能,只有这个开关被打开时,内核才会执行报文的转发。
在这里插入图片描述

9. 安装openvswitch、bridge-utils、tunctl、docker-io服务

在这里插入图片描述
在这里插入图片描述

10. 更新下路由,看是否有最新路由版本。

在这里插入图片描述

11. 启动openvswitch服务以及docker服务。

在这里插入图片描述
在这里插入图片描述

12. 检查OVS是否安装好。

在这里插入图片描述

13. 创建br0网桥,并创建名字为br-int的OVS开放虚拟交换机,并重启网络。

在这里插入图片描述
在这里插入图片描述

14. 安装net-tools,并给br0设置地址为30.1.0.1/24

在这里插入图片描述
在这里插入图片描述

15. 把br0桥接到br-int上

在这里插入图片描述

16. 把br0桥接到br-int上

在这里插入图片描述

17. 在OVS交换机br-int上创建gre接口,地址指向kvm虚拟机IP
ovs-vsctl add-port br-int gre0 -- set interface gre0 type=gre options:remote_ip=192.168.10.*(这里为KVM宿主机IP地址)
18. 启动br0和br-int;

在这里插入图片描述

19. 添加一条路由信息,使30.2.0.0网段的路由指向kvm虚拟机的ens33网卡
ip route add 30.2.0.0/24 via 192.168.10.*(这里为kvm虚拟宿主机IP地址) dev ens33
20. 修改docker配置信息。配置完成后启动docker。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

21. 把开始上传的镜像包导入docker,并添加tag。

在这里插入图片描述

22. 启动docker,并查看docker的CONTAINER ID

在这里插入图片描述

23. 进入docker,查看docker的IP

在这里插入图片描述

配置虚拟机KVM

24. 进入网络配置目录,复制一个网络配置文件,命名为ifcfg-br-ex,并修改其配置,如下图所示

在这里插入图片描述
在这里插入图片描述

25. 修改ens33网卡配置,如下图所示

在这里插入图片描述

25. 关闭防火墙规则

在这里插入图片描述

26. 开启内核转发

在这里插入图片描述

27. 关闭防火墙

(执行 setenforce 0 时,它会关闭 SELinux 防火墙。SELinux 是一个内核模块,它提供了访问控制安全策略,以防止未授权的进程访问系统资源。)
在这里插入图片描述

28. 更新路由到最新版本

在这里插入图片描述

28. 安装openvswitch、qemu-kvm、libvirt、dnsmasq、net-tools服务

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

29. 开启openvswitch服务,并新建br-int虚拟交换机

在这里插入图片描述

30. 给br-int设置ip地址为30.2.0.1/24并开启

在这里插入图片描述

31. 在br-int上新添加gre接口,使其指向docker虚拟宿主机
ovs-vsctl add-port br-int gre0 -- set interface gre0 type=gre options:remote_ip=192.168.10.*(这里为docker虚拟宿主机的IP地址)
32. 新增一条路由信息,指向docker虚拟宿主机的IP地址

在这里插入图片描述

33. 配置dnsmasq;
/usr/sbin/dnsmasq --strict-order --bind-interfaces --interface=br-int --except-interface=lo --pid-file=/var/run/qdhcp.pid --leasefile-ro --dhcp-range=30.2.0.3,30.2.0.254,255.255.255.0,12h --conf-file=
34. 重新启动dnsmasq;

在这里插入图片描述

35. 新建ovs-ifup和if-down脚本。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

36. 给两个脚本赋予执行权限

在这里插入图片描述

37. 为防止冲突,删除tap0接口

在这里插入图片描述

38. 启动kvm虚拟机
/usr/libexec/qemu-kvm -m 512 -drive file=cirros-0.3.3-x86_64-disk.img,if=virtio -net nic,model=virtio -net tap,script=ovs-ifup -nographic -vnc :1 

在这里插入图片描述

39. 使用给的账号密码登录进入

在这里插入图片描述

40. 查看kvm虚拟机ip地址

在这里插入图片描述

测试连通性

1.kvm虚拟宿主机ping docker虚拟宿主机网桥br0的IP(30.1.0.1),证明两个主机间连通。

在这里插入图片描述

2.docker虚拟宿主机ping kvm虚拟宿主机网桥br0的IP(30.2.0.1),证明两个主机间连通。

在这里插入图片描述

3.docker中ping kvm虚拟宿主机IP。

在这里插入图片描述

4.docker中ping docker宿主机IP。

在这里插入图片描述

5.kvm虚拟机中ping通docker

在这里插入图片描述

6.docker虚拟机中ping通kvm

在这里插入图片描述

这篇关于专项技能训练五《云计算网络技术与应用》实训8-1:建立基于OpenvSwitch的GRE隧道的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/968215

相关文章

使用C#代码计算数学表达式实例

《使用C#代码计算数学表达式实例》这段文字主要讲述了如何使用C#语言来计算数学表达式,该程序通过使用Dictionary保存变量,定义了运算符优先级,并实现了EvaluateExpression方法来... 目录C#代码计算数学表达式该方法很长,因此我将分段描述下面的代码片段显示了下一步以下代码显示该方法如

将Python应用部署到生产环境的小技巧分享

《将Python应用部署到生产环境的小技巧分享》文章主要讲述了在将Python应用程序部署到生产环境之前,需要进行的准备工作和最佳实践,包括心态调整、代码审查、测试覆盖率提升、配置文件优化、日志记录完... 目录部署前夜:从开发到生产的心理准备与检查清单环境搭建:打造稳固的应用运行平台自动化流水线:让部署像

SSID究竟是什么? WiFi网络名称及工作方式解析

《SSID究竟是什么?WiFi网络名称及工作方式解析》SID可以看作是无线网络的名称,类似于有线网络中的网络名称或者路由器的名称,在无线网络中,设备通过SSID来识别和连接到特定的无线网络... 当提到 Wi-Fi 网络时,就避不开「SSID」这个术语。简单来说,SSID 就是 Wi-Fi 网络的名称。比如

Linux中Curl参数详解实践应用

《Linux中Curl参数详解实践应用》在现代网络开发和运维工作中,curl命令是一个不可或缺的工具,它是一个利用URL语法在命令行下工作的文件传输工具,支持多种协议,如HTTP、HTTPS、FTP等... 目录引言一、基础请求参数1. -X 或 --request2. -d 或 --data3. -H 或

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

在Ubuntu上部署SpringBoot应用的操作步骤

《在Ubuntu上部署SpringBoot应用的操作步骤》随着云计算和容器化技术的普及,Linux服务器已成为部署Web应用程序的主流平台之一,Java作为一种跨平台的编程语言,具有广泛的应用场景,本... 目录一、部署准备二、安装 Java 环境1. 安装 JDK2. 验证 Java 安装三、安装 mys

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

Node.js 中 http 模块的深度剖析与实战应用小结

《Node.js中http模块的深度剖析与实战应用小结》本文详细介绍了Node.js中的http模块,从创建HTTP服务器、处理请求与响应,到获取请求参数,每个环节都通过代码示例进行解析,旨在帮... 目录Node.js 中 http 模块的深度剖析与实战应用一、引言二、创建 HTTP 服务器:基石搭建(一

如何用Java结合经纬度位置计算目标点的日出日落时间详解

《如何用Java结合经纬度位置计算目标点的日出日落时间详解》这篇文章主详细讲解了如何基于目标点的经纬度计算日出日落时间,提供了在线API和Java库两种计算方法,并通过实际案例展示了其应用,需要的朋友... 目录前言一、应用示例1、天安门升旗时间2、湖南省日出日落信息二、Java日出日落计算1、在线API2

java中VO PO DTO POJO BO DO对象的应用场景及使用方式

《java中VOPODTOPOJOBODO对象的应用场景及使用方式》文章介绍了Java开发中常用的几种对象类型及其应用场景,包括VO、PO、DTO、POJO、BO和DO等,并通过示例说明了它... 目录Java中VO PO DTO POJO BO DO对象的应用VO (View Object) - 视图对象