Deploying Uyuni test infrastructure with Sumaform
How to use IaC to deploy test environments for Uyuni project
My name is Ricardo Mateus and I have been working at SUSE and UYUNI project since July 2019 as Senior Software Engineer. During my time with SUSE Uyuni community member, I have dedicated most of my time to SUMAFORM, a terraform based opensource project. I started my professional path in 2010 working as a fullstack developer for the Portuguese Financial Minister associated with several critical system. During my path also worked for lottery insurance platform and betting data collecting system. Father of two, enjoy learning new technologies and sharing them with everyone.
Uyuni is a configuration and infrastructure management tool that saves time and headaches when managing machines. System administrators using Uyuni Server can deploy and manage a considerable variety of clients, such as openSUSE Leap, CentOS, ubuntu, SLES, etc. In addition to Uyuni server infrastructure can also be composed of other components like Uyuni Proxies, monitoring servers, image build hosts, etc.
Uyuni server can be deployed standalone, or include proxies in case you need to manage a large scale infrastructure. You can also configure a monitoring server with a number of attached clients. In all, Uyuni offers great flexibility on how it can be setup.
This project flexibility is a challenge since during the development process engineering and QA teams need to replicate these different infrastructures and make sure everything works together as expected. We needed a way to quickly deploy different setups for debugging or test automation.
Sumaform  comes to the rescue. With sumaform we can quickly deploy fully functional uyuni setups with all the needed machines and associated configurations. Sumaform provides Uyuni-specific Terraform modules that leverage JeOS images and Salt states to deliver a complete solution: from VM creation to installation and to configuration.
When defining terraform modules in sumaform we also developed a notion of backend independent modules which allow us to deploy the same infrastructure to different back-ends with minimal effort, like for example: - Libvirt - AWS
 https://github.com/uyuni-project/sumaform/ Based @Lisbon (WEST -> UTC+1 )
- 2020 October 16 - 12:30
- 30 min
- Room 2
- Open Source