diff --git a/docker/services/ceph-ansible/ceph-base.yaml b/docker/services/ceph-ansible/ceph-base.yaml
index a9899c5638..69e5e8417c 100644
--- a/docker/services/ceph-ansible/ceph-base.yaml
+++ b/docker/services/ceph-ansible/ceph-base.yaml
@@ -38,6 +38,10 @@ parameters:
     constraints:
     - allowed_values: ['', 'UPGRADE']
     default: ''
+  NodeDataLookup:
+    type: string
+    default: '{}'
+    description: json string containing per-node configuration map
   CephAnsibleWorkflowName:
     type: string
     description: Name of the Mistral workflow to execute
@@ -200,6 +204,7 @@ outputs:
                   - {get_param: CephAnsibleUpgradePlaybook}
                   - {get_param: CephAnsiblePlaybook}
               ansible_playbook_verbosity: {get_param: CephAnsiblePlaybookVerbosity}
+              node_data_lookup: {get_param: NodeDataLookup}
       config_settings:
         ceph_common_ansible_vars:
           ireallymeanit: 'yes'
diff --git a/puppet/extraconfig/pre_deploy/per_node.yaml b/puppet/extraconfig/pre_deploy/per_node.yaml
index 33ae3e28af..c39b4857d9 100644
--- a/puppet/extraconfig/pre_deploy/per_node.yaml
+++ b/puppet/extraconfig/pre_deploy/per_node.yaml
@@ -17,7 +17,7 @@ parameters:
   #           "8CF1A7EA-7B4B-4433-AC83-17675514B1B8": {"foo2": "bar2"}}
   NodeDataLookup:
     type: string
-    default: ''
+    default: '{}'
     description: json string containing per-node configuration map
 
 resources: