KUBERNETES WITH OPEN BANK PROJECT(OBP)..
MAIN USE CASE OF KUBERNETES..
Here in this article we are going to see one of the use case of Kubernetes and that is Open Bank Project (OBP). Before that I would like to tell you about the article main points..
Benefits Of Kubernetes..
Open Bank Project..
Kubernetes with Open Bank Project..
Kubernetes is an open-source container-orchestration system for automating computer application deployment, scaling, and management. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation.
Kubernetes keeps track of your container applications that are deployed into the cloud. It restarts orphaned containers, shuts down containers when they’re not being used, and automatically provisions resources like memory, storage, and CPU when necessary.
Kubernetes defines a set of building blocks (“primitives”), which collectively provide mechanisms that deploy, maintain, and scale applications based on CPU, memory or custom metrics. Kubernetes is loosly coupled and extensible to meet different workloads. This extensibility is provided in large part by the Kubernetes API, which is used by internal components as well as extensions and containers that run on Kubernetes. The platform exerts its control over compute and storage resources by defining resources as Objects, which can then be managed as such.
The primary advantage of using Kubernetes in your environment, especially if you are optimizing app dev for the cloud, is that it gives you the platform to schedule and run containers on clusters of physical or virtual machines (VMs).What was once a radical vision is now reality: development and devops teams have become faster, more productive, and more agile because of Kubernetes. Software developers everywhere have rebuilt their software supply chain leveraging Docker containers, Kubernetes, and key operational tools like Sysdig Secure and Sysdig Monitor.
The purpose of kubernetes is to manage a containerized application in various types of Physical, virtual, and cloud environments. Google Kubernetes is a highly flexible container tool to deliver even complex applications, consistently. Applications run on clusters of hundreds to thousands of individual servers.
Google Kubernetes is highly flexible container tool to deliver even complex applications, consistently. Applications ‘run on clusters of hundreds to thousands of individual servers.”
Kubernetes Feature :
Automated rollouts and rollbacks :
Kubernetes progressively rolls out changes to your application or its configuration, while monitoring application health to ensure it doesn’t kill all your instances at the same time. If something goes wrong, Kubernetes will rollback the change for you. Take advantage of a growing ecosystem of deployment solutions.
Service discovery and load balancing :
No need to modify your application to use an unfamiliar service discovery mechanism. Kubernetes gives Pods their own IP addresses and a single DNS name for a set of Pods, and can load-balance across them.
Automatically mount the storage system of your choice, whether from local storage, a public cloud provider such as GCP or AWS, or a network storage system such as NFS, iSCSI, Gluster, Ceph, Cinder, or Flocker.
Secret and configuration management
Deploy and update secrets and application configuration without rebuilding your image and without exposing secrets in your stack configuration.
Automatic bin packing
Automatically places containers based on their resource requirements and other constraints, while not sacrificing availability. Mix critical and best-effort workloads in order to drive up utilization and save even more resources.
Restarts containers that fail, replaces and reschedules containers when nodes die, kills containers that don’t respond to your user-defined health check, and doesn’t advertise them to clients until they are ready to serve.
Benefits of Kubernetes :
There are a lot of options when it comes to container management, both open source and commercial. Kubernetes, however, is the most widely used solution and has surged in popularity in the past several years.
- Control and automate deployments and updates
- Save money by optimizing infrastructural resources thanks to the more efficient use of hardware
- Orchestrate containers on multiple hosts
- Solve many common problems deriving by the proliferation of containers by organizing them in “pods” .
- Test and auto-correction of applications.
- Make better use of hardware to maximize resources needed to run your enterprise apps.
- Mount and add storage to run stateful apps.
- Scale containerized applications and their resources on the fly.
- Declaratively manage services, which guarantees the deployed applications are always running the way you intended them to run.
- Health-check and self-heal your apps with autoplacement, autorestart, autoreplication, and autoscaling.
Now let’s move toward use case of kubernetes that is open bank project before that first understand about what is open bank project..
Open Bank Project (OBP) :
Open Bank Project is an open-code API and an app store that allows financial institutions to make use of the talent and development of third parties to improve their customer products and services.
The project was founded by Simon Redfern, CEO of TESOBE, the German software company headquartered in Berlin and the embryo of the Open Bank Project. They specialize in developing app programming interfaces in the Scala and Python languages.
This API provides a uniform technical interface for all the programmers and a secure space for the creation of new services at the top end of each bank or financial institution. It might be thought that this scenario would vastly increase insecurity and the lack of customer privacy, but this is never the case:
● The process of registering users is always done from the bank side, so it always has all the bank’s security requirements. Neither the API nor the apps have access to the username and the password.
● Because the API is open-code, security is vastly increased for two reasons: the first is that errors can be resolved much earlier and more quickly because there are far more eyes and more developers using the interface. And second, there’s no dependence on a provider.
As noted in the project itself, here are a some of the benefits of its API and its app store:
● Wide range of web and mobile apps for its customers.
● Reduction of maintenance and integration costs.
● More control and security over documents.
● Makes use of the talent and the community of developers. In this case, there are several elements that programmers may find very attractive: integrations in bank accounts via an API REST for the creation of new products, all under a widely-used security protocol such as OAuth, apart from traditional banking criteria, and as platform for showcasing their personal talent to third parties.
Open Bank Project fulfills an even more important mission, namely as a value input to an even higher concept: the Open Banking Standard. In this new process of banking transformation there are two important milestones:
1) September 2014, when the British Treasury Department (HM Treasury) published a report explaining how app programming interfaces could be a good tool for using shared and open data without compromising security or privacy.
2) And March 2016, when the British Open Banking Working Group (OBWG) finally published the document on the Open Banking Standard, which defines the cohabitation space between the data’s owners and users to create products, services and apps.
The banks and building societies who currently offer Open Banking are:
- Allied Irish Bank.
- Arbuthnot Latham & Co Limited.
- Bank of Ireland UK.
- Bank of Scotland.
- BFC Bank.
- C Hoare & Co.
- Clydesdale Bank.
Open Banking requires all financial institutions [deposit taking institutions] to open up customer and/or payment data to third party providers. Open banking breaks up the monopolies of financial services and allows more players to enter the market
Kubernetes With Open Bank Project (OBP) :
Kubernetes abstracts compute resources in a cleanly defined way. After all, most systems at their core ultimately bind to a port and send data across a binded port; It’s unkind to reduce software solutions to this level, but that’s the basic abstraction. This is also important to understanding how to bring any application to Kubernetes, by thinking about your application in terms of services and the data it needs to support those services you can begin to split your application into the component parts needed describe desired state of your service.
Reasons to use Kubernetes to deploy Open Bank Project :
- It makes deployment quicker
- The deployment is self documenting (to a certain extent)
Kubernetes offers a further abstraction by allowing you to express the services which your software provides. This might be a simple database service or it might be the APIs that you’re offering to your customers. For example, the Open Bank Project offers over 200 apis specific to the banking industry, and by bringing Open Bank project to Kubernetes, this increases the adoption possibilities of these Open Banking APIs.
We are already starting to see the benefits of Enterprise partners using the Kubernetes solution as a faster way to deploy and become familiar with the Open Bank Project and it’s APIs. It makes deployment quicker, repeatable, and to a certain extent the deployment is self documenting.
Scaling with Kubernetes :
Just like any software system, banking systems need to scale depending on load rising and falling over a given period. For banking software this is especially important for managing cost and customer experience. Of course, managing cost is a major influence for any of these systems and the ability to provision only the resources that are required has been the goal of cloud computing systems since its inception. Scaling back these nodes automatically brings the system cost back down.
With Kubernetes, we can scale up for deployment based on CPU utilisation. this takes advantage of the auto scanning capabilities built into keeping it is made possible by cloud providers implementations. Thus, for example allowances to deploy more API instances as the load increases and scale back down when it decreases. This allows cost to be managed as well, only deploying the resources which are required. it’s also possible to account for spikes in traffic but having a reserved number of nodes always available. This, for example is useful as a buffer for responding to a spike in traffic and increasing nodes just before the system reaches capacity.
Kubernetes Storing Persistent Data :
Then there’s data. People care if you lose their data, especially bank related data.
Kubernetes has the concept of PersistentVolumes, and PersistentVolumeclaims. Blob storage, Network filesystem providers have written drivers conforming to the Kubernetes PersistentVolume specification.
Persistent volumes often reside outside of the kubernetes deployment, this means if you delete your deployment or if your pods fail you can safely be assured that your persistent data is still there. Implementations vary however so do check that your cloud provider operates in this way as you may need to change settings to make sure that the persistent volumes are not deleted when your deployments are also deleted. Persistent volumes are tied to PersistentVolumeclaims, this is another way by which persistent volumes may get deleted depending on your cloud configuration. The best day to durability of course check this configuration and verify. Remember, if you don’t have a tested backup , you don’t have a backup!
That set… this all about kubernetes and open bank project..
If you like this then clap and share it … :)
For knowing more about me connect with me in LinkedIn..
Pritee Dharme - Dr. Ashok Gujar Technical Institute's Dr.Daulatrao Aher College of Engineering…
View Pritee Dharme's profile on LinkedIn, the world's largest professional community. Pritee's education is listed on…
Thank you for visiting this article…!!