devicehive #13

Supports: trusty

Add to new model


DeviceHive makes any connected device part of the Internet of Things. It provides the communication layer, control software and multi-platform libraries to bootstrap development of smart energy, home automation, remote sensing, telemetry, remote control and monitoring software, and much more. Leave communications to DeviceHive and focus on product and innovation. Learn more at:

Quick overview:

DeviceHive node for big and high loaded installations.
Charm must be deployed in the bundle with postgresql-dh, kafka-dh, zookeeper-dh and nginx-dh charms.


If you use Amazon cloud you have to deploy devicehive cluster withing the VPC, so all hosts can be reachable using their private ip addresses.

juju deploy cs:~x3v947pl/trusty/devicehive -n 2
juju deploy cs:~x3v947pl/trusty/zookeeper-dh -n 2
juju deploy cs:~x3v947pl/trusty/kafka-dh -n 2
juju deploy cs:~x3v947pl/trusty/postgresql-dh
juju deploy cs:~x3v947pl/trusty/nginx-dh

If you use Azure cloud you might need to open tcp ports before making relations or they will fail. In case of Amazon cloud you will need to expose just nginx-dh service.

juju expose zookeper-dh
juju expose kafka-dh
juju expose postgresql-dh
juju expose devicehive
juju expose nginx-dh

juju add-relation zookeper-dh kafka-dh
juju add-relation devicehive zookeper-dh
juju add-relation devicehive kafka-dh
juju add-relation devicehive postgresql-dh
juju add-relation devicehive nginx-dh

When deployment is finished you will get a picture similar to this:

$ juju status --format=tabular
devicehive    unknown false   local:trusty/devicehive-1
kafka-dh      unknown false   local:trusty/kafka-dh-1
nginx-dh      unknown true    local:trusty/nginx-dh-1
postgresql-dh unknown false   local:trusty/postgresql-dh-1
zookeeper-dh  unknown false   local:trusty/zookeeper-dh-1

devicehive/0    unknown        idle 26      5701/tcp,8080/tcp
devicehive/1    unknown        idle 33      5701/tcp,8080/tcp
kafka-dh/0      unknown        idle 28      9092/tcp         
kafka-dh/1      unknown        idle 30      9092/tcp         
nginx-dh/0      unknown        idle 32      80/tcp           
postgresql-dh/0 unknown        idle 27      5432/tcp         
zookeeper-dh/0  unknown        idle 29      2181/tcp,2888/tcp,3888/tcp
zookeeper-dh/1  unknown        idle 31      2181/tcp,2888/tcp,3888/tcp

ID         STATE   VERSION  DNS        INS-ID               SERIES HARDWARE
0          started localhost  localhost            vivid
26         started  s90-local-machine-26 trusty arch=amd64
27         started   s90-local-machine-27 trusty arch=amd64
28         started s90-local-machine-28 trusty arch=amd64
29         started s90-local-machine-29 trusty arch=amd64
30         started  s90-local-machine-30 trusty arch=amd64
31         started s90-local-machine-31 trusty arch=amd64
32         started s90-local-machine-32 trusty arch=amd64
33         started  s90-local-machine-33 trusty arch=amd64


After successfull deployment go to http://<ip/domain>/api/rest/info to see api endpoints.
Admin console is available here http://<ip/domain>/admin.
Login/password by default are dhadmin/dhadmin_#911.