云计算:OpenStack 配置二层物理网卡为三层桥的接口
目录
一、理论
1.OpenStack
二、实验
1. Linux系统修改网卡
2.OpenStack 配置二层物理网卡为三层桥的接口
一、理论
1.OpenStack
(1)概念
OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空航天局)和Rackspace合作研发并发起,以Apache许可证(Apache软件基金会发布的一个自由软件许可证)授权。
OpenStack为私有云和公有云提供可扩展的弹性的云计算服务。项目目标是提供实施简单、可大规模扩展、丰富、标准统一的云计算管理平台。
(2)官网架构图
Open Source Cloud Computing Platform Software - OpenStack
(3)关键组件与服务
表1 Openstack关键组件与服务
服务类型 | 组件名称 | 描述 |
Dashboard | Horizon | 提供了一个基于web的自服务门户,通过web与OpenStack底层服务交互。 |
Controller/Compute | Nova | 在OpenStack环境中计算实例的生命周期管理。包括虚拟机创建、调度、删除等操作。 |
Networking | Neutron | 确保为其它OpenStack服务提供网络连接即服务,比如OpenStack计算。为用户提供API定义网络和使用。基于插件的架构其支持众多的网络提供商和技术。 |
Object Storage | Swift | 通过基于HTTP的应用程序接口存储和任意检索的非结构化数据对象。 |
Block Storage | Cinder | 为运行实例而提供的持久性块存储。它的可插拔驱动架构的功能有助于创建和管理块存储设备。 |
Identity Service | Keystone | 为其他OpenStack服务提供认证和授权服务,为所有的OpenStack服务提供一个端点目录。 |
Image Service | Glance | 存储和检索虚拟机镜像元数据,OpenStack会在实例部署时使用此服务。 |
Telemetry Service | Ceilometer | 为OpenStack云的计费、基准、扩展性以及统计等目的提供监测和计量。 |
Orchestration Service | Heat | 既可以模板来编排多个综合的云应用,类似 AWS的CloudFormation。 |
(4)基础网络配置
1)br-ex
连接外部网络(external)2)br-tun
连接隧道网络(tunnel)3)br-int
综合网桥(integration)
二、实验
1. Linux系统修改网卡
(1)关闭网络管理
[root@openstack ~]# systemctl stop NetworkManager && systemctl disable NetworkManager
(2)查看当前ip地址
[root@openstack ~]# ip a
(3)复制网卡
[root@openstack ~]# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-ens33
(4)查看网卡
[root@openstack ~]# cd /etc/sysconfig/network-scripts/
[root@openstack network-scripts]# ls
ifcfg-ens33 ifdown-eth ifdown-isdn ifdown-routes ifdown-tunnel ifup-eth ifup-isdn ifup-post ifup-Team init.ipv6-global
ifcfg-eth0 ifdown-ib ifdown-ovs ifdown-sit ifup ifup-ib ifup-ovs ifup-ppp ifup-TeamPort network-functions
ifdown ifdown-ippp ifdown-post ifdown-Team ifup-aliases ifup-ippp ifup-plip ifup-routes ifup-tunnel network-functions-ipv6
ifdown-bnep ifdown-ipv6 ifdown-ppp ifdown-TeamPort ifup-bnep ifup-ipv6 ifup-plusb ifup-sit ifup-wireless test
(5)编辑网卡
[root@openstack network-scripts]# vim ifcfg-ens33
(6)删除旧网卡
[root@openstack network-scripts]# rm -fr /etc/sysconfig/network-scripts/ifcfg-eth0
(7)重启网络服务
[root@openstack network-scripts]# systemctl restart network
(8)主机ping opsenstack地址
(9) 登录系统
http://192.168.199.201
2.OpenStack 配置二层物理网卡为三层桥的接口
(1)查看当前网桥信息
[root@openstack network-scripts]# ovs-vsctl show
db90689c-619b-4abe-bcbf-16563efed45bManager "ptcp:6640:127.0.0.1"is_connected: trueBridge br-exController "tcp:127.0.0.1:6633"is_connected: truefail_mode: securePort br-exInterface br-extype: internalPort phy-br-exInterface phy-br-extype: patchoptions: {peer=int-br-ex}Bridge br-intController "tcp:127.0.0.1:6633"is_connected: truefail_mode: securePort br-intInterface br-inttype: internalPort int-br-exInterface int-br-extype: patchoptions: {peer=phy-br-ex}Port patch-tunInterface patch-tuntype: patchoptions: {peer=patch-int}Bridge br-tunController "tcp:127.0.0.1:6633"is_connected: truefail_mode: securePort patch-intInterface patch-inttype: patchoptions: {peer=patch-tun}Port br-tunInterface br-tuntype: internalovs_version: "2.7.3"
(2)备份网卡
[root@openstack network-scripts]# mkdir bak[root@openstack network-scripts]# ls
bak ifdown-ib ifdown-post ifdown-TeamPort ifup-eth ifup-ovs ifup-routes ifup-wireless
ifcfg-ens33 ifdown-ippp ifdown-ppp ifdown-tunnel ifup-ib ifup-plip ifup-sit init.ipv6-global
ifdown ifdown-ipv6 ifdown-routes ifup ifup-ippp ifup-plusb ifup-Team network-functions
ifdown-bnep ifdown-isdn ifdown-sit ifup-aliases ifup-ipv6 ifup-post ifup-TeamPort network-functions-ipv6
ifdown-eth ifdown-ovs ifdown-Team ifup-bnep ifup-isdn ifup-ppp ifup-tunnel test[root@openstack network-scripts]# cp ifcfg-ens33 bak/
(3)创建br-ex桥
[root@openstack network-scripts]# cp ifcfg-ens33 ifcfg-br-ex[root@openstack network-scripts]# vim ifcfg-ens33 [root@openstack network-scripts]# vim ifcfg-br-ex
复制
将对应的物理网卡添加到OVS– BR-EX上作为一个接口
地址配置在br-ex 三层接口上
(4)重启网络
[root@openstack network-scripts]# service network restart
Restarting network (via systemctl): [ 确定 ]
(5)查看接口信息
[root@openstack network-scripts]# more ifcfg-ens33
TYPE=OVSPort
HWADDR=00:0c:29:53:85:ce
ONBOOT=yes
DEVICE=ens33
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
(6)查看网桥信息
[root@openstack network-scripts]# more ifcfg-ens33
TYPE=OVSPort
HWADDR=00:0c:29:53:85:ce
ONBOOT=yes
DEVICE=ens33
DEVICETYPE=ovs
OVS_BRIDGE=br-ex[root@openstack network-scripts]# more ifcfg-br-ex
TYPE=OVSBridge
DEVICETYPE=ovs
DEVICE=br-ex
BOOTPROTO=static
DNS1=192.168.199.2
DEFROUTE=yes
NAME=br-ex
ONBOOT=yes
IPADDR=192.168.199.201
PREFIX=24
GATEWAY=192.168.199.2
(7)查看ip
[root@openstack network-scripts]# ip add show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00inet 127.0.0.1/8 scope host lovalid_lft forever preferred_lft foreverinet6 ::1/128 scope host valid_lft forever preferred_lft forever
2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master ovs-system state UP qlen 1000link/ether 00:0c:29:53:85:ce brd ff:ff:ff:ff:ff:ffinet6 fe80::20c:29ff:fe53:85ce/64 scope link valid_lft forever preferred_lft forever
3: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000link/ether ba:4a:22:6d:00:d7 brd ff:ff:ff:ff:ff:ff
4: br-int: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000link/ether 06:b7:f9:bd:7d:47 brd ff:ff:ff:ff:ff:ff
5: br-tun: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000link/ether 8a:88:cb:d5:87:41 brd ff:ff:ff:ff:ff:ff
6: br-ex: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN qlen 1000link/ether 00:0c:29:53:85:ce brd ff:ff:ff:ff:ff:ffinet 192.168.199.201/24 brd 192.168.199.255 scope global br-exvalid_lft forever preferred_lft foreverinet6 fe80::3c23:faff:fe8f:9d47/64 scope link valid_lft forever preferred_lft forever
(8)主机 ping openstack地址
(9)查看网桥信息(桥br-ex已添加端口ens33,对应接口为ens33)
[root@openstack network-scripts]# ovs-vsctl show
db90689c-619b-4abe-bcbf-16563efed45bManager "ptcp:6640:127.0.0.1"Bridge br-exController "tcp:127.0.0.1:6633"fail_mode: securePort br-exInterface br-extype: internalPort "ens33"Interface "ens33"Port phy-br-exInterface phy-br-extype: patchoptions: {peer=int-br-ex}Bridge br-intController "tcp:127.0.0.1:6633"fail_mode: securePort br-intInterface br-inttype: internalPort int-br-exInterface int-br-extype: patchoptions: {peer=phy-br-ex}Port patch-tunInterface patch-tuntype: patchoptions: {peer=patch-int}Bridge br-tunController "tcp:127.0.0.1:6633"fail_mode: securePort patch-intInterface patch-inttype: patchoptions: {peer=patch-tun}Port br-tunInterface br-tuntype: internalovs_version: "2.7.3"
(9) 测试抓包
[root@openstack network-scripts]# tcpdump -i br-ex | grep -i icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on br-ex, link-type EN10MB (Ethernet), capture size 262144 bytes
^C40 packets captured
40 packets received by filter
0 packets dropped by kernel
(10)再次成功登录系统
相关文章:

云计算:OpenStack 配置二层物理网卡为三层桥的接口
目录 一、理论 1.OpenStack 二、实验 1. Linux系统修改网卡 2.OpenStack 配置二层物理网卡为三层桥的接口 一、理论 1.OpenStack (1)概念 OpenStack是一个开源的云计算管理平台项目,是一系列软件开源项目的组合。由NASA(美国国家航空…...

Python sanic框架钉钉和第三方打卡机实现
同样还是需要开通钉钉应用这里就不错多说了 第一步:梳理逻辑流程 前提:打卡的机器是使用postgres数据库,由于因为某些原因,钉钉userId 我已经提前获取到了存放到数据库里。 1.用户打卡成功后,我们应该监听数据库进行查询…...
微信小程序性能优化
1. 代码包不包含插件大小超过 1.5 M 建议:小程序代码包单个包大小限制为2M。因此我们建议开发者在开发时,如果遇到单包体积大于1.5M的情况,可以采取分包的方式,把部分代码拆分到分包去,降低单个包的体积,提…...

java并发编程六 ReentrantLock,锁的活跃性
多把锁 一间大屋子有两个功能:睡觉、学习,互不相干。 现在小南要学习,小女要睡觉,但如果只用一间屋子(一个对象锁)的话,那么并发度很低 解决方法是准备多个房间(多个对象锁…...

深度学习 | DRNN、BRNN、LSTM、GRU
1、深度循环神经网络 1.1、基本思想 能捕捉数据中更复杂模式并更好地处理长期依赖关系。 深度分层模型比浅层模型更有效率。 Deep RNN比传统RNN表征能力更强。 那么该如何引入深层结构呢? 传统的RNN在每个时间步的迭代都可以分为三个部分: 1.2、三种深层…...

代理模式:中间者的故事
代理模式:中间者的故事 介绍需求分析代理模式代码实现代理模式整理和用途第一种用途第二种用途第三种用途第四种用途 总结 介绍 本文引用《大话设计模式》第七章节的内容进行学习分析,仅供学习使用 需求:小明拜托自己好朋友小王给他朋友小美…...

中间件系列 - Redis入门到实战(高级篇-多级缓存)
前言 学习视频: 黑马程序员Redis入门到实战教程,深度透析redis底层原理redis分布式锁企业解决方案黑马点评实战项目 中间件系列 - Redis入门到实战 本内容仅用于个人学习笔记,如有侵扰,联系删除 学习目标 JVM进程缓存Lua语法入…...

是德科技E9304A功率传感器
是德科技E9304A二极管功率传感器测量频率范围为9 kHz至6 GHz的平均功率,功率范围为-60至20 dBm。该传感器非常适合甚低频(VLF)功率测量。E系列E9304A功率传感器有两个独立的测量路径,设计用于EPM系列功率计。功率计自动选择合适的功率电平路径。为了避免…...

视频格式网络地址转换视频到本地,获取封面、时长,其他格式转换成mp4
使用ffmpeg软件转换网络视频,先从官网下载对应操作系统环境的包 注意:网络地址需要是视频格式结尾,例如.mp4,.flv 等 官网地址:Download FFmpeg window包: linux包: 如果下载缓慢,下载迅雷安装使用…...

企业私有云容器化架构运维实战
什么是虚拟化: 虚拟化(Virtualization)技术最早出现在 20 世纪 60 年代的 IBM 大型机系统,在70年代的 System 370 系列中逐渐流行起来,这些机器通过一种叫虚拟机监控器(Virtual Machine Monitor,VMM&#x…...
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C) Baumer工业相机Baumer工业相机NEOAPISDK中UserSet的技术背景代码案例分享第一步:保存相机当前参数设置UserSet_Save第二步:载入已经保存…...

STM32的以太网外设+PHY(LAN8720)使用详解(3):PHY寄存器详解
0 工具准备 1.野火 stm32f407霸天虎开发板 2.LAN8720数据手册 3.STM32F4xx中文参考手册1 PHY寄存器 前面介绍到,站管理接口(SMI)允许应用程序通过2线时钟和数据线访问任意PHY寄存器,同时该接口支持访问最多32个PHY,也…...

缓存和缓冲的区别
近期被这两个词汇困扰了,感觉有本质的区别,搜了一些资料,整理如下 计算机内部的几个部分图如下 缓存(cache) https://baike.baidu.com/item/%E7%BC%93%E5%AD%98 提到缓存(cache),就…...
C++高级-STL库概述
目录 一、概念 二、STL的历史背景 三、STL的版本 四、STL的主要优势...
uniapp 统一获取授权提示和48小时间隔授权
应用商店审核要求 获取权限前需要给提示,拒绝之后48小时不能给弹窗授权 项目用的是uniapp getImagePermission(v?: string, tag?: any, source?: any, proj?: any) {// proj proj || vueSelf.$proj(tag, source);let data {state: false,//是否原生授权denied…...
Halcon点云重建
dev_close_window () *点云文件数据的读取 read_object_model_3d (‘E:/1.om3’, ‘mm’, [], [], ObjectModel3D, Status) *获得点云的数据,例如高度 get_object_model_3d_params (ObjectModel3D, ‘point_coord_z’, GenParamValue) dev_open_window (0, 0, 512, …...

docker学习(二十一、network使用示例container、自定义)
文章目录 一、container应用示例1.需要共用同一个端口的服务,不适用container方式2.可用示例3.停掉共享源的容器,其他容器只有本地回环lo地址 总结 二、自定义网络应用示例默认bridge,容器间ip通信默认bridge,容器间服务名不通 自…...

【Python机器学习系列】一文带你了解机器学习中的Pipeline管道机制(理论+源码)
这是Python机器学习原创文章,我的第183篇原创文章。 一、引言 对于表格数据,一套完整的机器学习建模流程如下: 背景知识1:机器学习中的学习器 【Python机器学习系列】一文搞懂机器学习中的转换器和估计器(附案例&…...

算法基础之整数划分
整数划分 核心思想: 计数类dp 背包做法 f[i][j] 表示 取 1 – i 的物品 总容量为j的选法数量 f[i][j] f[i-1][j] f[i-1][j-v[i]] f[i-1][j-2v[i]] f[i-1][j-3v[i]] ……f[i-1][j-kv[i]] f[i][j-v[i]] f[i-1][j-v[i]] f[i-1][j-2v[i]] f[i-1][j-3v[i]] ……f[i…...

关于“Python”的核心知识点整理大全47
目录 16.1.10 错误检查 highs_lows.py highs_lows.py 16.2 制作世界人口地图:JSON 格式 16.2.1 下载世界人口数据 16.2.2 提取相关的数据 population_data.json world_population.py 16.2.3 将字符串转换为数字值 world_population.py 2world_population…...

label-studio的使用教程(导入本地路径)
文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

Docker 运行 Kafka 带 SASL 认证教程
Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明:server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放
简介 前面两期文章我们介绍了I2S的读取和写入,一个是通过INMP441麦克风模块采集音频,一个是通过PCM5102A模块播放音频,那如果我们将两者结合起来,将麦克风采集到的音频通过PCM5102A播放,是不是就可以做一个扩音器了呢…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1
每日一言 生活的美好,总是藏在那些你咬牙坚持的日子里。 硬件:OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写,"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...
大模型多显卡多服务器并行计算方法与实践指南
一、分布式训练概述 大规模语言模型的训练通常需要分布式计算技术,以解决单机资源不足的问题。分布式训练主要分为两种模式: 数据并行:将数据分片到不同设备,每个设备拥有完整的模型副本 模型并行:将模型分割到不同设备,每个设备处理部分模型计算 现代大模型训练通常结合…...

html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...

USB Over IP专用硬件的5个特点
USB over IP技术通过将USB协议数据封装在标准TCP/IP网络数据包中,从根本上改变了USB连接。这允许客户端通过局域网或广域网远程访问和控制物理连接到服务器的USB设备(如专用硬件设备),从而消除了直接物理连接的需要。USB over IP的…...

AI,如何重构理解、匹配与决策?
AI 时代,我们如何理解消费? 作者|王彬 封面|Unplash 人们通过信息理解世界。 曾几何时,PC 与移动互联网重塑了人们的购物路径:信息变得唾手可得,商品决策变得高度依赖内容。 但 AI 时代的来…...
Go 并发编程基础:通道(Channel)的使用
在 Go 中,Channel 是 Goroutine 之间通信的核心机制。它提供了一个线程安全的通信方式,用于在多个 Goroutine 之间传递数据,从而实现高效的并发编程。 本章将介绍 Channel 的基本概念、用法、缓冲、关闭机制以及 select 的使用。 一、Channel…...

Elastic 获得 AWS 教育 ISV 合作伙伴资质,进一步增强教育解决方案产品组合
作者:来自 Elastic Udayasimha Theepireddy (Uday), Brian Bergholm, Marianna Jonsdottir 通过搜索 AI 和云创新推动教育领域的数字化转型。 我们非常高兴地宣布,Elastic 已获得 AWS 教育 ISV 合作伙伴资质。这一重要认证表明,Elastic 作为 …...