Defying the Odds: Setting up Oracle NoSQL DB on MAC, using VMs for replication

I have a Macbook Pro, 2010 Model with 8GB of RAM. While reading the Admin Guide for the Oracle BigData release, it says that only linux and Solaris OSes are supported for now. I hissed and went ahead anyway. Next It said I shouldn’t setup multiple nodes using a Virtual Machine, another hiss.

The reason why I hissed was I was pissed, why Linux and Solaris, and now I couldn’t use VM? I went back to the Guide to see why, but the reasons given wasn’t convincing, so I went ahead and started the deployment on my mac. My disobedience paid off, not only did it work on a Mac, I was able to setup other Nodes using VM running on the same Box.

I have two VMs running headless. The type of Networking is Bridged. I have a wireless router that also has ethernet port, I hooked my Mac up on both the wireless and the LAN. I use the LAN for the Brigded networking on the VMs and the WIFI for my MAC.

This is all the setup you will need. Note that of you have read the Admin guide, you will see things like node1, node2 etc used to name the systems on which the different instances of the NoSQL DB is running, to avoid having to go into naming and hosts file and that, we will just use the IP addresses, they also work.

I am going to assume that my MAC ip address is, and the VMs are and respectively.

After installing the NoSQL DB on all three machines (My MAC and the two VMs.), I run the below commands in the same directory as where the NoSQL DB is installed.

mkdir Data
./bin/kvctl makebootconfig -root Data -port 5000 -admin 5001 -host 192.168.1.[4,5 or 6] -harange 5010,5020
./bin/kvctl start -host 192.168.1.[4,5 or 6] -root Data

The above will create a config in /Data and start the NoSQL DB.

Next, you need to run the below command on only

./bin/kvctl runadmin -port 5000 -host -script script.plan.txt

The content of script.plan.txt is

configure mystore
plan -execute -name "Deploy Boston DC" deploy-datacenter "Boston" "Savvis"
plan -execute -name "Deploy Node1" deploy-sn 1 5000
plan -execute -name "Deploy Admin" deploy-admin 1 5001
addpool BostonPool
joinpool BostonPool 1
plan -execute -name "Deploy Node2" deploy-sn 1 5000
joinpool BostonPool 2
plan -execute -name "Deploy Node3" deploy-sn 1 5000
joinpool BostonPool 3
plan -execute -name "Deploy the Store" deploy-store BostonPool 3 300

If all went well, visit from you browser and click on topology.

For a description of the commands in the script.plan.txt see the Adming Guide.


1 Comment »

  1. Way cool! Some extremely valid points! I appreciate you
    penning this write-up and the rest of the website is also
    really good.

RSS feed for comments on this post · TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: