diff --git a/roles/ipabackup/vars/CentOS-7.yml b/roles/ipabackup/vars/CentOS-7.yml
deleted file mode 100644
index 1186375745dd9beab8e22733f7582dbb9eeb188d..0000000000000000000000000000000000000000
--- a/roles/ipabackup/vars/CentOS-7.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipaserver
-# vars/rhel.yml
-ipaserver_packages: [ "ipa-server", "libselinux-python" ]
-ipaserver_packages_dns: [ "ipa-server-dns" ]
-ipaserver_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipaserver_packages_firewalld: [ "firewalld" ]
\ No newline at end of file
diff --git a/roles/ipabackup/vars/RedHat-7.3.yml b/roles/ipabackup/vars/RedHat-7.3.yml
deleted file mode 100644
index 1186375745dd9beab8e22733f7582dbb9eeb188d..0000000000000000000000000000000000000000
--- a/roles/ipabackup/vars/RedHat-7.3.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipaserver
-# vars/rhel.yml
-ipaserver_packages: [ "ipa-server", "libselinux-python" ]
-ipaserver_packages_dns: [ "ipa-server-dns" ]
-ipaserver_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipaserver_packages_firewalld: [ "firewalld" ]
\ No newline at end of file
diff --git a/roles/ipaclient/vars/CentOS-7.yml b/roles/ipaclient/vars/CentOS-7.yml
deleted file mode 100644
index 51ab7bfce86b6e0e81cfca4fb9d616936e18cd83..0000000000000000000000000000000000000000
--- a/roles/ipaclient/vars/CentOS-7.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-# defaults file for ipaclient
-# vars/rhel.yml
-ipaclient_packages: [ "ipa-client", "libselinux-python" ]
-#ansible_python_interpreter: '/usr/bin/python2'
diff --git a/roles/ipaclient/vars/Ubuntu.yml b/roles/ipaclient/vars/Ubuntu.yml
deleted file mode 100644
index ded2f5e0ed74371b3817386ed9f913667c668b76..0000000000000000000000000000000000000000
--- a/roles/ipaclient/vars/Ubuntu.yml
+++ /dev/null
@@ -1,2 +0,0 @@
-# vars/Ubuntu.yml
-ipaclient_packages: [ "freeipa-client" ]
diff --git a/roles/ipareplica/vars/CentOS-7.yml b/roles/ipareplica/vars/CentOS-7.yml
deleted file mode 100644
index 614de3e5a4c20c71714a1a0c7dc96b8f7e4c8ff7..0000000000000000000000000000000000000000
--- a/roles/ipareplica/vars/CentOS-7.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipareplica
-# vars/RedHat-7.yml
-ipareplica_packages: [ "ipa-server", "libselinux-python" ]
-ipareplica_packages_dns: [ "ipa-server-dns" ]
-ipareplica_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipareplica_packages_firewalld: [ "firewalld" ]
\ No newline at end of file
diff --git a/roles/ipareplica/vars/RedHat-7.3.yml b/roles/ipareplica/vars/RedHat-7.3.yml
deleted file mode 100644
index a0e7ffea6522f2150289c71281096b4cca416729..0000000000000000000000000000000000000000
--- a/roles/ipareplica/vars/RedHat-7.3.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipareplica
-# vars/RedHat-7.3.yml
-ipareplica_packages: [ "ipa-server", "libselinux-python" ]
-ipareplica_packages_dns: [ "ipa-server-dns" ]
-ipareplica_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipareplica_packages_firewalld: [ "firewalld" ]
\ No newline at end of file
diff --git a/roles/ipaserver/tasks/main.yml b/roles/ipaserver/tasks/main.yml
index c4e1bd7c6f04dbc3922371164706cb263c65f7ce..23f8aec4fd2e52e8c5c0126a39b5b648e64e604a 100644
--- a/roles/ipaserver/tasks/main.yml
+++ b/roles/ipaserver/tasks/main.yml
@@ -7,6 +7,13 @@
     - "vars/{{ ansible_facts['distribution'] }}-{{ ansible_facts['distribution_version'] }}.yml"
     - "vars/{{ ansible_facts['distribution'] }}-{{ ansible_facts['distribution_major_version'] }}.yml"
     - "vars/{{ ansible_facts['distribution'] }}.yml"
+    # os_family is used as a fallback for distros which are not currently
+    # supported, but are based on a supported distro family. For example,
+    # Oracle, Rocky, Alma and Alibaba linux, which are all "RedHat" based.
+    - "vars/{{ ansible_facts['os_family'] }}-{{ ansible_facts['distribution_version'] }}.yml"
+    - "vars/{{ ansible_facts['os_family'] }}-{{ ansible_facts['distribution_major_version'] }}.yml"
+    - "vars/{{ ansible_facts['os_family'] }}.yml"
+    # If neither distro nor family is supported, try a default configuration.
     - "vars/default.yml"
 
 - name: Install IPA server
diff --git a/roles/ipaserver/vars/CentOS-7.yml b/roles/ipaserver/vars/CentOS-7.yml
deleted file mode 100644
index 1186375745dd9beab8e22733f7582dbb9eeb188d..0000000000000000000000000000000000000000
--- a/roles/ipaserver/vars/CentOS-7.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipaserver
-# vars/rhel.yml
-ipaserver_packages: [ "ipa-server", "libselinux-python" ]
-ipaserver_packages_dns: [ "ipa-server-dns" ]
-ipaserver_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipaserver_packages_firewalld: [ "firewalld" ]
\ No newline at end of file
diff --git a/roles/ipaserver/vars/CentOS-8.yml b/roles/ipaserver/vars/CentOS-8.yml
deleted file mode 120000
index d49e1cd5933d80e1140d65b1fcd941afebc661dd..0000000000000000000000000000000000000000
--- a/roles/ipaserver/vars/CentOS-8.yml
+++ /dev/null
@@ -1 +0,0 @@
-RedHat-8.yml
\ No newline at end of file
diff --git a/roles/ipaserver/vars/OracleLinux-7.yml b/roles/ipaserver/vars/OracleLinux-7.yml
deleted file mode 120000
index 852b838dc369fbea945b46c9ab8bccff3cb344e3..0000000000000000000000000000000000000000
--- a/roles/ipaserver/vars/OracleLinux-7.yml
+++ /dev/null
@@ -1 +0,0 @@
-RedHat-7.yml
\ No newline at end of file
diff --git a/roles/ipaserver/vars/OracleLinux-8.yml b/roles/ipaserver/vars/OracleLinux-8.yml
deleted file mode 120000
index d49e1cd5933d80e1140d65b1fcd941afebc661dd..0000000000000000000000000000000000000000
--- a/roles/ipaserver/vars/OracleLinux-8.yml
+++ /dev/null
@@ -1 +0,0 @@
-RedHat-8.yml
\ No newline at end of file
diff --git a/roles/ipaserver/vars/RedHat-7.3.yml b/roles/ipaserver/vars/RedHat-7.3.yml
deleted file mode 100644
index 1186375745dd9beab8e22733f7582dbb9eeb188d..0000000000000000000000000000000000000000
--- a/roles/ipaserver/vars/RedHat-7.3.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-# defaults file for ipaserver
-# vars/rhel.yml
-ipaserver_packages: [ "ipa-server", "libselinux-python" ]
-ipaserver_packages_dns: [ "ipa-server-dns" ]
-ipaserver_packages_adtrust: [ "ipa-server-trust-ad" ]
-ipaserver_packages_firewalld: [ "firewalld" ]
\ No newline at end of file