kubernetes/kops · error
getting info for %s network interface: %w
Error message
getting info for %s network interface: %w
What it means
Wraps a failure of the GetVirtualMachineScaleSetNetworkInterface call for a VMSS-instance (vmssName/vmssIndex) token verification path. Fires when Azure returns an error for the NIC lookup, e.g. the instance ID is stale, the NIC was detached, or the API call failed. %s is the 'VMSS %q VM #%s' description.
Source
Thrown at upup/pkg/fi/cloudup/azure/verifier.go:208
desc := fmt.Sprintf("VMSS %q VM #%s", vmssName, vmssIndex)
klog.V(2).Infof("Azure verifier for VM %q looking up Azure API object", vmLogID)
vm, err := a.client.vmssVMsClient.Get(ctx, a.client.resourceGroup, vmssName, vmssIndex, nil)
if err != nil {
return nil, fmt.Errorf("getting info for %s: %w", desc, err)
}
if vm.Properties == nil {
return nil, fmt.Errorf("determining VMID for %s", desc)
}
nodeName, igName, err = extractNodeIdentity(data, desc, vm.Properties.VMID, vm.Properties.OSProfile, vm.Tags)
if err != nil {
return nil, err
}
// Collect private IP addresses from the VMSS VM's network interface.
ni, err := a.client.nisClient.GetVirtualMachineScaleSetNetworkInterface(ctx, a.client.resourceGroup, vmssName, vmssIndex, vmssName, nil)
if err != nil {
return nil, fmt.Errorf("getting info for %s network interface: %w", desc, err)
}
addrs, challengeEndpoints, err = privateIPEndpoints(ni.Interface, desc)
if err != nil {
return nil, err
}
default:
return nil, fmt.Errorf("unsupported resource type %q", resourceType)
}
// Validate that we found at least one address and challenge endpoint.
if len(addrs) == 0 {
return nil, fmt.Errorf("determining certificate alternate names for node %q", nodeName)
}
if len(challengeEndpoints) == 0 {
return nil, fmt.Errorf("determining challenge endpoint for node %q", nodeName)
}
View on GitHub (pinned to 4c8573c808)
Solutions
- Verify the VMSS instance ID in the token matches a live instance
- Confirm the verifier's credentials can read network interfaces in that resource group
- Look at the wrapped SDK error for the ARM failure reason
- Re-run nodeup/kops-controller bootstrap after the instance is fully provisioned
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at upup/pkg/fi/cloudup/azure/verifier.go:208 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of kubernetes/kops@4c8573c808 (2026-09-05).
Data as JSON: /api/errors/f98f475cfbac6865.
Report an issue: GitHub.