Skip to content
svaroqui edited this page Jan 31, 2013 · 89 revisions

Welcome to the scrambledb wiki!

The primary objective of SrambleDB is to provide a clustered database abstraction layer driving with a collection of open source products, managing, deploying, provisioning, hight availability, automatic and manual routing of SQL queries .

Scramble DB Architecture Overview

What happen if i don't connect a local instance to the cluster ?

  • The failure of an instance in the cloud is fine and the services take over
  • Command like starting, creating instances, auto provisionning will be disable

This is set like this for security reasons, the running cloud instances does not have a clue about the your cloud password thos information stay in your office or at home. Still it is possible to run multiple private instances for no single point of failure in your office.

Warning : the Public Keys need to be propagated

Version 0.1

  • Hight avalability
  • Default policy of read consistency queries to slaves
  • Auto scale up on Amazon VPC
  • Auto scale out on Amazon VPC
  • Online upgrade to new release or configuration change
  • Multi cloud and local tenancy

Client or API named service command :

  • Services install

./clmgr services install bench1

  • Services start

./clmgr services start bench1

  • Services stop

./clmgr services stop proxy1

  • Services status

./clmgr services status proxy1

  • Services switch database master

./clmgr services switch db2

  • Services switch vip

./clmgr services switch_vip lb2

  • Services bootstrap_binaries : copy the full stack to all services IPs

./clmgr services bootstrap_binaries

  • Services bootstrap configuration : copy the etc/cloud.cnf to all services ip

./clmgr services bootstrap_config

  • Services bootstrap ncc : copy the cluster controler to all services ip

./clmgr services bootstrap_ncc

  • Services change configuration online

./clmgr services rolling_restart all db
./clmgr services rolling_restart all proxy

Client or API multi services command

  • Filtering per sevice mode

./clmgr services status all
./clmgr services status all mariadb

  • Filtering per localhost

./clmgr services status local all

Client or API cloud commands

  • Instances status

./clmgr instances status all

  • Instances launch

./clmgr instances launch ip

  • Instances start

./clmgr instances start ip

  • Instances stop

./clmgr instances stop ip

  • Instances terminate

./clmgr instances terminate ip

Features for Version 0.2

  • Cluster of services shard to multiple VIP DB abstraction

  • Relaxing consistency for sql queries

  • Routing of read sql queries to pool of slaves with table horizontal sharding

  • Routing of read sql queries to pool of slavesslaves with table or db vertical sharding queries

  • Routing of read sql queries to pool of sphinx RT indexes

  • Routing of read sql queries to pool of key value store

  • Routing of read sql queries to analytics slaves

Clone this wiki locally