As an operator of GC Notify I want our on demand and spot instance configurations to be in sync to avoid configuration drift, and ensure the reliability of notify.
WHY are we building?
Karpenter, which provisions the spot instances for autoscaling uses a different node configuration than what we have in terraform. This has lead to problems (IMDSv2). It would be nice if we could create a launch template in terraform that is referenced by both EKS in TF and Karpenter so that we can be sure the nodes are the same.
WHAT are we building?
Confirm that Karpenter can leverage Launch Templates
Implement a common launch template
VALUE created by our solution
Reduced configuration drift, improved reliability
Acceptance Criteria
[ ] Confirm Karpenter can use Launch Templates
[ ] Create a launch template in TF
[ ] Reference launch template in Karpenter provisioner and in EKS config in terraform
QA Steps
[ ] Smoke Test
[ ] Verify logging still works
[ ] Load test to scale up/down nodes
[ ] View node config in K8s to confirm launch template is being used.
Description
As an operator of GC Notify I want our on demand and spot instance configurations to be in sync to avoid configuration drift, and ensure the reliability of notify.
WHY are we building?
Karpenter, which provisions the spot instances for autoscaling uses a different node configuration than what we have in terraform. This has lead to problems (IMDSv2). It would be nice if we could create a launch template in terraform that is referenced by both EKS in TF and Karpenter so that we can be sure the nodes are the same.
WHAT are we building?
Confirm that Karpenter can leverage Launch Templates Implement a common launch template
VALUE created by our solution
Reduced configuration drift, improved reliability
Acceptance Criteria
QA Steps