homeblogconfigure and manage oracle cloud infrastructure components with puppet

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.

The environment

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.

Learn more