kubernetes/kops · error

InstanceGroup not found (for etcd %s/%s): %q

Error message

InstanceGroup not found (for etcd %s/%s): %q

What it means

The etcd member references an InstanceGroup by name, but FindInstanceGroup found no InstanceGroup with that name in the cluster, so kOps cannot determine instance type/EBS settings for the etcd volume.

Source

Thrown at pkg/model/master_volumes.go:79

	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]

			volumeSize := fi.ValueOf(m.VolumeSize)
			if volumeSize == 0 {
				volumeSize = DefaultEtcdVolumeSize
			}

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Check for typos in etcdClusters[].members[].instanceGroup and correct it to an existing (master) InstanceGroup name
  2. If the InstanceGroup was renamed, update the etcd member references to match
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at pkg/model/master_volumes.go:79 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/a6bb12a60c381413. Report an issue: GitHub.