Coder Social home page Coder Social logo

eleanorrigby / mariadb-broker Goto Github PK

View Code? Open in Web Editor NEW

This project forked from prydonius/mariadb-broker

0.0 2.0 0.0 16.45 MB

A MariaDB Helm Chart Service Broker for the Kubernetes Service Catalog

License: MIT License

Smarty 8.10% Go 76.22% Shell 15.67%

mariadb-broker's Introduction

MariaDB Broker

This is an implementation of a Service Broker that uses Helm to provision instances of MariaDB. This is a proof-of-concept for the Kubernetes Service Catalog, and should not be used in production.

Learn more about the Kubernetes Service Catalog

Prerequisites

  1. Kubernetes cluster (minikube)
  2. Helm 2.x
  3. Service Catalog API - follow the walkthrough

Installing the Broker

The MariaDB Service Broker can be installed using the Helm chart in this repository.

$ git clone https://github.com/prydonius/mariadb-broker.git
$ cd mariadb-broker
$ helm install --name mariadb-broker --namespace mariadb-broker charts/mariadb-broker

To register the Broker with the Service Catalog, create the Broker object:

$ kubectl --context service-catalog create -f examples/mariadb-broker.yaml

If the Broker was successfully registered, the mariadb ServiceClass will now be available in the catalog:

$ kubectl --context service-catalog get serviceclasses
NAME      KIND
mariadb   ServiceClass.v1alpha1.servicecatalog.k8s.io

Usage

Create the Instance object

$ kubectl --context service-catalog create -f examples/mariadb-instance.yaml

This will result in the installation of a new MariaDB chart:

$ helm list
NAME                                  	REVISION	UPDATED                 	STATUS  	CHART               	NAMESPACE
i-3e0e9973-a072-49ba-8308-19568e7f4669	1       	Sat May 13 17:28:35 2017	DEPLOYED	mariadb-0.6.1       	3e0e9973-a072-49ba-8308-19568e7f4669

Create a Binding to fetch credentials

$ kubectl --context service-catalog create -f examples/mariadb-binding.yaml

A secret called mariadb-instance-credentials will be created containing the connection details for this MariaDB instance.

$ kubectl get secret mariadb-instance-credentials -o yaml

Consume connection details in an application

examples/wordpress.yaml is an example of an application definition consuming the database credentials from the secret generated by the MariaDB Broker.

$ kubectl create -f examples/wordpress.yaml

Access the Service via the LoadBalancer IP or NodePort in your browser.

WordPress using MariaDB from Service Catalog

mariadb-broker's People

Contributors

prydonius avatar

Watchers

James Cloos avatar Tushar Aggarwal 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.