diff --git a/ansible/ceph-block-devices.yml b/ansible/ceph-block-devices.yml
index 4912f605c25cfe963c6ff3a17f1e5989cd036c17..88c3a4e1954b9e038cc9185c9382e74ee7705d12 100644
--- a/ansible/ceph-block-devices.yml
+++ b/ansible/ceph-block-devices.yml
@@ -1,9 +1,8 @@
 ---
 - name: Ensure Ceph disk are tagged
-  hosts: overcloud 
+  hosts: overcloud
   tags:
     - kolla-ceph
   roles:
-    - role: stackhpc.parted-1-1
     - role: kolla-ceph
       when: kolla_enable_ceph | bool
diff --git a/ansible/roles/kolla-ansible/tasks/install.yml b/ansible/roles/kolla-ansible/tasks/install.yml
index 63b06e46143b0795264e78733f407395e5a09fd6..dbc01bb484a784a233eaeb3b2d34bae36a637c90 100644
--- a/ansible/roles/kolla-ansible/tasks/install.yml
+++ b/ansible/roles/kolla-ansible/tasks/install.yml
@@ -71,5 +71,6 @@
     dest: "{{ kolla_ansible_venv }}/lib/python2.7/site-packages/selinux"
     state: link
   when:
+    - ansible_os_family == 'RedHat'
     - ansible_selinux != False
     - ansible_selinux.status != 'disabled'
diff --git a/ansible/roles/kolla-ansible/templates/requirements.txt.j2 b/ansible/roles/kolla-ansible/templates/requirements.txt.j2
index 583728426c819d2a561d4603e80b59bcf46fd441..c76337300793f64b0dc70ffbeb8e337580b47c43 100644
--- a/ansible/roles/kolla-ansible/templates/requirements.txt.j2
+++ b/ansible/roles/kolla-ansible/templates/requirements.txt.j2
@@ -7,4 +7,4 @@ kolla-ansible=={{ kolla_openstack_release }}
 {% endif %}
 # Limit the version of ansible used by kolla-ansible to avoid new releases from
 # breaking tested code. Changes to this limit should be tested.
-ansible<2.4
+ansible<2.6
diff --git a/ansible/roles/kolla-ceph/tasks/config.yml b/ansible/roles/kolla-ceph/tasks/config.yml
index 0a542b30e8e3df768eebbbce06f36ed007b4d253..ee5b29d411aa8d86497eaf863193dc543a424ab5 100644
--- a/ansible/roles/kolla-ceph/tasks/config.yml
+++ b/ansible/roles/kolla-ceph/tasks/config.yml
@@ -1,5 +1,4 @@
 ---
-# (ktibi) Need to remove parted_1_1 module when kayobe will support ansible 2.4
 
 - name: Ensure required packages are installed
   package:
@@ -10,18 +9,18 @@
 
 - name: Check the presence of a partition on the OSD disks
   become: True
-  parted_1_1:
+  parted:
     device: "{{ item.osd }}"
   with_items: "{{ ceph_disks }}"
   register: "disk_osd_info"
 
 - name: Check the presence of a partition on the journal disks
   become: True
-  parted_1_1:
+  parted:
     device: "{{ item.journal }}"
   with_items: "{{ ceph_disks }}"
   register: "disk_journal_info"
-  when: 
+  when:
     - item.journal is defined
 
 - name: Fail if the Ceph OSD disks have already a partition
@@ -51,7 +50,7 @@
 
 - name: Create tag partition for Ceph OSD
   become: True
-  parted_1_1:
+  parted:
     device: "{{ item.item.osd }}"
     number: 1
     label: gpt
@@ -68,7 +67,7 @@
 
 - name: Create tag partition for Ceph external journal
   become: True
-  parted_1_1:
+  parted:
     device: "{{ item.item.journal }}"
     number: 1
     label: gpt
diff --git a/ansible/roles/kolla-ceph/tests/test-bootstrapped-journal.yml b/ansible/roles/kolla-ceph/tests/test-bootstrapped-journal.yml
index a32fd17710b25a40373c46e045214a8d4df5ad86..077dfa53a1306bf1c3690b438d298e3791cb6802 100644
--- a/ansible/roles/kolla-ceph/tests/test-bootstrapped-journal.yml
+++ b/ansible/roles/kolla-ceph/tests/test-bootstrapped-journal.yml
@@ -22,7 +22,7 @@
 
     - name: Create tag partition for the fake OSD
       become: True
-      parted_1_1:
+      parted:
         device: "{{ osd_tempfile.path }}"
         number: 1
         label: gpt
@@ -34,7 +34,7 @@
 
     - name: Create tag partition for the fake journal
       become: True
-      parted_1_1:
+      parted:
         device: "{{ journal_tempfile.path }}"
         number: 1
         label: gpt
@@ -45,10 +45,6 @@
         osd_id: "{{ osd_tempfile.path | basename }}{{ ansible_hostname }}"
 
     - block:
-        - name: Import parted role
-          include_role:
-            name: ../../stackhpc.parted-1-1
-
         - name: Test the kolla-ceph role
           include_role:
             name:  ../../kolla-ceph
@@ -58,7 +54,7 @@
                    journal: "{{ journal_tempfile.path }}"
 
         - name: Get name of fake OSD partition
-          parted_1_1:
+          parted:
             device: "{{ osd_tempfile.path }}"
           register: "disk_osd_info"
           become: True
@@ -80,7 +76,7 @@
             expected: "{{ 'KOLLA_CEPH_OSD_BOOTSTRAP_' ~ ((osd_tempfile.path | basename ~ ansible_hostname) | hash('md5'))[:9] }}"
 
         - name: Get name of fake journal partition
-          parted_1_1:
+          parted:
             device: "{{ journal_tempfile.path }}"
           register: "disk_journal_info"
           become: True
diff --git a/ansible/roles/kolla-ceph/tests/test-data-journal.yml b/ansible/roles/kolla-ceph/tests/test-data-journal.yml
index 6fdf489bf5dca2f4e48965fe155d52afdb45ca3e..30b94caf0a21f76ad3e1189c6a141152cdac3f5f 100644
--- a/ansible/roles/kolla-ceph/tests/test-data-journal.yml
+++ b/ansible/roles/kolla-ceph/tests/test-data-journal.yml
@@ -21,7 +21,7 @@
 
     - name: Create tag partition for the fake OSD
       become: True
-      parted_1_1:
+      parted:
         device: "{{ osd_tempfile.path }}"
         number: 1
         label: gpt
@@ -33,7 +33,7 @@
 
     - name: Create tag partition for the fake journal
       become: True
-      parted_1_1:
+      parted:
         device: "{{ journal_tempfile.path }}"
         number: 1
         label: gpt
@@ -44,10 +44,6 @@
         osd_id: "{{ (osd_tempfile.path | basename ~ ansible_hostname) }}"
 
     - block:
-        - name: Import parted role
-          include_role:
-            name: ../../stackhpc.parted-1-1
-
         - name: Test the kolla-ceph role
           include_role:
             name:  ../../kolla-ceph
@@ -57,7 +53,7 @@
                    journal: "{{ journal_tempfile.path }}"
 
         - name: Get name of fake OSD partition
-          parted_1_1:
+          parted:
             device: "{{ osd_tempfile.path }}"
           register: "disk_osd_info"
           become: True
@@ -79,7 +75,7 @@
             expected: "{{ 'KOLLA_CEPH_DATA_' ~ ((osd_tempfile.path | basename ~ ansible_hostname)| hash('md5'))[:9] }}"
 
         - name: Get name of fake journal partition
-          parted_1_1:
+          parted:
             device: "{{ journal_tempfile.path }}"
           register: "disk_journal_info"
           become: True
diff --git a/ansible/roles/kolla-ceph/tests/test-journal.yml b/ansible/roles/kolla-ceph/tests/test-journal.yml
index 850a805fc3d560b6103315555ca1dd89e7659ce1..8e568210efc9204b8ca55b7e68564925749f3ed2 100644
--- a/ansible/roles/kolla-ceph/tests/test-journal.yml
+++ b/ansible/roles/kolla-ceph/tests/test-journal.yml
@@ -20,10 +20,6 @@
       command: fallocate -l 10M {{ journal_tempfile.path }}
 
     - block:
-        - name: Import parted role
-          include_role:
-            name: ../../stackhpc.parted-1-1
-
         - name: Test the kolla-ceph role
           include_role:
             name:  ../../kolla-ceph
@@ -33,7 +29,7 @@
                    journal: "{{ journal_tempfile.path }}"
 
         - name: Get name of fake OSD partition
-          parted_1_1:
+          parted:
             device: "{{ osd_tempfile.path }}"
           register: "disk_osd_info"
           become: True
@@ -55,7 +51,7 @@
             expected: "{{ 'KOLLA_CEPH_OSD_BOOTSTRAP_' ~ ((osd_tempfile.path | basename ~ ansible_hostname)| hash('md5'))[:9] }}"
 
         - name: Get name of fake journal partition
-          parted_1_1:
+          parted:
             device: "{{ journal_tempfile.path }}"
           register: "disk_journal_info"
           become: True
diff --git a/ansible/roles/kolla-ceph/tests/test-no-journal.yml b/ansible/roles/kolla-ceph/tests/test-no-journal.yml
index 8c0dec3f8fe217d0061470a4b7b9b209c61700de..ec164f4a19683e13d05fd09f85f7fb049b4bdffb 100644
--- a/ansible/roles/kolla-ceph/tests/test-no-journal.yml
+++ b/ansible/roles/kolla-ceph/tests/test-no-journal.yml
@@ -13,10 +13,6 @@
       command: fallocate -l 10M {{ tempfile.path }}
 
     - block:
-        - name: Import parted role
-          include_role:
-            name: ../../stackhpc.parted-1-1
-
         - name: Test the kolla-ceph role
           include_role:
             name:  ../../kolla-ceph
@@ -25,7 +21,7 @@
                  - osd: "{{ tempfile.path }}"
 
         - name: Get name of fake partition
-          parted_1_1:
+          parted:
             device: "{{ tempfile.path }}"
           register: "disk_osd_info"
           become: True
diff --git a/releasenotes/notes/ansible-2.5-785e3c764f450d09.yaml b/releasenotes/notes/ansible-2.5-785e3c764f450d09.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ccce47a4c366a6877215d346630aa1b87c0009ce
--- /dev/null
+++ b/releasenotes/notes/ansible-2.5-785e3c764f450d09.yaml
@@ -0,0 +1,4 @@
+---
+features:
+  - Adds support for the Ansible 2.5 release.  The version requirement has been
+    increased for both kayobe and kolla ansible.
diff --git a/requirements.txt b/requirements.txt
index 7cab5504820414254f4ac1118e42568452497ea9..1753d82a72f5f8774ce40359017df8fc63f75e8c 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -7,7 +7,7 @@ pbr>=2.0 # Apache-2.0
 # with the fix backported. It can be installed by uncommenting the following
 # line and commenting the one after.
 # -e git+https://github.com/stackhpc/ansible@issue-30350-2.3#egg=ansible-issue-30350-2.3 # GPLv3
-ansible<2.4.0 # GPLv3
+ansible>=2.4.0,<2.6.0 # GPLv3
 cliff>=2.5.0 # Apache
 netaddr!=0.7.16,>=0.7.13 # BSD
 PyYAML>=3.10.0 # MIT
diff --git a/requirements.yml b/requirements.yml
index c0ae60f73d6dffe31f46d8b5f8cfbcd5bff7ea72..0cc06d6883fd1526e386b0165412644145c3e7b5 100644
--- a/requirements.yml
+++ b/requirements.yml
@@ -8,7 +8,6 @@
 - src: https://github.com/stackhpc/ansible-users
   version: append
   name: singleplatform-eng.users
-- src: stackhpc.parted-1-1
 - src: stackhpc.drac
 - src: stackhpc.drac-facts
 - src: stackhpc.grafana-conf