This post provides a step-by-step guide for installing the Blockbridge simulator. The simulator makes it easy to try Elastic Programmable Storage (EPS) in a non-production environment. You can use the simulator to try our OpenStack, Docker, DropSafe and bare-metal workflows as well as develop applications that consume our native API.

For your convenience, the simulator installs as a Docker container and is available from the Docker hub. While we suggest using Docker Engine 1.8+, feel free to use any host OS you want: CoreOS, RHEL, CentOS, Boot2Docker, etc.

Install Docker (CentOS7 shown here)
[root@docker centos]# yum install docker
Installed:
docker.x86_64 0:1.8.2-10.el7.centos
Dependency Installed:
device-mapper-event.x86_64 7:1.02.107-5.el7
device-mapper-event-libs.x86_64 7:1.02.107-5.el7
device-mapper-persistent-data.x86_64 0:0.5.5-1.el7
docker-selinux.x86_64 0:1.8.2-10.el7.centos
libaio.x86_64 0:0.3.109-13.el7
lvm2.x86_64 7:2.02.130-5.el7
lvm2-libs.x86_64 7:2.02.130-5.el7
Complete!
[root@docker centos]# systemctl start docker[root@docker centos]#

The easiest way to get started is to deploy a converged simulator, with either private container networking or public networking (to access simulator from a remote host). A converged configuration runs 2 Blockbridge nodes in a single docker container. One node is responsible for API access and hosting the web application, while the other node hosts the storage services. Our Github repository contains shell scripts that fully automate setup.

Clone the Simulator Repository on Github

root@docker centos]# git clone https://github.com/blockbridge/blockbridge-demo.git
Cloning into ‘blockbridge-demo’…
remote: Counting objects: 110, done.
remote: Total 110 (delta 0), reused 0 (delta 0), pack-reused 110
Receiving objects: 100% (110/110), 310.00 KiB | 0 bytes/s, done.
Resolving deltas: 100% (57/57), done.
[root@docker centos]#

Run a Converged Node Container (Public networking shown here)
[root@docker centos]# ./simulator/converged_node/run_public.sh
Setting simulator firewall rules (may need sudo password)
Starting converged node (using 10.10.0.26): Unable to find image ‘blockbridge/simulator:latest’ locally
Trying to pull repository docker.io/blockbridge/simulator … latest: Pulling from blockbridge/simulator
f1b10cd84249: Pull complete
c852f6d61e65: Pull complete
7322fbe74aa5: Pull complete
d38d6776ce30: Pull complete
1ffe79025e48: Pull complete
b96832bdd2ab: Pull complete
8f945375ea11: Pull complete
db2578f7a22b: Pull complete
c35a503b1fc8: Pull complete
ca731097e907: Pull complete
7d1945bf02bd: Pull complete
1d33c4a70c10: Pull complete
0882c4fc3b43: Pull complete
81a5b8ae3f33: Pull complete
ccbf1c5b49fb: Pull complete
e97aeddffd85: Pull complete
9797eeca1c3d: Pull complete
bed7e274acb4: Pull complete
29713942faf2: Pull complete
cba101f4aeac: Pull complete
7ef9b1bee023: Pull complete
97f9a8604bdf: Pull complete
1d8df74ffdb5: Pull complete
Digest: sha256:459b5d2565b9e4144ae259cee386a6bab869766cfd329601a24b322b647ef091
Status: Downloaded newer image for docker.io/blockbridge/simulator:latest
b1ba45ac793dfaf36bcf4dc5dbd9302d127f45189044bcc7e32e22783fddea8f
[root@docker centos]#

As the system boots for the first time, it generates random access credentials for the storage administrator and a single tenant. The credentials are printed to the container’s logs. You will need these to authenticate to the simulator. The credentials can be retrieved using the docker logs command.

Retrieve Your Access Credentials
[root@docker centos]# docker logs –tail 15 bbsim-converged
==============================================
Blockbridge simulator (container) has started.
Mode: converged
Management node: management-b1ba45ac793d
Storage node: storage-b1ba45ac793d
IP Address: 10.10.0.26
Admin API Key: 1/B+yWjDa4kdQdTnYiisx8Yw+c2FlA4NFY31mDWLg3GX8X7JaMNriQlQ

Admin account: system
Admin password: 9b75f1b497bf81c05aeaa99fca7b8444
User account: block
User password: b9a0b6ce97590f6428afb03b9b041b9e
==============================================
[root@docker centos]#

Now, you are ready to go. Simply point your web browser at the IP address of the host running the management node. Note that you must specify the machine’s external address (ie. floating IP address in OpenStack or AWS). After accepting the certificate, sign in at the Blockbridge login prompt with the system account and its generated password from the Admin password line above.

Connect with your browser
bb-gui-login

Happy hacking! If you run into any issues, please let us know. Also, be sure to download the command line tools for your platform. They provide full access to the API and automate every aspect of storage management. USE THE TOOLS, Luke. Within 15 minutes you will be an expert.