Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support EKS node group update add-on "AddOnMNG/NGUpdate" #91

Closed
gyuho opened this issue Jun 9, 2020 · 3 comments
Closed

Support EKS node group update add-on "AddOnMNG/NGUpdate" #91

gyuho opened this issue Jun 9, 2020 · 3 comments

Comments

@gyuho
Copy link
Contributor

gyuho commented Jun 9, 2020

Scale up existing ng/mng from x to y.

@gyuho
Copy link
Contributor Author

gyuho commented Jun 10, 2020

@gyuho
Copy link
Contributor Author

gyuho commented Jun 10, 2020

https://docs.aws.amazon.com/cli/latest/reference/eks/update-nodegroup-config.html

We can define in eksconfig/add-on-managed-node-groups.go:

type MNGScaleConfig struct {
   minSize=integer,maxSize=integer,desiredSize=integer
}

type MNG struct {
   ...

   ScaleConfigs []MNGScaleConfig `json:"scale-configs"`
}

(to be executed in sequence, after mng is created)

https://docs.aws.amazon.com/cli/latest/reference/eks/update-nodegroup-version.html

We can do the same thing as eksconfig/add-on-cluster-version-upgrade.go (implemented in eks/cluster/version-upgrade/):

type MNGVersionUpgrade struct {
	// Enable is 'true' to create this add-on.
	Enable bool `json:"enable"`
	// Created is true when the resource has been created.
	// Used for delete operations.
	Created         bool               `json:"created" read-only:"true"`
	TimeFrameCreate timeutil.TimeFrame `json:"time-frame-create" read-only:"true"`

	// Version is the version of EKS Kubernetes "cluster".
	// If empty, set default version.
	Version      string  `json:"version"`
	VersionValue float64 `json:"version-value" read-only:"true"`
}

type MNG struct {
   ...

   VersionUpgrade *MNGVersionUpgrade `json:"version-upgrade"`
}

And define our own API for scale up/down regular node group

Should be added to ec2config.ASG:

type ASGScaleConfig struct {
   minSize=integer,maxSize=integer,desiredSize=integer
}

type ASG struct {
   ...

   ScaleConfigs []ASGScaleConfig `json:"scale-configs"`
}

@gyuho
Copy link
Contributor Author

gyuho commented Jun 25, 2020

Done via #106.

@gyuho gyuho closed this as completed Jun 25, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant