Incorrect bridge configuration on an AHV host can break a lot of functionalities, even if your cluster show nothing abnormal and all data replication is OK.
If you go through the Prism interface and you verify:
- The network configuration
- CVM and hosts availability
- Cluster status and data redundancy
Everything’s will look fine and this can be a tricky situation. One of the symptoms was the inability to schedule virtual machines on the affected host. In my case it was a misconfigured bridge on one of the hosts, it was created by using an unicode character!!
The bridge in question was named br1-test”, if you try to remove it using the command bellow:
allssh manage_ovs --bridge_name "br1-test”" delete_single_bridge
Code language: Bash (bash)
You will end with this error:
2020-07-20 10:47:42 ERROR manage_ovs:602 OVS error (192.168.5.1 delete_single_bridge): 'ascii' codec can't decode byte 0xe2 in position 34: ordinal not in range(128)
Input:
{
"args": [
"br1-test\u201d"
],
"cmd": "delete_single_bridge",
"kwargs": {}
}
Traceback:
Traceback (most recent call last):
File "/root/acropolis_modules/ovs.py", line 104, in _execute_command
return _enforce_atomic(_ovs_execute)(config, input_obj)
File "/root/acropolis_modules/ovs.py", line 59, in actual_func
return fn(*args, **kwargs)
File "/root/acropolis_modules/ovs.py", line 84, in _ovs_execute
ret = getattr(br_manager, cmd)(*args, **kwargs)
File "/root/acropolis_modules/br_manager.py", line 1078, in delete_single_bridge
br, ignored_ports, bridge_chaining_enabled)
File "/root/acropolis_modules/br_manager.py", line 256, in _list_interfaces
KvmOvsBrLocal(self._ovs_util, br).get_bridge_name()))
File "/root/acropolis_modules/utils.py", line 101, in list_ports
return self._execute_fn("ovs-vsctl list-ifaces %s" % br).splitlines()
File "/root/acropolis_modules/br_manager.py", line 65, in _execute_fn
log.ERROR("%s: %d\n%s\n%s" % (errmsg, p.returncode, out, err))
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 34: ordinal not in range(128)
Code language: PHP (php)
The workaround is to connect to the affected host (not the CVM) and then use the following command to delete that bridge:
# ovs-vsctl del-br br1-test”
Code language: Bash (bash)
Hope that can help!