kubernetes/kops · error
InstanceGroup not set on etcd %s/%s
Error message
InstanceGroup not set on etcd %s/%s
What it means
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.
Source
Thrown at pkg/model/master_volumes.go:75
// MasterVolumeBuilder builds master EBS volumes
type MasterVolumeBuilder struct {
*KopsModelContext
Lifecycle fi.Lifecycle
}
var _ fi.CloudupModelBuilder = &MasterVolumeBuilder{}
func (b *MasterVolumeBuilder) Build(c *fi.CloudupModelBuilderContext) error {
for _, etcd := range b.Cluster.Spec.EtcdClusters {
for _, m := range etcd.Members {
// EBS volume for each member of each etcd cluster
prefix := m.Name + ".etcd-" + etcd.Name
name := prefix + "." + b.ClusterName()
igName := fi.ValueOf(m.InstanceGroup)
if igName == "" {
return fmt.Errorf("InstanceGroup not set on etcd %s/%s", m.Name, etcd.Name)
}
ig := b.FindInstanceGroup(igName)
if ig == nil {
return fmt.Errorf("InstanceGroup not found (for etcd %s/%s): %q", m.Name, etcd.Name, igName)
}
zones, err := model.FindZonesForInstanceGroup(b.Cluster, ig)
if err != nil {
return err
}
if len(zones) == 0 {
return fmt.Errorf("must specify a zone for instancegroup %q used by etcd %s/%s", igName, m.Name, etcd.Name)
}
if len(zones) != 1 {
return fmt.Errorf("must specify a unique zone for instancegroup %q used by etcd %s/%s", igName, m.Name, etcd.Name)
}
zone := zones[0]
View on GitHub (pinned to 4c8573c808)
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
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at pkg/model/master_volumes.go:75 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/c8a141972e8e805c.
Report an issue: GitHub.