我正在尝试建立一个可以启动nova实例的最小devstack,一些将具有公共地址,一些将需要打开到公共网络的连接.我希望能够为实例分配浮动ips,并使来自具有公共地址的实例的流量到达公共网络.
Devstack将在一个带有两个物理接口的Ubuntu 14.04盒子上运行.第一个接口eth0
是在10.48.4.0/22,我拥有地址10.48.6.232; 这是与盒子的管理连接.第二个接口eth1
是10.48.8.0/22,拥有地址10.48.11.6和10.48.11.57-10.48.11.59.eth1
配置为使用10.48.11.6地址,为浮动范围留下一小段地址.
auto eth1
iface eth1 inet static
address 10.48.11.6
netmask 255.255.252.0
Run Code Online (Sandbox Code Playgroud)
我想使用范围10.48.11.57-10.48.11.59作为浮动IP池.这构成了我的开始local.conf
[[local|localrc]]
# Devstack host IP eth1 address
HOST_IP=10.48.11.6
# Private network
FIXED_RANGE=10.90.100.0/24
NETWORK_GATEWAY=10.90.100.1
# Public network
Q_FLOATING_ALLOCATION_POOL=start=10.48.11.57,end=10.48.11.59
FLOATING_RANGE=10.48.8.0/22
PUBLIC_NETWORK_GATEWAY=10.48.8.1
# Public network is eth1
PUBLIC_INTERFACE=eth1
Run Code Online (Sandbox Code Playgroud)
我的相关部分的其余部分local.conf
是配置neutron和ovs以使用公共网络.我按照评论中的说明进行操作neutron-legacy
.
# Neutron
# -------
PUBLIC_BRIDGE=br-ex
Q_USE_PROVIDERNET_FOR_PUBLIC=True
PUBLIC_PHYSICAL_NETWORK=public
OVS_BRIDGE_MAPPINGS=public:br-ex
# Neutron Provider Network
ENABLE_TENANT_TUNNELS=True
PHYSICAL_NETWORK=public
OVS_PHYSICAL_BRIDGE=br-ex
# Use ml2 and openvswitch
Q_PLUGIN=ml2
Q_ML2_PLUGIN_MECHANISM_DRIVERS=openvswitch,logger
Q_AGENT=openvswitch
enable_service q-agt
# …
Run Code Online (Sandbox Code Playgroud) 我通过以下方式更新我的系统:
\n$ apt-get upgrade\n
Run Code Online (Sandbox Code Playgroud)\n然后糟糕的事情发生了,当我重新启动系统时,我发现网络连接超时。
\n我很确定,我的网络连接很好(更新期间没有变化),我可以分配IP(以太网和WLAN)
\n我咨询过谷歌:
\n# anyway, i was told to run\n$ sudo netplan apply\n# and i get\nWARNING:root:Cannot call Open vSwitch: ovsdb-server.service is not running.\n
Run Code Online (Sandbox Code Playgroud)\n我从来没有在我的服务器上安装过这个 ovsdb 东西,但是这个警告真的很烦人
\n\n\n可能与网络超时有关,也可能无关
\n
我该如何解决这个问题(删除此警告或只是帮助我解决网络连接问题)
\n我试过:
\n$ systemctl status systemd-networkd-wait-online.service\n
Run Code Online (Sandbox Code Playgroud)\n我得到:
\n\xc3\x97 systemd-networkd-wait-online.service - Wait for Network to be Configured\n Loaded: loaded (/lib/systemd/system/systemd-networkd-wait-online.service; enabled; vendor preset: disabled)\n Active: failed (Result: timeout) since Tue 2023-08-22 05:12:01 CST; 2 months 3 …
Run Code Online (Sandbox Code Playgroud) 每次成功安装Open vSwitch并重新启动后,我都会收到以下错误.ovs-vsctl:unix:/usr/local/var/run/openvswitch/db.sock:数据库连接失败(没有这样的文件或目录).有谁知道为什么db.sock文件丢失了?
我正在使用以下文档设置openstack配置: http://docs.openstack.org/juno/install-guide/install/apt/openstack-install-guide-apt-juno.pdf 并到达第72页,其中显示去做这个:
# ovs-vsctl add-port br-ex INTERFACE_NAME
Run Code Online (Sandbox Code Playgroud)
但我输入了错误的 INTERFACE_NAME,现在我必须纠正这个错误(这是一个真正的接口,但错误的接口,我应该在那里放另一个接口)。
但我很难撤销它。
我试过:
# ovs-vsctl del-port br-ex INTERFACE_NAME
Run Code Online (Sandbox Code Playgroud)
但它告诉我 /etc/openvswitch/conf.db (或类似的东西)是只读的
然后我尝试了
# ovs-vsctl del-br br-ex
Run Code Online (Sandbox Code Playgroud)
然后它说你不能只删除一个端口,你需要删除整个网桥(或类似的东西)。这对我来说很奇怪,我认为该命令会删除桥......
那么有人知道删除我错误创建的端口的正确方法吗?
编辑:我以root身份尝试了所有这些。
EDIT2:我刚刚尝试在练习机器上做同样的事情,犯同样的错误,然后用以下方法修复它:
# ovs-vsctl del-port br-ex INTERFACE_NAME
Run Code Online (Sandbox Code Playgroud)
它起作用了,没有只读的废话,所以我真的不明白。有什么建议么?
我已经按照 Icehouse 文档安装了一个 3 节点环境,我的 openstack 节点是在 CentOS 中使用 libvirt 构建为虚拟机的
http://docs.openstack.org/icehouse/install-guide/install/yum/content/basics-networking-neutron.html
-controller-node : 10.0.0.11 (management network)
-network-node : 10.0.0.21 (management network), 10.0.1.21 (data network)
-compute-node : 10.0.0.31 (management network), 10.0.1.31 (data network)
-external network : 192.168.125.0/24
-demo network : 172.30.1.0/24
Run Code Online (Sandbox Code Playgroud)
在我的网络节点中,外部 NIC 根据文档配置为没有 IP。(PROMISC="yes")
DEVICE="eth1"
TYPE="Ethernet"
ONBOOT="yes"
PROMISC="yes"
BOOTPROTO="none"
HWADDR="52:54:00:D3:92:E2"
UUID="7f8a9e99-fbd0-4c59-900f-2369c9e8f780"
Run Code Online (Sandbox Code Playgroud)
但是,添加网络服务后。 我无法在以下阶段ping 外部网络。
1)内部(网络节点上的租户路由器网关)->外部(外部geteway)
[root@network-node ~]# ping 192.168.125.254
PING 192.168.125.254 (192.168.125.254) 56(84) bytes of data.
From 192.168.125.54 icmp_seq=1 Destination Host Unreachable
From 192.168.125.54 icmp_seq=2 …
Run Code Online (Sandbox Code Playgroud) 我需要Mininet的一些帮助.我知道尝试这样做似乎有些奇怪,但相信我,鉴于我的情况,这是必要的.我需要使用主机启动mininet,然后"手动"将该主机设置为OpenFlow Switch.
到目前为止我所拥有的是:我正在设置5个主机,其中1个是"交换主机".其他4台主机仅连接到此特殊主机.为了使这个"切换主机"我在启动脚本中执行以下命令:
os.system('sudo ovs-vsctl add-br {NAME}')
os.system('sudo ovs-vsctl -- set bridge {NAME} protocols=OpenFlow13')
os.system('sudo ovs-vsctl set-controller {NAME} tcp:127.0.0.1:6633')
os.system('sudo ovs-vsctl add-port {NAME} {NAME}-eth0')
os.system('sudo ovs-vsctl add-port {NAME} {NAME}-eth1')
os.system('sudo ovs-vsctl add-port {NAME} {NAME}-eth2')
os.system('sudo ovs-vsctl add-port {NAME} {NAME}-eth3')
Run Code Online (Sandbox Code Playgroud)
我有一个控制器在6633端口监听(在常规场景下工作正常).
我观察到的行为是,当我启动拓扑时,交换机和控制器正确地进行了握手会话,但是当我尝试从一个主机ping到另一个主机时,它会发出ARP请求,但应该是什么都不做,所以ARP请求一直挂在那里.
我知道必须有一些额外的配置,我没有做,但我似乎无法找到任何地方.
我错过了将该桥连接到主机的命令吗?Mininet如何创建一个开关?也许知道我可以尝试对我的主人做同样的事情.
提前致谢.圣地亚哥.
我想知道是否有人可以简要概述一下所有不同的Kubernetes网络覆盖之间的差异/优势.入门指南(http://kubernetes.io/docs/getting-started-guides/scratch/#network)提到以下内容:
但并没有真正解释它们之间的差异是什么,或者每个人的优缺点是什么.我想知道是否有人可以让我知道我应该使用哪种解决方案用于裸机CentOS 7集群.
谢谢!
我正在尝试使用POX控制器来控制流的路径。我知道Open vSwitch将选择优先级最高的转发规则。但是,如果我为具有相同优先级的现有流插入新的转发规则,将会发生什么。Open vSwitch是否会随机选择一个匹配的规则?
我们维护运行生产应用程序的Ubuntu主机的“集群”。主机运行各种各样的Docker容器,例如
每个主机也运行
图片信息
elasticsearch-slave1
没有暴露的端口,但内部使用的端口显示为:9200
consul-master
Host1上的端口8500
对外暴露了端口。其中一些信息可能与该问题完全无关。
主持人:Ubuntu 16.04.3 LTS
主机服务
| Application | Version |
| ----------- | ---------- |
| docker | 18.03.1-ce |
| consul | v1.0.2 |
Docker服务
| Application | Version |
| ------------- | ------- |
| consul | v1.0.2 |
| elasticsearch | 5.6.4 |
| logstash | 5.6.4 |
| …
我正在构建一个 SDN 测试床,其中包含安装在 Linux Ubuntu 18.04 上的 OpenvSwitch 交换机和在 VirtualBox 上运行的 5 个虚拟机(Linux Ubuntu 16.04 服务器)。OVS 由 OpenDaylight Boron 管理。
ip tuntap add mode tap tapN
创建水龙头将虚拟机链接到 OVS 时,一切正常,我可以在“同一子网内”的虚拟机之间进行 ping 操作。但是,当我尝试: 时ovs-ofctl -O OpenFlow13 dump-ports br0
,(rx pkts 和 tx pkts)等统计信息仅显示除本地端口之外的所有端口上的零。
但是,当我用来ovs-vsctl add-port br0 vnet0 -- set Interface tapN type=internal
创建水龙头时,即使只有一台设备对另一台设备执行 ping 操作,我也可以看到所有端口的统计信息。
我的问题:
为什么 (dump-ports) 在第一种情况下不显示统计信息?
可以按照第二种情况所述在我的测试台中继续使用(ovs 内部水龙头)吗?
下面是完整的OVS配置案例1:
ovs-vsctl add-br br0
ip tuntap add mode tap vnet0
ip tuntap add mode tap vnet1
ip tuntap …
Run Code Online (Sandbox Code Playgroud) openvswitch ×10
openstack ×3
sdn ×2
weave ×2
calico ×1
devstack ×1
docker ×1
flannel ×1
kubernetes ×1
mininet ×1
netplan ×1
networking ×1
opendaylight ×1
openflow ×1
pox ×1
tun-tap ×1
virtualbox ×1