Development

Can Oracle catch up in the era of the developer focus?

TL;DR

  • Oracle is a distant competitor compared to other major cloud vendors, and to close the gap, they will need to get closer to the application layer.
  • While OKE is a strong offer, a Kubernetes cluster is not enough to increase the adoption and usage of the service.
  • Combined with an application-layer solution, OKE can become a strong competitor and deliver what several DevOps and development teams are searching for or trying to build.

Background

Oracle, Developer, Kubernetes, and Microservices.

Does this combination of words sound somewhat new to you as well?

It may be just me, but having the opportunity to work on both sides, software development and system administration, the combination above seemed somewhat new or different to me.

I always saw Oracle as something that would be managed and owned by the System Administrators. Technologies such as the database, ERPs, finance systems, and more which would take quite a lot of effort and cost to implement and maintain.

What changed over time is that technologies like Kubernetes and support to a microservice architecture have been, for some time, explored and offered by the different cloud providers. The easier it is for their users to deploy applications using their services, the more adoption they see. I’m seeing Oracle trying to catch up on this race with services like OKE (Oracle Kubernetes Engine).

Seeing Oracle and OKE quite a bit around, I decided to take it for a spin. 

Long story short: I was surprised by the quality of the OKE service, how easy it was to spin up a cluster, connect to it, and use it. And just to clarify: No, I didn’t need to hire a consulting company for 6 months to have my Oracle Kubernetes (OKE) cluster ready. Good move here, Oracle, good move 🙂 

But a Kubernetes cluster by itself is not an “application platform.” For teams to really use it, you need to integrate monitoring, policies, application observability, integration into incident management, pipelines, and more. Not to mention the challenge of having developers use Kubernetes and support their applications. 

To be clear, that is not an Oracle, or OKE, specific challenge, but a challenge around Kubernetes in general and that you as a DevOps engineer often have to deal with.

So with my OKE cluster ready, the question was: If Oracle wants to get closer to the DevOps and development engineers and enable teams to deliver and manage applications faster and better, how can we get OKE to that level?

That’s where Shipa comes in.

Shipa is an application platform that helps teams deploy, manage, and secure applications in modern infrastructures, such as OKE. Integrated with your DevOps toolchain (pipelines, monitoring, IaC, and more), Shipa can enable developers and DevOps teams to quickly adopt OKE and deliver, manage, and secure applications better.

In the example below, we will show you how to get OKE and Shipa connected, define a basic set of policies, and deploy an application. All without dealing with Kubernetes-related complexities.

Requirements

  • An Oracle OKE cluster running. Details on how to create one here
  • A Shipa Cloud account. You can create a free account here

Delivering the Application Platform

Application Policies

If you want to provide a strong application platform for the different development teams inside your organization, the best place to start is by defining policies in a simple and scalable way.

Most solutions available today focus on the underlying infrastructure. It requires you to spend a good amount of time learning the underlying infrastructure and building specific policies for specific clusters and versions. If a cluster API version changes, you are back to updating your policies again. 

This approach also causes complexity and, at scale, adds a lot of effort to your daily tasks as you onboard more developers, applications, and clusters.

This is how you can define policies effectively, quickly, and in a scalable way with Shipa and OKE.

Shipa uses policy frameworks to connect to your OKE clusters and to enforce policies to applications deployed by developers. Once you log into your Shipa Cloud dashboard, you can click on Frameworks on the left menu and then on the “Create Framework” option.

These policy frameworks enable you to define and enforce policies across networking, scalability, registry control, and more. Select “Deploy applications with reasonable defaults” and click Next, to keep this simple.

You can enter the policy name on the next screen and select the default values available for Plan and Teams.

Now click on Create.

Connecting to OKE

You can now connect your policy framework to your OKE cluster. Click on the Clusters option on your left menu and “Add Cluster”.

Here you can enter:

  • The name of the OKE cluster 
  • The policy framework you created previously

Clicking on Next will show you the fields to enter the OKE details that Shipa will need to connect to it:

You can find detailed instructions on how to get the information above here, or you can download and run this script, which will display the information above.

Once you enter the information, click on Next.

You don’t need to enter anything here since you are using a brand new OKE cluster. Just click on Create.

Shipa will then:

  • Connect to your cluster
  • Create a namespace dedicated to the policy framework you are connecting to this cluster
  • Install and configure NGNIX to be used as the ingress for applications

Deploying an Application

Your goal now is to give developers an application portal they can use to deploy, manage, and support their applications, reducing the burden on the DevOps team. This step will show you the experience your developers will have when using the combined Shipa and OKE solution.

Just click on the Applications options in your left menu and “Create App”. Enter the name of the application, select the policy you created previously, the team available, and click on Create:

Here, you created an application and assigned it to a policy you created before. Click on the application name now to see the application details page.

On the top menu, you will see the deploy option. Click on it:

The Deploy option will show you the following:

Although you have different deployment options, just keep “Public registry” as the Deployment source and enter the following image name:

  • docker.io/shipasoftware/bulletinboard:1.0

Your deployment will start and finish in a few seconds by clicking on the Submit button. 

You will see that Shipa will automatically configure an endpoint for your application where you can access it. Beyond that, you can now see application performance, dependencies, setup service-to-service communication, and more without dealing with the underlying Kubernetes, or OKE, complexities.

Can you just imagine how much work this can save the DevOps team and enable developer self-service?

Conclusion

By combining both solutions, developers and DevOps teams can rapidly adopt OKE, deploy applications faster, and keep the focus and experience at the application level.

A combined solution also enables Oracle to increase the adoption of its OKE offering. 

By leveraging Shipa’s connection into different tools such as ArgoCD, Terraform, Pulumi, and others, Oracle and OKE can be at the center of their customer’s application stack of choice, helping to spice up the competitive landscape.