Skip to content

Latest commit

 

History

History
98 lines (78 loc) · 6.93 KB

README.md

File metadata and controls

98 lines (78 loc) · 6.93 KB

K2HDKC DBaaS

License GitHub forks GitHub stars GitHub issues

About K2HDKC DBaaS

K2HDKC DBaaS

K2HDKC DBaaS Overview

K2HDKC DBaaS (DataBase as a Service of K2HDKC) is a basic system that provides K2HDKC(K2Hash based Distributed Kvs Cluster) as a service.
K2HDKC DBaaS (Database as a Service for K2HDKC) is a Database as a Service that uses K2HR3 and works with OpenStack and kubernetes to build a K2HDKC(K2Hash based Distributed Kvs Cluster) Cluster for distributed KVS.
Users can easily launch, scale, back up, and restore K2HDKC clusters as K2HDKC DBaaS.

Detailed documentation for K2HDKC DBaaS can be found here.

Background

Yahoo! JAPAN publishes some products as AntPickax as Open Source Software(OSS).
We planned to provide one of them, K2HDKC(K2Hash based Distributed Kvs Cluster) as DBaaS(Database as a Service) so that anyone can easily use it.
And the publicly available K2HR3(K2Hdkc based Resource and Roles and policy Rules) offers enough features to make this happen.
We have built DBaaS(Database as a Service) in conjunction with OpenStack and kubernetes, centering on this K2HR3(K2Hdkc based Resource and Roles and policy Rules).

Components for K2HKDC DBaaS system

K2HDKC DBaaS (Database as a Service for K2HDKC) is configured using the following products which is provided by AntPickax.

  • K2HDKC - K2Hash based Distributed Kvs Cluster
    This product is distributed KVS(Key Value Store) clustering system and the core product of K2HDKC DBaaS.
  • CHMPX - Consistent Hashing Mq inProcess data eXchange
    This product is communication middleware over the network for sending binary data and an important component responsible for K2HDKC communication.
  • K2HR3 - K2Hdkc based Resource and Roles and policy Rules
    This is extended RBAC (Role Based Access Control) system, and this system manages the configuration of the K2HDKC cluster as a backend for K2HDKC DBaaS.

K2HKDC DBaaS types

There are four types of DBaaS (Database as a Service) provided by K2HDKC DBaaS (Database as a Service for K2HDKC) as shown below.
We provide two K2HDKC DBaaS types that cooperate with OpenStack and two types that cooperate with kubernetes.

With Trove(Trove is Database as a Service for OpenStack)

This is DBaaS(Database as a Service) using Trove which is a product of OpenStack.
It incorporates K2HDKC (Distributed KVS) as one of Trove’s databases to realize DBaaS(Database as a Service).
The source code is k2hdkc_dbaas_trove.

K2HDKC DBaaS CLI(Command Line Interface) for OpenStack

If you have an existing OpenStack environment, this K2HDKC DBaaS CLI(Command Line Interface) allows you to implement DBaaS(Database as a Service) without any changes.
The source code is k2hdkc_dbaas_cli.

K2HDKC DBaaS on kubernetes CLI(Command Line Interface)

If you are using kubernetes cluster or trial environment such as minikube, this K2HDKC DBaaS on kubernetes CLI(Command Line Interface) allows you to implement DBaaS(Database as a Service) without any changes.
The source code is k2hdkc_dbaas_k8s_cli.

K2HDKC Helm Chart

If you are using kubernetes cluster or trial environment such as minikube, you can install(build) DBaaS(Database as a Service) by using Helm(The package manager for Kubernetes) with K2HDKC Helm Chart.
The source code is k2hdkc_helm_chart.

Documents

K2HDKC DBaaS Document
Github wiki page

About k2hdkc Document
About chmpx Document
About k2hr3 Document

About AntPickax

Repositories

k2hdkc
chmpx
k2hdkc_dbaas_trove
k2hdkc_dbaas_cli
k2hdkc_dbaas_k8s_cli
k2hdkc_dbaas_override_conf
k2hr3
k2hr3_app
k2hr3_cli
k2hr3_api
k2hr3_get_resource

Packages

k2hdkc(packagecloud.io)
chmpx(packagecloud.io)
k2hdkc-trove(Docker image)
k2hdkc-trove-backup(Docker image)
k2hdkc-dbaas-cli(packagecloud.io)
k2hdkc-dbaas-k8s-cli(packagecloud.io)
k2hdkc-dbaas-override-conf(packagecloud.io)
k2hr3-cli(packagecloud.io)
k2hr3-get-resource(packagecloud.io)
k2hr3-app(npm packages)
k2hr3-api(npm packages)

License

This software is released under the 2.0 version of the Apache License, see the license file.

AntPickax

K2HDKC DBaaS is one of AntPickax products.

Copyright(C) 2020 Yahoo Japan Corporation.