The usual understanding of the term "cloud native application" means very often a light-weight, stateless app build with 12-factor principles in mind, which runs on the Kubernetes cluster in the cloud. This kind of architecture fits perfectly the way Kubernetes operates as it can freely scale, distribute and manage all identical copies of the app among potentially hundreds of physical nodes. Handling the state of the system is either outsourced to external components (e.g. out-of-cluster relational databases) or managed by in-cluster data stores powered by native Kubernetes artefacts like StatefulSet and PersistenceVolume. The latter approach works pretty well with modern distributed key-value stores like Casandra, but there are still tons of use cases where the power of proven, battle-tested relational database (such as Oracle DB) makes much more sense, especially combined with the stateless business logic deployed in Kubernetes. However having the database outside of the cluster creates a discrepancy in a way we provision and manage application components: the Kubernetes part is nicely described using standard YAML config files, while the database still needs to be separately created and administered using propriety vendor tools. This could be further generalized for all kind of external services which need to be provisioned and managed as a part of Kubernetes deployments via familiar YAML resources. Fortunately this problem has been already addressed: enter specification.
OSB (don't confuse it with Oracle Service Bus!) is designed to serve as an intermediate between Kubernetes application and any external services (database, messaging, etc), especially those provided by cloud platforms. It encloses the lifecycle of an k8s app with external service needed for the app to run, in a form of defining additional resources which join the existing family of Kubernetes YAML artifacts (like deployments, services, etc). Service broker itself is an optional component installed as a Helm chart in the cluster which adds service classes, plans, instances and bindings as k8s resources - this way we can keep the service provisioning together with core app configuration in one git repository.
offers the full OSB implementation in the and currently allows creating service instances and bindings for its Autonomous Transaction Processing, Autonomous Data Warehouse, storage, and streaming services (more to come). The power of open service broker shines especially with ATP which is fully automated, "self-driving" database service in the cloud. In this webcast we would like to showcase this particular use case (OKE + ATP) as we believe that combining the most popular and powerful Oracle Database with most commonly used microservice platform (Kubernetes) delivers the highest possible value for developers and architects.
Lukasz Romaszewski – EMEA Cloud Transformation Consultant.
This FREE online LIVE eSeminar will be delivered over the Web. Registrations received less than 24 hours prior to start time may not receive confirmation to attend.
Date: Thursday, September 26th , 10 am CEST (9am BST/11am EEST)