diff --git a/ansible/inventory/all-in-one b/ansible/inventory/all-in-one
index a44eb1d661be05165a195bae9dc121c9d0f9b869..0c72fde5f8d96c4cdc8daa1e8a39998cb8e61dc5 100644
--- a/ansible/inventory/all-in-one
+++ b/ansible/inventory/all-in-one
@@ -180,7 +180,7 @@ ironic
 [ironic-conductor:children]
 ironic
 
-[ironic-discoverd:children]
+[ironic-inspector:children]
 ironic
 
 [ironic-pxe:children]
diff --git a/ansible/inventory/multinode b/ansible/inventory/multinode
index f1a154062e81895fed13e756bd19d2f7bf0fd61e..c6c1d2d1252d220d7b582c594f16d7986a1deeb1 100644
--- a/ansible/inventory/multinode
+++ b/ansible/inventory/multinode
@@ -205,7 +205,7 @@ ironic
 [ironic-conductor:children]
 ironic
 
-[ironic-discoverd:children]
+[ironic-inspector:children]
 ironic
 
 [ironic-pxe:children]
diff --git a/ansible/roles/ironic/defaults/main.yml b/ansible/roles/ironic/defaults/main.yml
index 69da77ffccdb243d23f93ffd9b67535fa8c2259b..6fb97c340b7395dfbb5e015b2e2f49fd1bac2258 100644
--- a/ansible/roles/ironic/defaults/main.yml
+++ b/ansible/roles/ironic/defaults/main.yml
@@ -20,9 +20,9 @@ ironic_conductor_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{
 ironic_conductor_tag: "{{ openstack_release }}"
 ironic_conductor_image_full: "{{ ironic_conductor_image }}:{{ ironic_conductor_tag }}"
 
-ironic_discoverd_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-ironic-discoverd"
-ironic_discoverd_tag: "{{ openstack_release }}"
-ironic_discoverd_image_full: "{{ ironic_discoverd_image }}:{{ ironic_discoverd_tag }}"
+ironic_inspector_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-ironic-inspector"
+ironic_inspector_tag: "{{ openstack_release }}"
+ironic_inspector_image_full: "{{ ironic_inspector_image }}:{{ ironic_inspector_tag }}"
 
 ironic_pxe_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/{{ kolla_base_distro }}-{{ kolla_install_type }}-ironic-pxe"
 ironic_pxe_tag: "{{ openstack_release }}"
diff --git a/ansible/roles/ironic/tasks/config.yml b/ansible/roles/ironic/tasks/config.yml
index 416157762db1ad8aff6be418a116f3b80ffd2ec7..d4d3e6bd8af85b4016034f7666a3ec2a26bd7a46 100644
--- a/ansible/roles/ironic/tasks/config.yml
+++ b/ansible/roles/ironic/tasks/config.yml
@@ -7,7 +7,7 @@
   with_items:
     - "ironic-api"
     - "ironic-conductor"
-    - "ironic-discoverd"
+    - "ironic-inspector"
     - "ironic-pxe"
 
 - name: Copying over config.json files for services
@@ -17,7 +17,7 @@
   with_items:
     - "ironic-api"
     - "ironic-conductor"
-    - "ironic-discoverd"
+    - "ironic-inspector"
     - "ironic-pxe"
 
 - name: Copying over ironic.conf
@@ -35,4 +35,4 @@
   with_items:
     - "ironic-api"
     - "ironic-conductor"
-    - "ironic-discoverd"
+    - "ironic-inspector"
diff --git a/ansible/roles/ironic/tasks/deploy.yml b/ansible/roles/ironic/tasks/deploy.yml
index e32778aee8afb594a20bed3ed9619df8da4c6129..09fa82b2257f92942bb19a5d9778fe75b1cfe3e5 100644
--- a/ansible/roles/ironic/tasks/deploy.yml
+++ b/ansible/roles/ironic/tasks/deploy.yml
@@ -5,7 +5,7 @@
 - include: config.yml
   when: inventory_hostname in groups['ironic-api'] or
         inventory_hostname in groups['ironic-conductor'] or
-        inventory_hostname in groups['ironic-discoverd'] or
+        inventory_hostname in groups['ironic-inspector'] or
         inventory_hostname in groups['ironic-pxe']
 
 - include: bootstrap.yml
@@ -14,5 +14,5 @@
 - include: start.yml
   when: inventory_hostname in groups['ironic-api'] or
         inventory_hostname in groups['ironic-conductor'] or
-        inventory_hostname in groups['ironic-discoverd'] or
+        inventory_hostname in groups['ironic-inspector'] or
         inventory_hostname in groups['ironic-pxe']
diff --git a/ansible/roles/ironic/tasks/pull.yml b/ansible/roles/ironic/tasks/pull.yml
index 9ee19f977486830565cd9569c13e3646a50262ec..630f34eb17b1b7fcd17e3c64fe0ece9bf821883d 100644
--- a/ansible/roles/ironic/tasks/pull.yml
+++ b/ansible/roles/ironic/tasks/pull.yml
@@ -13,12 +13,12 @@
     image: "{{ ironic_conductor_image_full }}"
   when: inventory_hostname in groups['ironic-conductor']
 
-- name: Pulling ironic-discoverd image
+- name: Pulling ironic-inspector image
   kolla_docker:
     action: "pull_image"
     common_options: "{{ docker_common_options }}"
-    image: "{{ ironic_discoverd_image_full }}"
-  when: inventory_hostname in groups['ironic-discoverd']
+    image: "{{ ironic_inspector_image_full }}"
+  when: inventory_hostname in groups['ironic-inspector']
 
 - name: Pulling ironic-pxe image
   kolla_docker:
diff --git a/ansible/roles/ironic/tasks/start.yml b/ansible/roles/ironic/tasks/start.yml
index d728ec8f5235c47e4ef9da01b26c8cf0fc5bdad3..2c2dba6bb0ef8c5ce38a2084c3eeb34af20704f0 100644
--- a/ansible/roles/ironic/tasks/start.yml
+++ b/ansible/roles/ironic/tasks/start.yml
@@ -30,12 +30,12 @@
       - "ironic_pxe:/tftpboot/"
   when: inventory_hostname in groups['ironic-conductor']
 
-- name: Starting ironic-discoverd container
+- name: Starting ironic-inspector container
   kolla_docker:
     action: "start_container"
     common_options: "{{ docker_common_options }}"
-    image: "{{ ironic_discoverd_image_full }}"
-    name: "ironic_discoverd"
+    image: "{{ ironic_inspector_image_full }}"
+    name: "ironic_inspector"
     privileged: True
-    volumes: "{{ node_config_directory }}/ironic-discoverd/:{{ container_config_directory }}/:ro"
-  when: inventory_hostname in groups['ironic-discoverd']
+    volumes: "{{ node_config_directory }}/ironic-inspector/:{{ container_config_directory }}/:ro"
+  when: inventory_hostname in groups['ironic-inspector']
diff --git a/ansible/roles/ironic/templates/discoverd.conf.j2 b/ansible/roles/ironic/templates/discoverd.conf.j2
deleted file mode 100644
index b7dae00832e27e4c7b5d6012b77257aa02cc5e8b..0000000000000000000000000000000000000000
--- a/ansible/roles/ironic/templates/discoverd.conf.j2
+++ /dev/null
@@ -1,11 +0,0 @@
-[discoverd]
-database = inspector.sqlite3
-os_auth_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}/v2.0
-os_username = {{ openstack_auth.username }}
-os_password = {{ openstack_auth.password }}
-os_tenant_name = {{ openstack_auth.project_name }}
-identity_uri = {{ openstack_auth.auth_url }}
-
-# Note: this will be in the firewall section once upgraded to inspector
-# unsure of the correct interface here
-dnsmasq_interface = {{ api_interface }}
diff --git a/ansible/roles/ironic/templates/ironic-discoverd.json.j2 b/ansible/roles/ironic/templates/ironic-inspector.json.j2
similarity index 78%
rename from ansible/roles/ironic/templates/ironic-discoverd.json.j2
rename to ansible/roles/ironic/templates/ironic-inspector.json.j2
index 29e0b9a6557c9f5da411fc1c1445d2e27890263f..a15f2939e1a3d7f087b0d6d40d1a46bc22d18900 100644
--- a/ansible/roles/ironic/templates/ironic-discoverd.json.j2
+++ b/ansible/roles/ironic/templates/ironic-inspector.json.j2
@@ -1,5 +1,5 @@
 {
-    "command": "ironic-discoverd --config-file /etc/ironic/ironic.conf",
+    "command": "ironic-inspector --config-file /etc/ironic/ironic.conf",
     "config_files": [
         {
             "source": "{{ container_config_directory }}/ironic.conf",
diff --git a/ansible/roles/ironic/templates/ironic.conf.j2 b/ansible/roles/ironic/templates/ironic.conf.j2
index 57bf36f297e7a127b068f44a524837ad58f04d01..5ae13730f553cb3af59787b9a78773f692de9458 100644
--- a/ansible/roles/ironic/templates/ironic.conf.j2
+++ b/ansible/roles/ironic/templates/ironic.conf.j2
@@ -15,6 +15,18 @@ api_url = {{ internal_protocol }}://{{ kolla_internal_fqdn }}:{{ ironic_api_port
 clean_nodes = false
 {% endif %}
 
+{% if service_name == 'ironic-inspector' %}
+[ironic]
+os_auth_url = {{ admin_protocol }}://{{ kolla_internal_fqdn }}:{{ keystone_public_port }}/v2.0
+os_username = {{ openstack_auth.username }}
+os_password = {{ openstack_auth.password }}
+os_tenant_name = {{ openstack_auth.project_name }}
+identity_uri = {{ openstack_auth.auth_url }}
+
+[firewall]
+dnsmasq_interface = {{ api_interface }}
+{% endif %}
+
 [database]
 connection = mysql+pymysql://{{ ironic_database_user }}:{{ ironic_database_password }}@{{ ironic_database_address }}/{{ ironic_database_name }}
 
diff --git a/ansible/roles/nova/templates/nova.conf.j2 b/ansible/roles/nova/templates/nova.conf.j2
index ef5fcf0fe27c3ff72d330ed4cdb78e975cc51c08..ad22aa590147a906d37d4643da1c37f09b42b036 100644
--- a/ansible/roles/nova/templates/nova.conf.j2
+++ b/ansible/roles/nova/templates/nova.conf.j2
@@ -78,7 +78,6 @@ html5proxy_port = {{ nova_spicehtml5proxy_port }}
 
 {% if service_name == "nova-compute-ironic" %}
 [ironic]
-#(TODO) remember to update this once discoverd is replaced by inspector
 admin_username = {{ ironic_keystone_user }}
 admin_password = {{ ironic_keystone_password }}
 admin_url = {{ openstack_auth_v2.auth_url }}
diff --git a/ansible/site.yml b/ansible/site.yml
index 840e607e1d64370d874d7fa1396b6348dfa335ba..ded4f6ef8bed4593ebd5aeb571b3775e788b083a 100644
--- a/ansible/site.yml
+++ b/ansible/site.yml
@@ -151,7 +151,7 @@
 - hosts:
     - ironic-api
     - ironic-conductor
-    - ironic-discoverd
+    - ironic-inspector
     - ironic-pxe
     - rabbitmq
   roles:
diff --git a/doc/ironic-guide.rst b/doc/ironic-guide.rst
index da8795d63a00910a1f8e57b8918d60a0c883cc87..e0ed9baff5c08b1068d457aa96a31a76f802291c 100644
--- a/doc/ironic-guide.rst
+++ b/doc/ironic-guide.rst
@@ -7,7 +7,7 @@ Currently Kolla can deploy the Ironic services:
 
 - ironic-api
 - ironic-conductor
-- ironic-discoverd
+- ironic-inspector
 
 As well as a required PXE service, deployed as ironic-pxe.
 
@@ -15,8 +15,7 @@ Current status
 --------------
 The Ironic implementation is "tech preview", so currently instances can only be
 deployed on baremetal. Further work will be done to allow scheduling for both
-virtualized and baremetal deployments. Most probably at that time discoverd
-will be replaced by ironic-inspector.
+virtualized and baremetal deployments.
 
 Post-deployment configuration
 -----------------------------
diff --git a/docker/ironic/ironic-base/Dockerfile.j2 b/docker/ironic/ironic-base/Dockerfile.j2
index 4dc6e7fc3352d6e89ae9dae891b833d632f617e9..8447f92fff664088cd268b24dee3076cd4f422c9 100644
--- a/docker/ironic/ironic-base/Dockerfile.j2
+++ b/docker/ironic/ironic-base/Dockerfile.j2
@@ -28,4 +28,5 @@ RUN ln -s ironic-base-source/* ironic \
 
 {% endif %}
 
-RUN usermod -a -G kolla ironic
+RUN usermod -a -G kolla ironic \
+    && chown -R ironic: /etc/ironic
diff --git a/docker/ironic/ironic-discoverd/Dockerfile.j2 b/docker/ironic/ironic-inspector/Dockerfile.j2
similarity index 58%
rename from docker/ironic/ironic-discoverd/Dockerfile.j2
rename to docker/ironic/ironic-inspector/Dockerfile.j2
index 536d2b878b9230df95216b1483461c14ffafffae..217a73e06cfe5b5f0b5a652ca962d8c3d02b08b9 100644
--- a/docker/ironic/ironic-discoverd/Dockerfile.j2
+++ b/docker/ironic/ironic-inspector/Dockerfile.j2
@@ -4,11 +4,9 @@ MAINTAINER {{ maintainer }}
 {% if install_type == 'binary' %}
     {% if base_distro in ['centos', 'fedora', 'oraclelinux', 'rhel'] %}
 
-RUN pip install ironic-discoverd
-# discoverd no longer in delorean 9/28/2015, switch to inspector on TODO
-#RUN yum -y install \
-#    openstack-ironic-discoverd \
-#    && yum clean all
+RUN yum -y install \
+    openstack-ironic-inspector \
+    && yum clean all
 
     {% endif %}
 {% endif %}
diff --git a/tests/test_build.py b/tests/test_build.py
index eda87a4e721102983ab79b6a28987edecf08b533..7f68c2e118e52e5937bd05122549ab8e6e7d1a5d 100644
--- a/tests/test_build.py
+++ b/tests/test_build.py
@@ -70,7 +70,7 @@ class BuildTestCentosBinary(BuildTest, base.BaseTestCase):
     excluded_images = ["gnocchi-base",
                        "murano-base",
                        "ironic-pxe",
-                       "ironic-discoverd",
+                       "ironic-inspector",
                        "mistral-base",
                        "murano-base"]
 
@@ -84,7 +84,7 @@ class BuildTestCentosSource(BuildTest, base.BaseTestCase):
     excluded_images = ["gnocchi-base",
                        "murano-base",
                        "ironic-pxe",
-                       "ironic-discoverd",
+                       "ironic-inspector",
                        "mistral-base"]
 
     def setUp(self):
diff --git a/tools/cleanup-containers b/tools/cleanup-containers
index adf24f45009554bd69edce416411fbcdd9cef648..a69adfe532d4054ccbb99b94e4713e26eaf63fd8 100755
--- a/tools/cleanup-containers
+++ b/tools/cleanup-containers
@@ -17,7 +17,7 @@ else
         haproxy \
         heat_{api{,_cfn},engine} \
         horizon \
-        ironic_{discoverd,conductor,api,pxe} \
+        ironic_{inspector,conductor,api,pxe} \
         keepalived \
         keystone \
         kolla_toolbox \