Configure and manage Oracle Cloud Infrastructure components with Puppet
As many Oracle customers plan their migration to Oracle Cloud Infrastructure or OCI, proper tools should be considered in order to make a smooth transition. We’re excited to share that Enterprise Modules, a key contributor to the Puppet ecosystem, has recently created a module that extends the Puppet language to contain types needed to create and manage the lifecycle of objects within your Oracle Cloud Infrastructure. Although this is traditionally the domain of Terraform scripts, being able to define and manage the OCI infrastructure with Puppet offers great value to customers.
While many organizations today use Terraform to provision Oracle cloud resources, when it comes to ongoing management of resources, a solution for continuous integration should be considered. That’s where Puppet can help. With Puppet you can:
- Integrate cloud resources into your existing infrastructure, and manage everything with one tool.
- Use existing Hiera data to configure parts of your OCI infrastructure.
- Have a tighter integration between OCI configuration in general and the configuration management on your systems.
Accelerating migration for customers
By Puppetizing their OCI components, a health insurance service provider accelerated their move to OCI. We’ve outlined their journey below:
The customer provides services for health insurance companies in the Netherlands and on the Netherlands Antilles. They had two challenges. First, their on-premise hardware needed a life cycle refresh, and second, they needed to increase the speed of the software delivery pipeline. They decided to split this into two projects, starting with improving the speed and consistency of their delivery pipeline.
To run the application functionality, they needed five to six systems and a central database. These systems together they call a ‘silo’. Each customer has multiple silos, so they were looking at controlled delivery of more than 120 systems. The stack needed for the application contains multiple Oracle databases and multiple WebLogic domains with other Fusion Middleware components.
Start by gaining control
The first project was ensuring consistent and fast delivery of the silos. This was done by Puppetizing the current stack. For the Oracle database and the WebLogic software and configuration, they used the Puppet modules from Enterprise Modules. This allowed them to build a basic setup for a silo within a couple of weeks.
Moving to Oracle Cloud
The customer decided that they’d rather move to the cloud than invest in new on-premises hardware. After investigation, they chose OCI. Currently, they are in a Proof of Concept (PoC) to see if the OCI setup is delivering the required performance. For the PoC, they are using an ExaData based database as their main database. Also, they decided to use Terraform to define the OCI infrastructure and use Puppet code to manage everything on the OCI machines.
Status today and looking to the future
In the future, the customer plans to move some of the databases to DBaas. But for the time being, the plan is to move the current infrastructure as-is (e.g. lift and shift) to OCI. The current Puppet code proved to be instrumental in this move. With only minimal changes, they are able to run the current Puppet code on OCI systems. Within a day after start, they were running an application silo in the OCI.
We would love to hear from you about how you are managing your OCI infrastructure today and discuss how we can help. Reach out on the Puppet Community Slack.
- Download the oci_config module from the Puppet Forge
- Read the Enterprise Modules guide to installing the oci_config Puppet module
- Follow the guide to deploy an Oracle 19 database
- Check out other Puppet modules available from Enterprise Modules
- Learn how Puppet Enterprise can help you move to the cloud