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

Karpenter? #7

Closed
bradenmacdonald opened this issue Dec 6, 2022 · 8 comments
Closed

Karpenter? #7

bradenmacdonald opened this issue Dec 6, 2022 · 8 comments
Assignees

Comments

@bradenmacdonald
Copy link
Contributor

https://github.com/lpm0073/cookiecutter-openedx-devops uses Karpenter to optimize the scheduling of k8s nodes at the cloud provider (e.g. AWS EC2 spot instances) to reduce costs of the cluster.

Is that in scope for this project for now, or do we want to stick to things that are provisioned within the cluster itself?

@jfavellar90
Copy link
Contributor

As @lpm0073 mentioned in the meeting, adding Karpenter requires the creation of a few entities in the cloud provider (AWS) to allow the cluster to interact with different cloud services via roles. Additionally, this service is only supported for AWS for now. The same applies to cluster-autoscaler tool, however, this one offers support for more cloud providers.

@lpm0073
Copy link
Contributor

lpm0073 commented Jan 10, 2023

the Karpenter installation is segregated into a separate Terraform module in the Cookiecutter, see Terraform/Karpenter.

You can probably copy-paste it nearly verbatim, but summarizing the resources that are required:

  • iam-role-for-service-accounts-eks
  • helm chart https://charts.karpenter.sh
  • aws_iam_instance_profile
  • a Karpenter provisioner manifest
  • ec2_spot_fleet_tagging_role IAM role
  • aws_iam_role_policy_attachment
  • there are also a couple of small things to add to the Kubernetes resource itself, assuming that this is built with the AWS Terraform module.

@bradenmacdonald
Copy link
Contributor Author

Status: I would consider this a low priority issue for now because it mostly takes place outside of the helm chart.

I propose that the scope of this issue be: to test Lawrence's Karpenter integration and document how it can be used with this chart, for those who want to use it.

@antoviaque
Copy link

Note from the meeting - this work will be dependent on the work from @lpm0073 in #3

@felipemontoya
Copy link
Member

@lpm0073 we are looking at delegating this to someone else, would you agree?

@lpm0073
Copy link
Contributor

lpm0073 commented May 30, 2023

@felipemontoya i'll follow up with you via DM. i wasn't aware of anything pending nor ongoing w Karpenter. it's been nearly two months since i pushed my code. since then i haven't followed any ongoing dialogue in this project.

@felipemontoya
Copy link
Member

For this cycle of review @jfavellar90 was on vacations so he will pick it up once he comes back

@gabor-boros
Copy link
Contributor

Closing as the related PR is already merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Development

No branches or pull requests

6 participants