OVN实验----L2互通

news2024/11/29 16:25:42

概述

尽量少贴概念,只同步一些必要的名词。
central: 可以看做中心节点,central节点组件包括OVN/CMS plugin、OVN Northbound DB、ovn-northd、OVN Southbound DB。
hypervisor: 可以看做工作节点,hypervisor节点组件包括ovn-controller、ovs-vswitchd、ovsdb-server。
(central节点相关组件和hypervisor组件可以运行在同一个物理节点上)

在这里插入图片描述
本次实验主要是L2互通测试,即在HV上创建同网段两个容器,通过分布式逻辑交换机互通。

物理组网

central:172.16.181.18
HV:host43 172.16.181.43、host44 172.16.181.44
在这里插入图片描述

逻辑组网

容器red11和red12分别在不同controller上封装geneve通过ls-red互通,ls-red是分布式逻辑交换机,
在这里插入图片描述

安装

根据不同角色安装所需的软件包
Central:
wget -O /etc/yum.repos.d/ovs.repo https://copr.fedorainfracloud.org/coprs/leifmadsen/ovs-stable-release/repo/epel-7/leifmadsen-ovs-stable-release-epel-7.repo --no-check-certificate
yum install -y openvswitch-ovn-central.x86_64 openvswitch-ovn-host.x86_64
systemctl start ovn-northd.service
systemctl enable ovn-northd.service
HV:
wget -O /etc/yum.repos.d/ovs.repo https://copr.fedorainfracloud.org/coprs/leifmadsen/ovs-stable-release/repo/epel-7/leifmadsen-ovs-stable-release-epel-7.repo --no-check-certificate
yum install -y openvswitch.x86_64 openvswitch-ovn-host.x86_64
systemctl enable openvswitch.service ovn-controller.service
systemctl start ovn-controller.service

配置

Central 开放接口

关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
开放北向接口6641,南向接口6642:
ovn-nbctl set-connection ptcp:6641:172.16.181.18
ovn-sbctl set-connection ptcp:6642:172.16.181.18
netstat -lntp
在这里插入图片描述

Controller 对接Central南向接口

关闭防火墙:
systemctl stop firewalld
systemctl disable firewalld
host43连接Central南向数据库:
ovs-vsctl set open . external-ids:ovn-remote=tcp:172.16.181.18:6642
ovs-vsctl set open . external-ids:ovn-encap-type=geneve
ovs-vsctl set open . external-ids:ovn-encap-ip=172.16.181.43

netstat -antp | grep ovn 可以看到6642 ESTABLISHED状态
在这里插入图片描述
类似操作配置host44

操作完后,在central南向数据库显示两个chassis
ovn-sbctl show
在这里插入图片描述

在其中一台host43上,显示到host44的geneve接口
ovs-vsctl show
在这里插入图片描述

HV上新建容器

host43:
新建容器red11
docker pull busybox
docker run -itd --name=red11 --net=none --privileged=true busybox
容器连接到br-int
ovs-docker add-port br-int ifred11 red11
ovs-vsctl show 会显示在br-int上增加了1个port: 91c34a4207a94
在这里插入图片描述
绑定接口
ovs-vsctl set interface 91c34a4207a94_l external_ids:iface-id=ifred11 (ifred11是稍后配置在central上的名称)

设置red11的MAC和IP
docker exec -it red11 sh 进入red11
ip link set ifred11 address 00:00:00:00:01:11 (修改一个简单的数值)
ip add add 192.168.1.11/24 dev ifred1
在这里插入图片描述

配置逻辑交换机

在Central上,新建ls-red
ovn-nbctl ls-add ls-red

添加接口,这里绑定mac地址要和对应的容器一致
ovn-nbctl lsp-add ls-red ifred11
ovn-nbctl lsp-set-addresses ifred11 00:00:00:00:01:11
ovn-nbctl lsp-set-port-security ifred1 00:00:00:00:01:11

添加完接口后
chassis host43会显示绑定接口ifred11
在这里插入图片描述

类似步骤在ls-red上添加ifred12接口,并在host44上配置容器red12将接口绑定到逻辑交换机上。

检查最终状态

central,显示北向接口数据库总共两个接口ifred11、ifred12
在这里插入图片描述

central,南向接口数据库显示host43绑定接口ifred11,host44绑定接口ifred12
在这里插入图片描述

测试

在red11 ping red12
docker exec -it red11 sh
ping 192.168.1.12
在这里插入图片描述
显示可以ping 通

物理网卡抓包,可以看到外层源目IP是HV的物理口IP,端口号UDP6081,内层源目IP是容器IP,vni 1,
在这里插入图片描述
后续再更新L3互通。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/152630.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Target 塔吉特的4种商品编码

Target塔吉特共有4种商品编码:TCIN、DPCI、UPC、SKU,其中DPCI、UPC和TCIN在Target系统中是唯一的ID。在target.com中查看商品时,在任一个商品中下拉进入到商品详情页(Item/Detail/Specifications)中都可以看到该商品的…

13_5、Java的IO流之转换流的使用

一、转换流涉及到的类:都是字符流InputStreamReader:将输入的字节流转换为输入的字符流。解码:字节、字节数组 ————>字符串、字符数组OutputStreamWrite:将输出的字符流转换为输出的字节流。编码:字符串、字符数…

Linux 网络探测和安全审核工具 nmap 应用实践

对于 nmap,相信很多安全运维人员并不陌生,它曾经在电影《黑客帝国》中出现过, 是黑客和网络安全人员经常用到的工具,本文重点介绍下此工具的实现原理和使用技巧。 nmap 和 Zenmap 简介 nmap 是一款开源免费的网络发现工具&#…

2023兔年大吉HTML,兔兔动态代码「兔了个兔」

文章目录一.2023兔年大吉HTML,兔兔动态代码「兔了个兔」1.1 资源获取和效果预览二.代码讲解(主要代码)1.1 背景加圆圈圈1.2.兔兔和提示字1.3 JavaScript控制动态一.2023兔年大吉HTML,兔兔动态代码「兔了个兔」 1.1 资源获取和效果…

如何在游戏中实现飘花和落叶效果

本文首发于微信公众号: 小蚂蚁教你做游戏。欢迎关注领取更多学习做游戏的原创教程资料,每天学点儿游戏开发知识。嗨!大家好,我是小蚂蚁。今天这篇文章分享一下如何在游戏中实现飘花和落叶的效果,在游戏背景中加入它们&…

FPGA:数字电路简介

文章目录数字电路的历史电子管时代晶体管时代半导体集成电路IC 时代IC的发展阶段EDA (Electronics Design Automation) 技术数字集成电路的分类数字集成电路的集成度分类从器件导电类型不同从器件类型不同数字电路的历史 数字电路是数字计算机和自动控制系统的基础&#xff0c…

[JavaEE初阶] 线程安全问题之内存可见性问题----volatile

读书要趁黑发早,白首不悔少当时 文章目录1. 什么是内存可见性问题2. 避免内存可见性问题-----volatile(易变的)3. 需要注意的点总结1. 什么是内存可见性问题 在线程A在读一个变量的时候,另一个线程B在修改这个变量,所以,线程A读到的值不是修改之后的,是一个未更新的值,读到的值…

先行“蜀道”, 四川农信核心系统分布式转型

作者:四川省农村信用社联合社 张朝辉 桂俊鸿 来源:《金融电子化》 随着四川省联社党委提出“合规银行、智慧银行、主力军银行”三大银行战略。作为四川省业务规模最大的银行业金融机构、全国农信系统“排头兵”的四川农信积极响应,率先于 2018 年 9 月完…

mysql磁盘io

1、磁盘的一些概念 1.1、盘片、片面 和 磁头 硬盘中一般会有多个盘片组成,每个盘片包含两个面,每个盘面都对应地有一个读/写磁头。受到硬盘整体体积和生产成本的限制,盘片数量都受到限制,一般都在5片以内。盘片的编号自下向上从…

Viper渗透框架

文章目录Viper 简介Viper 安装脚本安装手动安装切换到 root 用户执行命令Kali 安装 docker (我已经安装过了,不做演示,命令依次执行即可)安装 docker-compose设置安装目录生成安装目录,并进入安装目录生成 docker-compose.yml设置登录密码写入…

【C++常用算法】STL基础语法学习 | 拷贝算法替换算法

目录 ●copy ●replace ●replace_if ●swap ●copy 1.功能描述: 将容器内指定范围的元素拷贝到另一容器中 2.查看copy定义下底层代码的函数原型: 3.向deque容器中插入10~50五个数,将这五个数拷贝到另一个指定容器中并输出。 #include&…

【生产问题】前端接口请求报blocked:mixed-content

事故现象 客户端反馈系统无法使用。打开页面很多内容无法显示。 f12 显示很多请求都失败了。 定位问题 客户咨询 客户反馈昨天 在nginx 上面配置了https证书。导致了http 请求无法访问。 客户已经在nginx上面配置了https。即 网页端的请求会重定向到https请求上面。那为啥…

无需离开 Visual Studio 即可编写 Markdown

当您想要格式化代码但又不想牺牲易读性时,Markdown 是一个很好的解决方案。GitHub 将其用于自述文件,我们将其用作 Visual Studio 文档的标准。之前收到了不少来自开发者的反馈,大家希望在 Visual Studio 中使用 Markdown 编辑器。在最近的 V…

87、【栈与队列】leetcode ——347. 前 K 个高频元素:优先队列(小根堆)+Hash表(C++版本)

题目描述 原题链接:347. 前 K 个高频元素 一、优先队列(小根堆)Hash表 使用Hash表存nums中各元素出现次数,维护一个优先级队列,在里面存k个数,采用小根堆方式,从小到大进行排列。当存入的数多…

Vue3——第五章(响应式 API:isRef、unref、toRef、toRefs等工具函数)

一、isRef() 检查某个值是否为 ref。请注意,返回值是一个类型判定 (type predicate),这意味着 isRef 可以被用作类型守卫 二、unref() 如果参数是 ref,则返回内部值,否则返回参数本身。这是 val isRef(val) ? val.value : v…

【CPP】STL简介

​🌠 作者:阿亮joy. 🎆专栏:《吃透西嘎嘎》 🎇 座右铭:每个优秀的人都有一段沉默的时光,那段时光是付出了很多努力却得不到结果的日子,我们把它叫做扎根 目录👉什么是 S…

李宏毅ML-机器学习基本概念简介

机器学习基本概念简介 Machine Learning 约等于 Looking for a function. Different types of functions: Regression: The function outputs a scalar. Classification: Given options(classes), the function outputs the correct one. How to find a function? > 预测本…

为什么学完了 C 语言觉得自己什么都干不了?

其他方向不了解哈,我2013年大一开始自学C语言,然后就开始做嵌入式,大学四年,到现在毕业又六年,C语言已经陪我十年了,可以说是一直坚持且养家糊口的工具。 所以,别的也许不行,但是嵌…

使用.htaccess设置图片防盗链的详细方法

对于虚拟主机用户来说,最方便的莫过于利用.htaccess设置图片防盗链了。上网搜了一下,.htaccess规则写法很多,但是大部分的区别在于最后一行,下面我们先看看正确的.htaccess防盗链写法,稍后我再详细解释一下最后一行的重…

JAVA实现代码热更新

JAVA实现代码热更新引言类加载器实现热更新思路多种多样的加载来源SPI服务发现机制完整代码引言 本文将带领大家利用Java的类加载器加SPI服务发现机制实现一个简易的代码热更新工具。 类加载相关知识可以参考: 深入理解JVM虚拟机第三版, 深入理解JVM虚拟机(第二版)—国外的,自…