kubernetes/kops · error
error building kube-controller-manager pod: %v
Error message
error building kube-controller-manager pod: %v
What it means
The kube-controller-manager builder wraps buildPod failure here. buildPod assembles the static pod spec (volumes, mounts, health checks, certificates); it fires when that assembly errors — e.g. a missing required file asset or invalid configuration — so no KCM manifest can be written for the node.
Source
Thrown at nodeup/pkg/model/kube_controller_manager.go:76
// Include the CA Key
// @TODO: use a per-machine key? use KMS?
if err := b.BuildCertificatePairTask(c, fi.CertificateIDCA, pathSrvKCM, "ca", nil, nil); err != nil {
return err
}
if err := b.BuildPrivateKeyTask(c, "service-account", pathSrvKCM, "service-account", nil, nil); err != nil {
return err
}
kcm.ServiceAccountPrivateKeyFile = filepath.Join(pathSrvKCM, "service-account.key")
if err := b.writeServerCertificate(c, &kcm); err != nil {
return err
}
{
pod, err := b.buildPod(&kcm)
if err != nil {
return fmt.Errorf("error building kube-controller-manager pod: %v", err)
}
manifest, err := k8scodecs.ToVersionedYaml(pod)
if err != nil {
return fmt.Errorf("error marshaling pod to yaml: %v", err)
}
c.AddTask(&nodetasks.File{
Path: "/etc/kubernetes/manifests/kube-controller-manager.manifest",
Contents: fi.NewBytesResource(manifest),
Type: nodetasks.FileType_File,
})
}
{
c.AddTask(&nodetasks.File{
Path: "/var/log/kube-controller-manager.log",
Contents: fi.NewStringResource(""),View on GitHub (pinned to 4c8573c808)
Solutions
- Check kubeControllerManager settings in the spec
- Inspect nodeup logs for the underlying error
- Re-run nodeup
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at nodeup/pkg/model/kube_controller_manager.go:76 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/886d8d14403f1a35.
Report an issue: GitHub.