On passive VC node at var/log/vmware/vcha/fixVchaConfigFiles.log:
yyyy-mm-ddthh:mm:ss.700Z ERROR fixVchaConfigFiles Error updating configuration Traceback (most recent call last): File "/usr/lib/vmware-vcha/scripts/fixVchaConfigFiles.py", line 131, in main updateConfiguration() File "/usr/lib/vmware-vcha/scripts/fixVchaConfigFiles.py", line 95, in updateConfiguration writePgFirewallOpenAccess(node1Ip) File "/usr/lib/vmware-vcha/scripts/fixVchaConfigFiles.py", line 32, in writePgFirewallOpenAccess rulesMap = json.load(f) File "/usr/lib/python3.7/json/__init__.py", line 296, in load parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw) File "/usr/lib/python3.7/json/__init__.py", line 348, in loads return _default_decoder.decode(s) File "/usr/lib/python3.7/json/decoder.py", line 337, in decode obj, end = self.raw_decode(s, idx=_w(s, 0).end()) File "/usr/lib/python3.7/json/decoder.py", line 355, in raw_decode raise JSONDecodeError("Expecting value", s, err.value) from None json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0) (END)
Environment
vCenter Server 7.x
vCenter Server 8.x
Cause
The script fixVxhaConfigFiles.py encounters failure while loading the file contents of /usr/lib/vmware-vcha/data/pg-firewall-block.conf into a JSON object as per the log snippets seen on passive node.
/usr/lib/vmware-vcha/data/pg-firewall-block.conf is empty.
The expected workflow is that the file /etc/vmware/appliance/firewall/vmware-vpostgres is copied to /usr/lib/vmware-vcha/data/pg-firewall-block.conf during VCHA configuration, and then used in fixVchaConfigFiles.py.