Skip to content

ansible role for deploy capi mgmt cluster for magnum capi driver#1465

Open
puni4220 wants to merge 2 commits intorackerlabs:mainfrom
puni4220:capi_mgmt_cluster
Open

ansible role for deploy capi mgmt cluster for magnum capi driver#1465
puni4220 wants to merge 2 commits intorackerlabs:mainfrom
puni4220:capi_mgmt_cluster

Conversation

@puni4220
Copy link
Copy Markdown
Contributor

with the introduction of capi driver for magnum it is required that a capi mgmt cluster be created to be integrated with magnum to create workload clusters

The capi mgmt cluster runs the capi components that deploy the workload clusters; the capi components themselves run with a separate kubernetes cluster of their own

This kubernetes cluster can be deployed anywhere and can be deployed with any tool; the approach that was decided upon was:

  1. The capi mgmt cluster would be created on instances running on the base genestack cloud
  2. The capi mgmt cluster would be running inside a project created within the service domain
  3. The tool that would be used the deploy the base kubernetes cluster for capi mgmt components would be kubespray

The setup of mgmt cluster for capi driver involves several steps from creating the infra on the base genestack cloud to bootstrapping and installing the kubernetes cluster and then finally installing the required capi components; one would also need to create a octavia loadbalancer for the api for the mgmt cluster

This ansible role automates these tasks:

  1. Creates the virtual infra required for the capi mgmt including project, network, subnets, routers, flavors, keypair, image, volumes, loadbalancers and others
  2. Creates the necessary overrides for customizing the capi mgmt cluster
  3. Copies the required resources like yaml overrides for kubespray and other basic configs including enabling dns forwards for coredns if required
  4. install the kubernetes cluster and configures etcd backups and copies the kubeconfig from the capi mgmt cluster

There is a README file included in the role which lists the requirements for the role and how the the playbook needs to be run to install the mgmt cluster

@puni4220
Copy link
Copy Markdown
Contributor Author

The suggested changes have been pushed into the role; as per the recommendations the role now deploys the mgmt cluster on ubuntu 24 with kubernetes version being 1.35.1 which is close to the most recent version at this time; the role also configures etcd backup on a separate volume that is attached to the bootstrap node in the cluster

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.

1 participant