{"record":{"id":"c8a141972e8e805c","repo":"kubernetes/kops","slug":"instancegroup-not-set-on-etcd-s-s","errorCode":null,"errorMessage":"InstanceGroup not set on etcd %s/%s","messagePattern":"InstanceGroup not set on etcd (.+?)/(.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/model/master_volumes.go","lineNumber":75,"sourceCode":"\n// MasterVolumeBuilder builds master EBS volumes\ntype MasterVolumeBuilder struct {\n\t*KopsModelContext\n\tLifecycle fi.Lifecycle\n}\n\nvar _ fi.CloudupModelBuilder = &MasterVolumeBuilder{}\n\nfunc (b *MasterVolumeBuilder) Build(c *fi.CloudupModelBuilderContext) error {\n\tfor _, etcd := range b.Cluster.Spec.EtcdClusters {\n\t\tfor _, m := range etcd.Members {\n\t\t\t// EBS volume for each member of each etcd cluster\n\t\t\tprefix := m.Name + \".etcd-\" + etcd.Name\n\t\t\tname := prefix + \".\" + b.ClusterName()\n\n\t\t\tigName := fi.ValueOf(m.InstanceGroup)\n\t\t\tif igName == \"\" {\n\t\t\t\treturn fmt.Errorf(\"InstanceGroup not set on etcd %s/%s\", m.Name, etcd.Name)\n\t\t\t}\n\t\t\tig := b.FindInstanceGroup(igName)\n\t\t\tif ig == nil {\n\t\t\t\treturn fmt.Errorf(\"InstanceGroup not found (for etcd %s/%s): %q\", m.Name, etcd.Name, igName)\n\t\t\t}\n\n\t\t\tzones, err := model.FindZonesForInstanceGroup(b.Cluster, ig)\n\t\t\tif err != nil {\n\t\t\t\treturn err\n\t\t\t}\n\t\t\tif len(zones) == 0 {\n\t\t\t\treturn fmt.Errorf(\"must specify a zone for instancegroup %q used by etcd %s/%s\", igName, m.Name, etcd.Name)\n\t\t\t}\n\t\t\tif len(zones) != 1 {\n\t\t\t\treturn fmt.Errorf(\"must specify a unique zone for instancegroup %q used by etcd %s/%s\", igName, m.Name, etcd.Name)\n\t\t\t}\n\t\t\tzone := zones[0]\n","sourceCodeStart":57,"sourceCodeEnd":93,"githubUrl":"https://github.com/kubernetes/kops/blob/4c8573c808a73d578c5eadc86d410646ea0b0d73/pkg/model/master_volumes.go#L57-L93","documentation":"MasterVolumeBuilder.Build creates an EBS volume per etcd member and needs each member's InstanceGroup to resolve its settings; this fires when etcdClusters[].members[].instanceGroup is nil/empty in the cluster spec.","triggerScenarios":"Thrown at pkg/model/master_volumes.go:75 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["`kops edit cluster` and set instanceGroup on every etcd cluster member, pointing at the master InstanceGroup that hosts it","After fixing, run `kops update cluster` and re-apply"],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"4c8573c808a73d578c5eadc86d410646ea0b0d73","analyzedAt":"2026-09-05T04:13:19.212Z","contentChangedAt":"2026-09-05T04:13:19.212Z","schemaVersion":2},"datasetVersion":"2026-09-12T07:17:12.445Z"}