此内容没有您所选择的语言版本。

Chapter 8. vHost User Ports


vHost user ports are DPDK-backed datapaths for instances with two modes:

  • dpdkvhostuser
  • dpdkvhostuserclient

In dpdkvhostuser mode, Open vSwitch (OVS) acts as a server which creates the vHost user socket. OVS shares the socket with QEMU, the client. In this mode, if OVS is restarted, VM instances connected to it will need to be rebooted to regain connectivity.

As of OVS 2.9, dpdkvhostuserclient is used instead. In this mode the QEMU creates and shares the vHost socket as a server, and OVS connects as the client. If OVS is restarted in this mode, it will automatically reconnect to all existing VMs.

8.1. Manually changing the vhost user port mode

DPDK vHost user ports are created exclusively with dpdkvhostuserclient mode since RHOSP 10 maintenance release RHSA-2018:2102, with no option to change this behavior. The usage of dpdkvhostuser mode for existing instances is still supported, however it is recommended to transition to dpdkvhostuserclient mode.

Change to the new dpdkvhostuserclient mode on existing instances by cold migrating them to another host after updating the overcloud to OVS 2.9.

Note

If you have instances configured with CPU pinning, set the cpu_pinning_migration_quick_fail parameter in nova.conf to false. This will allow CPU pinning to be recalculated for a higher chance of migration success. Prior to attempting a live migration of instances with CPU pinning, contact Red Hat support.

openstack server migrate <server_id>
openstack server resize --confirm <server id>
Note

Prior to RHOSP10 maintenance release RHBA-2019:0074, the cold migration may fail when the NUMATopologyFilter value is included in the NovaSchedulerDefaultFilters parameter in nova.conf. This behavior can be prevented by ensuring you are at the latest maintenance release, which includes the cpu_pinning_migration_quick_fail option for Nova. See Red Hat OpenStack Platform 10 Release Notes for more information.

You can check that an instance’s vHost user port is in dpdkvhostuserclient mode. Identify and log in to the hypervisor node where the instance resides.

Run the following:

compute-0# virsh dumpxml <instance name> | less

Identify the interface of type vhostuser and check that mode is set to server.

...
<interface type='vhostuser'>
<model type='virtio'/>
<source type='unix' path='<path-to-socket>' mode='<client|server>'/>
</interface>
...
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.