I saw pulumi demo’d during TGIK, and it looked pre...
# general
l
I saw pulumi demo’d during TGIK, and it looked pretty cool. I want to look into it, as possibly a terraform replacement to setup a VPC, and then install k8s to that VPC. We currently use kops for k8s deployment. I’d like to move away from kops, as they lag behind k8s versions, and not ready to use aws EKS or any managed version. Are there any good resources for deploying k8s using pulumi onto ec2 instances? maybe using kubeadm?
g
cc @creamy-potato-29402
@little-optician-1705 So right now, our focus has been on cloud infrastructure resources, and not on stuff at the OS layer (i.e. provisioners). We do have an EKS package that makes it much easier to manage an EKS cluster, but nothing currently for provisioning k8s on bare instances.
That being said, you can also use Pulumi for managing resources on an existing k8s cluster, so that's another angle you might be interested in.
b
@creamy-potato-29402 Had started porting https://aws.amazon.com/quickstart/architecture/heptio-kubernetes/ some time ago (and Joe Beda asked us about this again last week). I'm not sure how far he got but since it's CloudFormation -- something that's relatively easy to port to Pulumi -- it shouldn't be a hurculean effort.
Particularly would be nice when paired with https://github.com/pulumi/pulumi-awsx, which makes VPCs a lot easier to create and manage.
l
great, thanks for the resources. I’ll give it a go, and be following progress. 🍻
c
@little-optician-1705 please do pop back in and chat with us if you would like to use something like the Heptio Quickstart. I am increasingly seeing people who like the ability to set all these custom flags on the API server, and I’d like to have more examples of people who’d like to use this.
l
the quick start looks great to get a cluster up and running. How is managed after deployment? Currently I manage cluster via a yaml file, then do a
kops update
when updating the version, or adding new Instance Groups. How would I update the cluster in the setup with cloud formation? via kubeadm? Could I pull all the config files, the manage that, and do something similar to
kops update
?