diff --git a/ansible/roles/ceph/templates/ceph-mon.json.j2 b/ansible/roles/ceph/templates/ceph-mon.json.j2
index c1cc96454764749a97484be5ee3a6a2ebf5c0317..11dfccf6e3398d6454836359460a7cbb036d3c94 100644
--- a/ansible/roles/ceph/templates/ceph-mon.json.j2
+++ b/ansible/roles/ceph/templates/ceph-mon.json.j2
@@ -1,8 +1,8 @@
 {
 {%- if orchestration_engine == 'KUBERNETES' %}
-    "command": "/usr/bin/ceph-mon -d -i @MONID@ --public-addr @MONADDR@:6789",
+    "command": "/usr/bin/ceph-mon -f -i @MONID@ --public-addr @MONADDR@:6789",
 {%- else %}
-    "command": "/usr/bin/ceph-mon -d -i {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }} --public-addr {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }}:6789",
+    "command": "/usr/bin/ceph-mon -f -i {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }} --public-addr {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }}:6789",
 {%- endif %}
     "config_files": [
         {
diff --git a/ansible/roles/ceph/templates/ceph-osd.json.j2 b/ansible/roles/ceph/templates/ceph-osd.json.j2
index f6d62e8923692ce5fee977a7d5aa4a0a1f9bb00c..7118f1b160cb80aa0b04a658749d0da8f7a83104 100644
--- a/ansible/roles/ceph/templates/ceph-osd.json.j2
+++ b/ansible/roles/ceph/templates/ceph-osd.json.j2
@@ -1,8 +1,8 @@
 {
 {%- if orchestration_engine == 'KUBERNETES' %}
-    "command": "/usr/bin/ceph-osd -f -d --public-addr @HOSTADDR@ --cluster-addr @CLUSTERADDR@",
+    "command": "/usr/bin/ceph-osd -f --public-addr @HOSTADDR@ --cluster-addr @CLUSTERADDR@",
 {%- else %}
-    "command": "/usr/bin/ceph-osd -f -d --public-addr {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }} --cluster-addr {{ hostvars[inventory_hostname]['ansible_' + cluster_interface]['ipv4']['address'] }}",
+    "command": "/usr/bin/ceph-osd -f --public-addr {{ hostvars[inventory_hostname]['ansible_' + storage_interface]['ipv4']['address'] }} --cluster-addr {{ hostvars[inventory_hostname]['ansible_' + cluster_interface]['ipv4']['address'] }}",
 {%- endif %}
     "config_files": [
         {
diff --git a/ansible/roles/ceph/templates/ceph-rgw.json.j2 b/ansible/roles/ceph/templates/ceph-rgw.json.j2
index 7cb0ccdd446d5868d2483ff050cdf53d0da5e78f..9789651da560513edf1ff223700ec1e42808a659 100644
--- a/ansible/roles/ceph/templates/ceph-rgw.json.j2
+++ b/ansible/roles/ceph/templates/ceph-rgw.json.j2
@@ -1,5 +1,5 @@
 {
-    "command": "/usr/bin/radosgw -c /etc/ceph/ceph.conf -n client.radosgw.gateway -d",
+    "command": "/usr/bin/radosgw -c /etc/ceph/ceph.conf -n client.radosgw.gateway -f",
     "config_files": [
         {
             "source": "{{ container_config_directory }}/ceph.conf",
diff --git a/ansible/roles/ceph/templates/ceph.conf.j2 b/ansible/roles/ceph/templates/ceph.conf.j2
index 2a0e79aaa1a69b6b2fc6d1af94c05c814fe93dae..d355f6c09eecdcd198338fbb736fd9c3bf48de4f 100644
--- a/ansible/roles/ceph/templates/ceph.conf.j2
+++ b/ansible/roles/ceph/templates/ceph.conf.j2
@@ -1,7 +1,9 @@
 [global]
 log file = /var/log/kolla/ceph/$cluster-$name.log
-log to syslog = true
-err to syslog = true
+log to syslog = false
+err to syslog = false
+log to stderr = false
+err to stderr = false
 
 fsid = {{ ceph_cluster_fsid }}
 {% if orchestration_engine != 'KUBERNETES' %}
@@ -26,6 +28,7 @@ setuser match path = /var/lib/ceph/$type/$cluster-$id
 # NOTE(SamYaple): The monitor files have been known to grow very large. The
 #                 only fix for that is to compact the files.
 mon compact on start = true
+mon cluster log file = /var/log/kolla/ceph/$cluster.log
 
 {% if service_name is defined and service_name == 'ceph-rgw' %}
 [client.radosgw.gateway]