Description
As the new Azure subscription is available, KernelCI infrastructure should be moved there. It's also a good moment to review the functionality of ansible playbooks and terraform configs.
Items to be migrated
VMs
Machines:
- Staging (staging.kernelci.org)
- Production (kernelci.org)
- Jenkins nodes
- staging: kernelci7, kernelci9, kernelci-jenkins-usa
- production: kernelci1, kernelci6, kernelci-jenkins-usa
- Monitoring
- Sandbox (kernelci2)
It may be a good idea to start moving process from kernelci2 which is a sandbox machine with a relatively low impact on KernelCI stability and quality of service.
There are repositories with ansible playbooks created for backend, frontend and Jenkins nodes configuration.
During the update it may be worth checking if the playbooks are still functional.
It may be worth trying if it's possible to create Debian based VMs for Jenkins nodes and configure them using https://github.com/kernelci/builder-config2.
Fixing possible errors is not the aim of this task, so if a significant amount of time is needed to make ansible playbooks functional the VMs should be migrated recreating them from images.
Kubernetes build cluster
There are terraform configs created for deploying our Kubernetes clusters to Azure. It's a good idea to use them to test their functionality and recreate the cluster with new subscription. The configs may need slight adjustments for current configuration and storage space.
Firewall settings
Firewall settings need to be moved from the current Azure subscription to the new one.
Tasks
- Migrate kernelci2
- Migrate other VMs
- Staging Migration to new Azure Subscription #194
- Migrate Production VM
- Migrate Kubernetes clusters
- Migrate firewall settings