初学者:虚拟机实例无法访问外部网络及其他一些问题

初学者:虚拟机实例无法访问外部网络及其他一些问题

我尝试按照此文档和许多其他文档使用 Kolla-Ansible 部署多节点 OpenStack 云: https://docs.openstack.org/project-deploy-guide/kolla-ansible/2023.1/multinode.html。我想在这里澄清一下,我对 OpenStack 还很陌生,希望得到专业人士的指导。

节点包括 1 个 Kolla 节点、1 个控制节点、1 个计算节点和 1 个存储节点。所有节点都是托管在 VMware vSphere 集群上的虚拟机。每个节点都有 2 个 NIC,都连接到同一个端口组(例如 VLAN 100)。除了 Kolla 节点只有一个 NIC 并且也连接到 VLAN 100 端口组。所有节点都运行 Rocky Linux 9。

VLAN 100 的子网为 ,10.0.32/0其网关位于外部防火墙上10.0.32.1。因此,对于每个节点,我使用第一个 NIC(ens192)作为 ,network_interface并在文件api_interface中配置globals.yml。同时,第二个 NIC(ens224)用于neutron_external_interface

我已使用脚本设置了一个测试环境init-runonce,并修改了中的信息EXT_NET_CIDR以用作10.0.32.0/20外部网络。该脚本创建了 1 个名为 的虚拟路由器demo-router、1 个名为 的网络demo-net和 1 个名为 的实例demo1。之后,我创建了 1 个新实例、demo21 个名为 的新网络demo-net1,并将其连接到同一个虚拟路由器。两个实例都可以从不同的子网/网络相互 ping 通。 实例图像网络拓扑结构从 demo1 到 demo2 进行 Ping 测试

但是,我似乎无法 ping 通 Internet 上的某些东西,例如1.1.1.1,甚至是外部网关10.0.32.1从 demo1 ping 互联网和外部网关。我已将我的多模式库存和globals.yml配置片段包含在下面。

# multinode config file

[control]
control-node1

[Network]
control-node1

[compute]
compute-node1

[Monitoring]
control-node1

[Storage]
storage-node1

[deployment]
localhost       ansible_connection=local
# /etc/kolla/globals.yml file

kolla_base_distro: "rocky"

network_interface: "ens192"
api_interface: "ens192"
neutron_external_interface: "ens224"

enable_openstack_core: "yes"
enable_neutron: "{{ enable_openstack_core | bool }}"
neutron_plugin_agent: "open switch"
enable_openvswitch: "{{ enable_neutron | bool and neutron_plugin_agent != 'Linux bridge' }}"

另外,我有一些关于网络接口和存储的问题。

  1. 是否可以在节点上使用单独的物理 NIC 来处理管理、外部、存储和实时迁移流量?我知道这neutron_external_interface是用于外部 NIC 和api_interface用于管理 NIC。存储和实时迁移呢?有没有办法在 Kolla Ansible 中设置它?
  2. 我已经配置了一个存储节点,storage-node1并使用 LVM 后端启用了 Cinder。
enable_cinder: "Yes"
enable_cinder_backend_lvm: "Yes"

我如何将其用作 Nova VM 的存储而不是计算节点本地磁盘?

感谢大家的帮助和建议:)

答案1

@穆罕默德

你最后明白这一点了吗?

我如何将其用作 Nova VM 的存储而不是计算节点本地磁盘?

我目前正在做同样的事情,当我配置一个实例时,它会在存储节点上创建磁盘,但实例无法将其附加到启动节点。我的想法是它将使用管理适配器,但我看到 iSCSI 错误。

相关内容