GithubHelp home page GithubHelp logo

kafka_apis_operator_deployment's Introduction

Kafka_APIs_Operator_Deployment

This sample deployment project performs below tasks:

  • Create IntegrationServer Configuration CR for Truststore
  • Create IntegrationServer Configuration CR for Setdbparms
  • Create IntegrationServer Configuration CR for Policy project ( In this example Kafka Policy)
  • Create IntegrationServer Configuration CR for Server.conf.yaml
  • Reference these CRs into the IntegrationServer CRD (Kafka_APIs.yaml) and deploy it

The ConfigurationInputs folder contains the below files:

ConfigurationInputs/es-cert.p12

Either PKCS12 or JKS truststores can be configured. Since APIs contained in this project, connect to IBM EventStreams, this es-cert.p12 has been downloaded from IBM EventStreams. Content of this file is base64 encoded and seeded into truststore.yaml before creating the CR for truststore. This step is being done in jenkinsfile during deployment.

ConfigurationInputs/kafka_policy.zip

This is the zipped policy project that may contain one or more policies. In this case, it contains kafka_policy, which is referenced in Kafka Producer and Consumer nodes of the API flows. The kafka_policy project is also checked-into github for the reference: https://github.com/awasthan/kafka_policy.git Content of this file is base64 encoded and seeded into policyProject.yaml before creating the CR for policy project. This step is being done in jenkinsfile during deployment.

ConfigurationInputs/setdbparms.txt

This file contains the parameters for security identifiers. In this case it contains the password to open the truststore and password for the ace-consumer to conenct to Kafka cluster (EventStreams). Content of this file is base64 encoded and seeded into setdbparms.yaml before creating the CR for policy project. This step is being done in jenkinsfile during deployment.

ConfigurationInputs/server.conf.yaml

This file contains the configuration parameters for IntegrationServer. In this case, only below configuration has been overwritten under ResourceManagers.JVM

truststoreType: 'PKCS12' truststoreFile: '/home/aceuser/truststores/es-cert.p12' truststorePass: 'ace-server::truststorePass' Content of this file is base64 encoded and seeded into server.conf.yaml.yaml before creating the CR for policy project. This step is being done in jenkinsfile during deployment.

Below files inside ConfigurationResources folder are the CRDs for Truststore, Policy, Setdbparms and server.conf.yaml. Namespace and Content is being dynamically overwritten in jenkinsfile.

  • policyProject.yaml
  • server.conf.yaml
  • setdbparms.yaml
  • truststore.yaml

Below file is the CRD for IntegrationServer and referenced to the above four CRs:

  • Kafka_APIs_IS.yaml

The jenkinsfile performs below steps:

  • Checks-out the project
  • Pulls the BAR files for the mentioned two ACE APIs from the Nexus repository
  • Creates a custom image by baking in BAR files using the Dockerfile
  • Pushes the baked image to OCP registry
  • Creates the four CRs for the IntegrationServer
  • Creates the CR for the IntegrationServer

The script handles the install and upgrade of IntegrationServer.

kafka_apis_operator_deployment's People

Contributors

alaajarrah avatar awasthan avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.