Our second blog in the FlexDeploy and Oracle Cloud Series (first post here) is about FlexDeploy’s new Database Cloud and Java Cloud plugins; what they are, how you use them, and why they matter.
Database Cloud Service (DBCS) and Java Cloud Service (JCS) are cloud offerings from Oracle which allow customers to treat Oracle Database and Weblogic Server as a service, and turn over much of the administration to Oracle. The DBCS and JCS plugins for FlexDeploy leverage the Rest APIs exposed by Oracle to make provisioning and administrating the cloud services more manageable and repeatable. The use of FlexDeploy with these cloud plugins improves utilization and lowers cost of environment resources, and increases productivity.
Let’s look at how you can reap these benefits.
Provisioning Instances
The DBCS and JCS plugins have a number of operations focused on provisioning and managing infrastructure. These plugins manage the infrastructure resources running underneath the Oracle Database and Weblogic Servers, as well as the Oracle Database and Weblogic themselves. You can see the operations for both plugins below.
The DBCS and JCS plugins both have a buildInstance operation, which retrieves the property file from the Source Control Management System. This property file describes the details of the resources that are going to be created. The image below provides an example of the properties in the property file.
Both plugins also have a createInstance operation to provision the instance in the cloud. As you can see above, the plugins provide many other operations for managing the Database and Java Cloud instances once they have been created. All of these plugin operations make the process as automated and stress-free as possible.
Provisioning and Managing Resources
One requirement of working with the Oracle Cloud PaaS is provisioning storage containers required by the PaaS services. For example, best practice is to have a backup container for each instance. Because Oracle does not provide a GUI for managing storage containers, the user is required to use cURL commands to provision the storage container. Rather than requiring a user to use cURL command, FlexDeploy provides users with two options.
- Users can either allow FlexDeploy to transparently manage backup containers during instance creation (one is created per JCS, DBCS, and SOA Cloud Instance.)
- Users can create their own and simply send in the name of the backup container as part of the build artifact.
Controls, Visibility, Repeatability
FlexDeploy brings a myriad of other benefits to working with the Oracle Cloud ecosystem.
- FlexDeploy retains the artifacts used when provisioning Database Cloud and Java Cloud instances, so you can look and see exactly what options were chosen at creation time.
- The process is more repeatable as the same build instance property file can be used for as many instances as you like, allowing just the name to change between each separate provisioning.
- FlexDeploy allows for the instances to be created with less data-entry repetition. If you have already deployed some instances from the GUI, you probably noticed that you typed your identity domain, user name, and password several times to setup just one instance.
- With FlexDeploy, you have the option of sending separate credential sets for your storage container, but they are assumed to be the same as the instance credentials if backup container credentials are not specified. Talk about time savings and typo prevention!
Time and Money Savings
Perhaps that most exciting benefit of combining FlexDeploy and Oracle Cloud Services is the ability to add, remove, and scale managed servers, and to start and stop the instances that you create. This can be done in a workflow (a set of automated steps you define in FlexDeploy) with software deployment and testing operations! For example, you could set up a workflow which would start a database instance, deploy the latest version of your application’s SQL to it, start Weblogic Server and deploy the latest alpha or beta EAR to it, and run a suite of Selenium tests. The workflow could run load tests while adding, removing, and scaling managed servers to determine the sweet spot for hardware efficiency. After the load testing results are collected, the workflow could reduce the managed server count again, scale the shape of each managed server, and shut down the instances if desired. Not only do these workflows save you time but starting and stopping instances as you need them will save money.
Conclusion
Hopefully this post gave you some insights into the Oracle Cloud PaaS offerings, and how FlexDeploy’s new plugins for DBS and JCS helps automate the provisioning and management of the PaaS services. With these plugins, customers are able to provision and manage PaaS resources with FlexDeploy right out of the box, reducing time spent working in the plumbing, and increasing the amount of time that can be spent working on complex IT issues and opportunities.
In our next blog post, we will cover the SOA Cloud PaaS and the FlexDeploy SOA Cloud Plugin.