Coder Social home page Coder Social logo

marshopy / apicurio-registry-operator Goto Github PK

View Code? Open in Web Editor NEW

This project forked from apicurio/apicurio-registry-operator

0.0 0.0 0.0 1.76 MB

The Kubernetes Operator for Apicurio Registry.

License: Apache License 2.0

Shell 0.93% Dockerfile 0.67% Go 75.78% Makefile 3.07% HTML 19.56%

apicurio-registry-operator's Introduction

Apicurio Registry Operator

Apicurio Registry Operator provides a quick and easy way to deploy and manage Apicurio Registry on Kubernetes or OpenShift.

Deployment Requirements

The Apicurio Registry Operator supports the following platform versions:

Table 1. Apicurio Registry Operator platforms
Platform Required version

Kubernetes

1.19+

OpenShift

4.6+

Build Requirements

  • Docker

  • go v1.14+ (with export GO111MODULE='on', $GOPATH and $GOROOT)

  • Operator SDK v1.4+

  • A running Kubernetes (Minikube) or OpenShift (Minishift) cluster with system admin access

Quickstart

This section explains how to quickly install development version of the Apicurio Registry Operator on the command line.

Note
The recommended installation option for non-development environments is OperatorHub.io. The recommended storage options are SQL or Kafka. Please visit the latest Apicurio Registry and Operator documentation.
Procedure
  1. Prepare your Kubernetes or OpenShift cluster. If you are using Minikube, run:

    minikube addons enable ingress
  2. Build the latest distribution bundle:

    make dist
    Note
    Run make without any parameters to get a help message.
  3. Follow the instructions in ./dist/README.adoc file.

Build and Deploy Apicurio Registry Operator

This section explains how to build Apicurio Registry Operator on your own and deploy it for testing and development.

Procedure
  1. Prepare your Kubernetes or OpenShift cluster. If you are using Minikube, run:

    minikube addons enable ingress
    Note
    Run export CLIENT="oc" if you are deploying to OpenShift.
  2. Choose a namespace where the Operator will be deployed:

    export NAMESPACE="apicurio-registry-operator-namespace"
    kubectl create namespace "$NAMESPACE"
  3. Choose a Docker registry where to push the operator images that you build, e.g. quay.io/foo:

    export OPERATOR_IMAGE_REPOSITORY="quay.io/foo"
  4. The following command will build the operator image, push it into your registry, and deploy it the selected namespace in your cluster.

    make build docker-push deploy
  5. To remove the operator from your cluster, run:

    make undeploy

Deploy Apicurio Registry

After the Apicurio Registry Operator has been deployed, it can deploy an Apicurio Registry instance.

Procedure
  1. To create a new Apicurio Registry deployment, the fastest way is to use one of the example ApicurioRegistry custom resources:

    cat config/examples/resources/apicurioregistry_mem_cr.yaml | kubectl apply -f - -n "$NAMESPACE"
  2. Optionally, build the latest distribution bundle that contains additional examples:

    make dist
  3. Verify that your Apicurio Registry deployment is healthy (for Minikube). Find out the hostname of the deployed Apicurio Registry:

    kubectl get ingress -n "$NAMESPACE"
    export HOSTNAME="..."
    ./hack/modify_etc_hosts.sh "$HOSTNAME"

    and issue a request to the metrics endpoint:

    curl "http://$HOSTNAME/health"
    Note
    The in-memory deployment is not suitable for production. We recommend using SQL or Kafka persistence options for that. See the documentation for more information.

Notes

Create an issue on GitHub if you find any problems.

You can find more information on the Apicurio website.

apicurio-registry-operator's People

Contributors

jsenko avatar smccarthy-ie avatar ericwittmann avatar redhathameed avatar akoserwal avatar jjjjjones avatar schen1 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.