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

Move carbonplan hub to eksctl #558

Merged
merged 2 commits into from
Jul 30, 2021
Merged

Conversation

yuvipanda
Copy link
Member

@yuvipanda yuvipanda commented Jul 27, 2021

  • Use jsonnet to generate the eksctl config YAML file.
    This reduces duplication a lot, and matches what we
    do with kops. We can easily set defaults, generate
    nodegroup names, and set cloud tags equivalent to our
    node labels / taints automatically.
  • Install the cluster autoscaler as part of the support
    charts, since eksctl doesn't build that by default.
    It is turned off by default.
  • No changes were needed for the hub configuration, which
    is great!

Inspired by #436

TODO:
- [ ] eksctl nodegroups are immutable, so modifying them requires manually creating a new one and removing the old one. Figure out a plan for this
- [ ] Document how to create an eksctl cluster
- [ ] Add guidelines on when to use eksctl vs kops

- Use jsonnet to generate the eksctl config YAML file.
  This reduces duplication a lot, and matches what we
  do with kops. We can easily set defaults, generate
  nodegroup names, and set cloud tags equivalent to our
  node labels / taints automatically.
- Install the cluster autoscaler as part of the support
  charts, since eksctl doesn't build that by default.
  It is turned off by default.
- No changes were needed for the hub configuration, which
  is great!

Inspired by 2i2c-org#436
Copy link
Contributor

@consideRatio consideRatio left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

From what I can tell, this looks good! I left a comment or two

support/Chart.yaml Show resolved Hide resolved
eksctl/libsonnet/nodegroup.jsonnet Show resolved Hide resolved
@yuvipanda
Copy link
Member Author

yuvipanda commented Jul 30, 2021

I struck out the TODO items. Let's get this merged first, and then we can work on the subtasks. Currently you need to have this PR cherry-picked to be able to deploy to carbonplan at all

@choldgraf
Copy link
Member

choldgraf commented Jul 30, 2021

Is this waiting on anything? I see an approve from @consideRatio but I don't feel comfortable merging a PR when I don't understand what it does / what to do if something goes wrong

@consideRatio
Copy link
Contributor

Same here, i just approved based on my understanding - +1 for self-merge!

@yuvipanda
Copy link
Member Author

Yeah, we should figure out policies in 2i2c-org/team-compass#175. I always feel uncomfortable self-merging, but with infrastructure as code that's often what needs to happen. I'll do that here for now.

@yuvipanda yuvipanda merged commit cc71cbd into 2i2c-org:master Jul 30, 2021
@damianavila
Copy link
Contributor

damianavila commented Aug 6, 2021

Belated review (because of holidays 😉 ).

This looks nice to me except for the fact you put the autoscaler under the support chart.
Can you elaborate on that decision? AFAIR, the support stuff is actually optional (right?) and it rings bells on my head that you could potentially deploy a broken? eksctl cluster if you missed adding the support chart? Or am I missing something here?

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

Successfully merging this pull request may close these issues.

4 participants