In VMware Telco Cloud Automation (TCA) environments, application pods may spontaneously enter and remain in a persistent Init state following a Node Kernel Version Upgrade. The primary symptom is a failure in the istio-cni network configuration, characterized by the error: error cni Command error output: xtables other problem: line 2 failed: Chain already exists. This prevents the pod from initializing its networking and progressing to a "Running" state unless the worker node is rebooted.
VMware Telco Cloud Automation 3.2
The issue is caused by a defect in the Istio-CNI iptables detection logic. In certain environments, iptables-restore is aliased to iptables-nft-restore.
During the pod initialization sequence, Istio-CNI incorrectly triggers both iptables-restore --noflush and iptables-nft-restore --noflush. Because these commands are effectively identical in the underlying system, the networking rules are applied twice. This leads to a conflict where the second command fails because the required iptables chains already exist. Additionally, log reviews may show a segfault in libnftnl.so.11.2.0 related to iptables-nft-sa during this process.
To permanently resolve this issue, upgrade Istio to a version that includes improved iptables binary detection logic.
nft vs legacy iptables binaries, preventing duplicate execution.kubectl get pods -A -o wide | grep <pod_name>istio-cni-node logs to ensure only one set of iptables restore commands is being executed without "Chain already exists" errors.Workaround If an immediate upgrade is not possible, the following temporary mitigation can be used: