diff --git a/inventory_provider/config.py b/inventory_provider/config.py
index ac25ad76483abc8b64d956c9790fab0211c9eaef..73b04a86f5c10d5c7a24890508fb3a7902ec9783 100644
--- a/inventory_provider/config.py
+++ b/inventory_provider/config.py
@@ -44,44 +44,40 @@ CONFIG_SCHEMA = {
             "required": ["hostname", "port"],
             "additionalProperties": False
         },
+        "sentinel": {
+            "type": "object",
+            "properties": {
+                "hostname": {"type": "string"},
+                "port": {"type": "integer"},
+                "name": {"type": "string"}
+            },
+            "required": ["hostname", "port"],
+            "additionalProperties": False
+        },
         "junosspace": {
             "api": {"type": "string"},
             "username": {"type": "string"},
             "password": {"type": "string"}
-        },
-        "infinera-dna": {
-            "type": "array",
-            "items": {
-                "type": "object",
-                "properties": {
-                    "name": {"type": "string"},
-                    "address": {"type": "string"}
-                },
-                "required": ["name", "address"],
-                "additionalProperties": False
-            }
-        },
-        "coriant-tnms": {
-            "type": "array",
-            "items": {
-                "type": "object",
-                "properties": {
-                    "name": {"type": "string"},
-                    "address": {"type": "string"}
-                },
-                "required": ["name", "address"],
-                "additionalProperties": False
-            }
         }
     },
-    "required": [
-        "ops-db",
-        "oid_list.conf",
-        "ssh",
-        "redis",
-        "junosspace",
-        "infinera-dna",
-        "coriant-tnms"],
+    "oneOf": [
+        {
+            "required": [
+                "ops-db",
+                "oid_list.conf",
+                "ssh",
+                "redis",
+                "junosspace"]
+        },
+        {
+            "required": [
+                "ops-db",
+                "oid_list.conf",
+                "ssh",
+                "sentinel",
+                "junosspace"]
+        }
+    ],
     "additionalProperties": False
 }
 
diff --git a/inventory_provider/logging_default_config.json b/inventory_provider/logging_default_config.json
index 38f4e61c5e489ccbac2d3a76d4d7354b33fea4ed..ba8b87a7eda0d22d2170b042d740da833c5daac4 100644
--- a/inventory_provider/logging_default_config.json
+++ b/inventory_provider/logging_default_config.json
@@ -46,7 +46,7 @@
 
     "loggers": {
         "inventory_provider": {
-            "level": "INFO",
+            "level": "DEBUG",
             "handlers": ["console", "syslog_handler"],
             "propagate": false
         },
diff --git a/inventory_provider/routes/common.py b/inventory_provider/routes/common.py
index 9e99eb348be42952cb508aa99cba389ef9f8839c..fa172830bf612590cbc86f0f1d10945428390b8b 100644
--- a/inventory_provider/routes/common.py
+++ b/inventory_provider/routes/common.py
@@ -2,7 +2,7 @@ import functools
 import logging
 
 from flask import request, Response, current_app, g
-import redis
+from inventory_provider.tasks.common import get_redis as tasks_get_redis
 
 logger = logging.getLogger(__name__)
 
@@ -10,10 +10,7 @@ logger = logging.getLogger(__name__)
 def get_redis():
     if 'redis_db' not in g:
         config = current_app.config['INVENTORY_PROVIDER_CONFIG']
-        g.redis_db = redis.StrictRedis(
-            host=config['redis']['hostname'],
-            port=config['redis']['port'])
-
+        g.redis_db = tasks_get_redis(config)
     return g.redis_db
 
 
diff --git a/inventory_provider/routes/testing.py b/inventory_provider/routes/testing.py
index 75d0074fa438e066e2b2121c254be47803dfe769..5362f4a9fe7737a850d8f1ca3d594b8c91c90a55 100644
--- a/inventory_provider/routes/testing.py
+++ b/inventory_provider/routes/testing.py
@@ -2,7 +2,7 @@ import collections
 import json
 import re
 
-from flask import Blueprint, Response, current_app, jsonify
+from flask import Blueprint, Response, jsonify
 from lxml import etree
 
 from inventory_provider import juniper
@@ -42,22 +42,6 @@ def update_interface_statuses():
     return Response('OK')
 
 
-@routes.route("infinera-dna-addresses", methods=['GET', 'POST'])
-@common.require_accepts_json
-def infinera_addresses():
-    infinera_config = current_app.config[
-        "INVENTORY_PROVIDER_CONFIG"]["infinera-dna"]
-    return jsonify([dna['address'] for dna in infinera_config])
-
-
-@routes.route("coriant-tnms-addresses", methods=['GET', 'POST'])
-@common.require_accepts_json
-def coriant_addresses():
-    coriant_config = current_app.config[
-        "INVENTORY_PROVIDER_CONFIG"]["coriant-tnms"]
-    return jsonify([tnms['address'] for tnms in coriant_config])
-
-
 @routes.route("juniper-server-addresses", methods=['GET', 'POST'])
 @common.require_accepts_json
 def juniper_addresses():
diff --git a/inventory_provider/tasks/common.py b/inventory_provider/tasks/common.py
index 342408350aaa5a0310f2f961648712e6af9fc958..2a965e12c3df763825ce7e234fc1a46edb0361fa 100644
--- a/inventory_provider/tasks/common.py
+++ b/inventory_provider/tasks/common.py
@@ -1,7 +1,17 @@
 import redis
+import redis.sentinel
 
 
 def get_redis(config):
-    return redis.StrictRedis(
-        host=config['redis']['hostname'],
-        port=config['redis']['port'])
+    if 'sentinel' in config:
+        sentinel = redis.sentinel.Sentinel([(
+            config['sentinel']['hostname'],
+            config['sentinel']['port'])],
+            socket_timeout=0.1)
+        return sentinel.master_for(
+            config['sentinel']['name'],
+            socket_timeout=0.1)
+    else:
+        return redis.StrictRedis(
+            host=config['redis']['hostname'],
+            port=config['redis']['port'])
diff --git a/inventory_provider/tasks/config.py b/inventory_provider/tasks/config.py
index 9e59a19335b81715406ef31c9acec14e81158909..846a2c2134d31ae1ab635fa277a95fe92606b57e 100644
--- a/inventory_provider/tasks/config.py
+++ b/inventory_provider/tasks/config.py
@@ -1,3 +1,4 @@
+import json
 from os import getenv
 
 broker_url = getenv(
@@ -6,4 +7,13 @@ broker_url = getenv(
 result_backend = getenv(
     'CELERY_BROKER_URL',
     default='redis://test-dashboard02.geant.org:6379/1')
+
+tmp_options = getenv(
+    'BROKER_TRANSPORT_OPTIONS',
+    default='')
+if tmp_options:
+    broker_transport_options = json.loads(tmp_options)
+else:
+    broker_transport_options = {}
+
 task_eager_propagates = True
diff --git a/test/conftest.py b/test/conftest.py
index 94640bff7fd0da534938314a00ea55d1b9528513..8f13ecf8fbeabe328e79704d35fe3917f9209e34 100644
--- a/test/conftest.py
+++ b/test/conftest.py
@@ -44,17 +44,7 @@ def data_config_filename(tmp_dir_name):
             "api": "bogus-url",
             "username": "bogus-username",
             "password": "bogus-password"
-        },
-        "infinera-dna": [
-            {"name": "name1", "address": "123.456.789.0"},
-            {"name": "name2", "address": "012.345.678.9"},
-            {"name": "name3", "address": "111.222.333.000"}
-        ],
-        "coriant-tnms": [
-            {"name": "name1", "address": "123.456.789.0"},
-            {"name": "name2", "address": "012.345.678.9"},
-            {"name": "name3", "address": "111.222.333.000"}
-        ]
+        }
     }
 
     shutil.copyfile(
@@ -157,7 +147,7 @@ def app_config():
 def client(app_config, mocker):
 
     mocker.patch(
-        'inventory_provider.routes.common.redis.StrictRedis',
+        'inventory_provider.tasks.common.redis.StrictRedis',
         MockedRedis)
 
     os.environ["SETTINGS_FILENAME"] = app_config
@@ -166,19 +156,15 @@ def client(app_config, mocker):
 
 
 @pytest.fixture
-def client_with_mocked_data(client, mocker):
-
+def mocked_redis(mocker):
     mocker.patch(
-        'inventory_provider.routes.common.redis.StrictRedis',
+        'inventory_provider.tasks.common.redis.StrictRedis',
         MockedRedis)
-    return client
 
 
 @pytest.fixture
-def mocked_redis(mocker):
-    mocker.patch(
-        'inventory_provider.routes.common.redis.StrictRedis',
-        MockedRedis)
+def client_with_mocked_data(client, mocked_redis):
+    return client
 
 
 NETIFACES_TEST_DATA_STRING = """{
diff --git a/test/test_testing_routes.py b/test/test_testing_routes.py
index 2ab4bd1930514a772f5d7b5f97b265dbe4c3f7ee..85879057bf995d336f90a7bb46327ebf71685b67 100644
--- a/test/test_testing_routes.py
+++ b/test/test_testing_routes.py
@@ -18,26 +18,6 @@ def test_flushdb(client):
     assert rv.status_code == 200
 
 
-def test_infinera_addresses(client):
-    rv = client.post(
-        "/testing/infinera-dna-addresses",
-        headers=DEFAULT_REQUEST_HEADERS)
-    assert rv.status_code == 200
-    jsonschema.validate(
-        json.loads(rv.data.decode("utf-8")),
-        ROUTER_LIST_SCHEMA)
-
-
-def test_coriant_addresses(client):
-    rv = client.post(
-        "/testing/coriant-tnms-addresses",
-        headers=DEFAULT_REQUEST_HEADERS)
-    assert rv.status_code == 200
-    jsonschema.validate(
-        json.loads(rv.data.decode("utf-8")),
-        ROUTER_LIST_SCHEMA)
-
-
 def test_juniper_addresses(client):
     rv = client.post(
         "/testing/juniper-server-addresses",