diff --git a/ansible/roles/kolla-openstack/defaults/main.yml b/ansible/roles/kolla-openstack/defaults/main.yml
index 5a7a96b09..118f65c49 100644
--- a/ansible/roles/kolla-openstack/defaults/main.yml
+++ b/ansible/roles/kolla-openstack/defaults/main.yml
@@ -160,6 +160,8 @@ kolla_openstack_custom_config_include_globs_default:
     glob: sahara/**
   - enabled: '{{ kolla_enable_swift | bool }}'
     glob: swift/**
+  - enabled: '{{ kolla_enable_telegraf | bool }}'
+    glob: telegraf/**
 
 # Extra items to add to kolla_openstack_custom_config_include_globs_default
 # to produce kolla_openstack_custom_config_include_globs.
@@ -272,6 +274,10 @@ kolla_openstack_custom_config_rules_default:
   - glob: "**/*wsgi*.conf"
     strategy: template
     priority: 1000
+  # NOTE(wszumksi): Telegraf uses toml for its configuration files
+  - glob: telegraf/**
+    strategy: template
+    priority: 1000
   # INI files
   - glob: "**/*.conf"
     strategy: "{{ kolla_openstack_custom_config_ini_merge_strategy_default }}"
@@ -830,3 +836,9 @@ kolla_extra_sahara:
 
 # Whether to enable swift.
 kolla_enable_swift: false
+
+###############################################################################
+# Telegraf configuration.
+
+# Whether to enable telegraf
+kolla_enable_telegraf: true
diff --git a/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml b/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml
index 13031d1b0..c4f8b701b 100644
--- a/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml
+++ b/ansible/roles/kolla-openstack/molecule/enable-everything/molecule.yml
@@ -147,6 +147,7 @@ provisioner:
           [extra-sahara.conf]
           foo=bar
         kolla_enable_swift: true
+        kolla_enable_telegraf: true
   lint:
     name: ansible-lint
 scenario:
diff --git a/doc/source/configuration/reference/kolla-ansible.rst b/doc/source/configuration/reference/kolla-ansible.rst
index 97bf88df5..b3e805637 100644
--- a/doc/source/configuration/reference/kolla-ansible.rst
+++ b/doc/source/configuration/reference/kolla-ansible.rst
@@ -749,6 +749,7 @@ which files are supported.
    ``sahara.conf``                 Sahara configuration.
    ``sahara/*``                    Extended sahara configuration.
    ``swift/*``                     Extended swift configuration.
+   ``telegraf/*``                  Extended Telegraf configuration.
    =============================== =======================================================
 
 Configuring an OpenStack Component
diff --git a/releasenotes/notes/support-custom-telegraf-config-30025972fac9883a.yaml b/releasenotes/notes/support-custom-telegraf-config-30025972fac9883a.yaml
new file mode 100644
index 000000000..1ae41511a
--- /dev/null
+++ b/releasenotes/notes/support-custom-telegraf-config-30025972fac9883a.yaml
@@ -0,0 +1,5 @@
+---
+features:
+  - |
+    Custom telegraf configuration is now supported. See :kayobe-doc:`Kayobe documentation on
+    configuring kolla-ansible services <configuration/reference/kolla-ansible.html>`.