Skip to main content

IoTronic is an Internet of Things resource management service for OpenStack clouds.

Project description

IoTronic is an Internet of Things resource management service for OpenStack clouds.

IoTronic allows to manage Internet of Things resources as part of an OpenStack data center.

Basic scenario

For this installation of the Iotronic Service we are considering a scenario with the following hosts and softwares:

  • Controller ( Ubuntu linux): Mysql, Keystone, Rabbitmq

  • Iotronic ( Ubuntu linux ): Iotronic-conductor, iotronic-wamp-agent, crossbar

  • Board: iotronic-lightining-rod

Controller host setup

According to the Openstack Documentation install the following softwares on the controller host:

  • SQL database

  • Message queue

  • Memcached

  • Keystone

Creation of the database

On the dbms create the iotronic db and configure the access for the user iotronic:

MariaDB [(none)]> CREATE DATABASE iotronic;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON iotronic.* TO iotronic@'localhost' IDENTIFIED BY ‘IOTRONIC_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON iotronic.* TO iotronic@'%' IDENTIFIED BY ‘IOTRONIC_DBPASS’;

Add the user and the enpoints on Keystone:

source adminrc
openstack service create iot --name Iotronic
openstack user create --password-prompt iotronic

openstack role add --project service --user iotronic admin
openstack role add admin_iot_project
openstack role add manager_iot_project
openstack role add user_iot

openstack endpoint create --region RegionOne iot public http://IP_IOTRONIC:8812
openstack endpoint create --region RegionOne iot internal http://IP_IOTRONIC:8812
openstack endpoint create --region RegionOne iot admin http://1IP_IOTRONIC:8812

Configuring Iotronic Host

Crossbar

Install crossbar on the Iotronic host following the official guide

Iotronic Installation

Get the source:

git clone https://github.com/openstack/iotronic.git

add the user iotronic:

useradd -m -d /var/lib/iotronic iotronic

and Iotronic:

cd iotronic
pip3 install -r requirements.txt
python3 setup.py install

create a log dir:

mkdir -p /var/log/iotronic
chown -R iotronic:iotronic /var/log/iotronic/

edit /etc/iotronic/iotronic.conf with the correct configuration:

nano /etc/iotronic/iotronic.conf

There is just one wamp-agent and it must be set as the registration agent:

register_agent = True

populate the database:

iotronic-dbsync

API Service Configuration

Install apache and the other components:

sudo apt-get install apache2 python-setuptools libapache2-mod-wsgi-py3

create log directory:

touch /var/log/iotronic/iotronic-api_error.log
touch /var/log/iotronic/iotronic-api_access.log
chown -R iotronic:iotronic /var/log/iotronic/

copy the config apache2 file:

cp etc/apache2/iotronic.conf /etc/apache2/sites-available/iotronic.conf

enable the configuration:

a2ensite /etc/apache2/sites-available/iotronic.conf

restart apache:

systemctl restart apache2

Starting

Start the service:

systemctl enable iotronic-wamp-agent
systemctl start iotronic-wamp-agent

systemctl enable iotronic-conductor
systemctl start iotronic-conductor

Board Side

Follow the iotronic-lightning-rod README

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iotronic-0.3.5.tar.gz (129.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iotronic-0.3.5-py2.py3-none-any.whl (177.6 kB view details)

Uploaded Python 2Python 3

File details

Details for the file iotronic-0.3.5.tar.gz.

File metadata

  • Download URL: iotronic-0.3.5.tar.gz
  • Upload date:
  • Size: 129.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.12

File hashes

Hashes for iotronic-0.3.5.tar.gz
Algorithm Hash digest
SHA256 772ac3e93f058df4f00cc49f6e720daf52a69708fd9d954a1859a4c1c909d3cc
MD5 67ac65ea1c1a3ae533bdeddb1213044a
BLAKE2b-256 acfd6d09c790b5a80ebcedf93a560c093b1c0bb72926b4ae9b9151f758ef766e

See more details on using hashes here.

File details

Details for the file iotronic-0.3.5-py2.py3-none-any.whl.

File metadata

  • Download URL: iotronic-0.3.5-py2.py3-none-any.whl
  • Upload date:
  • Size: 177.6 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.20.0 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/2.7.12

File hashes

Hashes for iotronic-0.3.5-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 a4fc7d0f1521a5f331d03ce918d2d0eb3cca996d72cb8e717e950a545e1437be
MD5 bb794b87cecbfa227d5be3d6420c3e6d
BLAKE2b-256 8d229e5943f81cda938e8b9891afe86310c01f370e05bafc5e5d705853f68a81

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page