There are several modules I write and maintain to help deploy RKE2:
•
terraform-aws-access - this deploys AWS resources to set up a project (vpc, subnets, load balancer, etc)
•
terraform-aws-server - this deploys AWS Ec2 instances and hooks them up to access objects
◦ we define "standard" images and server sizes in this module which shape the support model
•
terraform-null-rke2-install - this installs RKE2 on any linux server regardless of where it is deployed
◦ the tests for this rely on the "standards" defined in the server module
•
terraform-local-rke2-config - this helps configure RKE2 by providing an interface to the config file
◦ the advantage here is in the input validation
◦ this module needs love but is generally functioning (rke2 config is fairly stable)
•
terraform-github-rke2-download - this simple module helps download rke2 from GitHub
◦ helpful when deploying with the "tar" install method or airgapped
•
terraform-aws-rke2 - this module incorporates the other modules to deploy RKE2 on AWS
◦ the needs of this module tend to drive the development of the others
◦ I am actively developing features for this module to meet the many different supported configurations of RKE2
•
terraform-rancher2-aws - deploys Rancher on RKE2 using the aws-rke2 module
◦ this module is in the early stages of development