kubernetes/kops · error

spotinst: unsupported instance group type: %s

Error message

spotinst: unsupported instance group type: %s

What it means

NewInstanceGroup wraps a Spotinst API object for a provider/type pair; only AWS with InstanceGroupElastigroup or InstanceGroupOcean is implemented, so any other combination is rejected with this error.

Source

Thrown at pkg/resources/spotinst/spotinst.go:97

	return log.LoggerFunc(func(format string, args ...interface{}) {
		klog.V(2).Infof(format, args...)
	})
}

// NewInstanceGroup returns an InstanceGroup wrapper for the specified cloud provider.
func NewInstanceGroup(cloudProviderID kops.CloudProviderID,
	instanceGroupType InstanceGroupType, obj interface{}) (InstanceGroup, error,
) {
	switch cloudProviderID {
	case kops.CloudProviderAWS:
		{
			switch instanceGroupType {
			case InstanceGroupElastigroup:
				return &awsElastigroupInstanceGroup{obj.(*awseg.Group)}, nil
			case InstanceGroupOcean:
				return &awsOceanInstanceGroup{obj.(*awsoc.Cluster)}, nil
			default:
				return nil, fmt.Errorf("spotinst: unsupported instance group type: %s", instanceGroupType)
			}
		}
	default:
		return nil, fmt.Errorf("spotinst: unsupported cloud provider: %s", cloudProviderID)
	}
}

// NewElastigroup returns an Elastigroup wrapper for the specified cloud provider.
func NewElastigroup(cloudProviderID kops.CloudProviderID,
	obj interface{}) (InstanceGroup, error,
) {
	return NewInstanceGroup(
		cloudProviderID,
		InstanceGroupElastigroup,
		obj)
}

// NewOcean returns an Ocean wrapper for the specified cloud provider.

View on GitHub (pinned to 4c8573c808)

Solutions

  1. Use an AWS cluster with Spotinst Elastigroup or Ocean instance group types
  2. Remove Spotinst-specific instance group settings for other cloud providers
Defensive patterns

Strategy: validation

When it happens

Trigger: Thrown at pkg/resources/spotinst/spotinst.go:97 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/b4ffca2aa05f553b. Report an issue: GitHub.