diff --git a/ansible/roles/common/tasks/config.yml b/ansible/roles/common/tasks/config.yml
index 3b144963e4649bac733af00fbae6229f604013df..8004e8943cc66326837c8e2bfe49020047b2856a 100644
--- a/ansible/roles/common/tasks/config.yml
+++ b/ansible/roles/common/tasks/config.yml
@@ -42,7 +42,8 @@
     - name: "00-local"
       enabled: true
     - name: "01-es"
-      enabled: "{{ enable_elasticsearch }}"
+      enabled: "{{ enable_elasticsearch | bool or
+                ( elasticsearch_address != kolla_internal_vip_address ) | bool }}"
 
 - name: Copying over fluentd format config files
   template:
diff --git a/ansible/roles/common/templates/conf/output/00-local.conf.j2 b/ansible/roles/common/templates/conf/output/00-local.conf.j2
index 0b2f4701695012096c4e12c673059e98dab82943..3b972d523cd771f66b2117cfe1adea61c3666742 100644
--- a/ansible/roles/common/templates/conf/output/00-local.conf.j2
+++ b/ansible/roles/common/templates/conf/output/00-local.conf.j2
@@ -8,10 +8,11 @@
     append true
     compress gzip
   </store>
-{% if enable_elasticsearch | bool %}
+{% if enable_elasticsearch | bool or
+      elasticsearch_address != kolla_internal_vip_address %}
   <store>
        type elasticsearch
-       host {{ kolla_external_vip_address }}
+       host {{ elasticsearch_address }}
        port {{ elasticsearch_port }}
        logstash_format true
        logstash_prefix flog
@@ -32,10 +33,11 @@
     append true
     compress gzip
   </store>
-{% if enable_elasticsearch | bool %}
+{% if enable_elasticsearch | bool or
+      elasticsearch_address != kolla_internal_vip_address %}
   <store>
        type elasticsearch
-       host {{ kolla_external_vip_address }}
+       host {{ elasticsearch_address }}
        port {{ elasticsearch_port }}
        logstash_format true
        logstash_prefix flog
diff --git a/ansible/roles/common/templates/conf/output/01-es.conf.j2 b/ansible/roles/common/templates/conf/output/01-es.conf.j2
index 2367b8a7faf534e08168deae9995285f346f89e5..4a87fcf2fe708a9b87e0a3a4a678be03ae02cc36 100644
--- a/ansible/roles/common/templates/conf/output/01-es.conf.j2
+++ b/ansible/roles/common/templates/conf/output/01-es.conf.j2
@@ -2,7 +2,7 @@
     type copy
     <store>
        type elasticsearch
-       host {{ kolla_external_vip_address }} 
+       host {{ elasticsearch_address }}
        port {{ elasticsearch_port }}
        logstash_format true
        logstash_prefix flog
diff --git a/ansible/roles/common/templates/fluentd.json.j2 b/ansible/roles/common/templates/fluentd.json.j2
index e9d6bed716dbc7332d5d6f186e40b0d233778870..7ce3133d4ee9d44925ae20582ff25a6ee50fe226 100644
--- a/ansible/roles/common/templates/fluentd.json.j2
+++ b/ansible/roles/common/templates/fluentd.json.j2
@@ -60,7 +60,8 @@
             "dest": "/etc/td-agent/format/wsgi_python.conf",
             "owner": "td-agent",
             "perm": "0600"
-        },{% if enable_elasticsearch | bool %}
+        },{% if enable_elasticsearch | bool or
+                ( elasticsearch_address != kolla_internal_vip_address ) | bool %}
         {
             "source": "{{ container_config_directory }}/output/01-es.conf",
             "dest": "/etc/td-agent/output/01-es.conf",