diff --git a/roles/prometheus-node-exporter/files/apt-obsolete.sh b/roles/prometheus-node-exporter/files/apt-obsolete.sh
new file mode 100755
index 0000000000000000000000000000000000000000..8c0e69d6abc2ed5af1d2dcb58749a0c9d3f872e3
--- /dev/null
+++ b/roles/prometheus-node-exporter/files/apt-obsolete.sh
@@ -0,0 +1,11 @@
+#!/bin/bash
+obsolete="$(comm -23 \
+  <(dpkg-query -W -f '${db:Status-Abbrev}\t${Package}\n' \
+    | grep '^.[^nc]' | cut -f2 | sort) \
+  <(apt-cache dumpavail | sed -rn 's/^Package: (.*)/\1/p' | sort -u) \
+  | awk 'END{printf "apt_obsolete %d", NR}'
+)"
+
+echo "# HELP apt_obsolete Apt obsolete package."
+echo "# TYPE apt_obsolete gauge"
+echo "$obsolete"
diff --git a/roles/prometheus-node-exporter/files/apt.sh b/roles/prometheus-node-exporter/files/apt.sh
old mode 100755
new mode 100644
index 7333a6746d7ec87c6fbaae3bea69f441d46f7172..f50f7f24930ab2aeb143e10aebe47f339b016582
--- a/roles/prometheus-node-exporter/files/apt.sh
+++ b/roles/prometheus-node-exporter/files/apt.sh
@@ -19,11 +19,11 @@ autoremove="$(/usr/bin/apt-get --just-print autoremove \
   | /usr/bin/awk '/^Remv/{a++}END{printf "apt_autoremove_pending %d", a}'
 )"
 
-orphans="$(comm -23 \
+obsolete="$(comm -23 \
   <(dpkg-query -W -f '${db:Status-Abbrev}\t${Package}\n' \
     | grep '^.[^nc]' | cut -f2 | sort) \
   <(apt-cache dumpavail | sed -rn 's/^Package: (.*)/\1/p' | sort -u) \
-  | awk 'END{printf "apt_orphans %d", NR}'
+  | awk 'END{printf "apt_obsolete %d", NR}'
 )"
 
 echo '# HELP apt_upgrades_pending Apt package pending updates by origin.'
@@ -38,9 +38,9 @@ echo '# HELP apt_autoremove_pending Apt package pending autoremove.'
 echo '# TYPE apt_autoremove_pending gauge'
 echo "${autoremove}"
 
-echo '# HELP apt_orphans Orphan apt package.'
-echo '# TYPE apt_orphans gauge'
-echo "${orphans}"
+echo "# HELP apt_obsolete Apt obsolete package."
+echo "# TYPE apt_obsolete gauge"
+echo "$obsolete"
 
 echo '# HELP node_reboot_required Node reboot is required for software updates.'
 echo '# TYPE node_reboot_required gauge'
diff --git a/roles/prometheus-node-exporter/tasks/main.yml b/roles/prometheus-node-exporter/tasks/main.yml
index 198fc087159665a9def35c0cbff0353918f1bb42..f2752d2a272e549ceba4e053dfc6714159a2e16a 100644
--- a/roles/prometheus-node-exporter/tasks/main.yml
+++ b/roles/prometheus-node-exporter/tasks/main.yml
@@ -38,10 +38,32 @@
     dest: /etc/systemd/system/prometheus-node-exporter.service.d/override.conf
   register: override
 
+- name: Deploy APT obsolete collector
+  copy:
+    src: apt-obsolete.sh
+    dest: /usr/share/prometheus-node-exporter-collectors/apt-obsolete.sh
+    owner: root
+    group: root
+    mode: 0755
+  when: ansible_distribution_release == "bullseye"
+
+- name: Create /etc/systemd/system/prometheus-node-exporter-apt.service.d/
+  file:
+    path: /etc/systemd/system/prometheus-node-exporter-apt.service.d/
+    state: directory
+  when: ansible_distribution_release == "bullseye"
+
+- name: Patch prometheus-node-exporter-apt service
+  template:
+    src: systemd/system/prometheus-node-exporter-apt.service.d/override.conf.j2
+    dest: /etc/systemd/system/prometheus-node-exporter-apt.service.d/override.conf
+  register: apt_override
+  when: ansible_distribution_release == "bullseye"
+
 - name: systemctl daemon-reload
   systemd:
     daemon_reload: true
-  when: override.changed
+  when: override.changed or ( apt_override is defined and apt_override.changed )
 
 - name: Activate prometheus-node-exporter service
   systemd:
diff --git a/roles/prometheus-node-exporter/templates/systemd/system/prometheus-node-exporter-apt.service.d/override.conf.j2 b/roles/prometheus-node-exporter/templates/systemd/system/prometheus-node-exporter-apt.service.d/override.conf.j2
new file mode 100644
index 0000000000000000000000000000000000000000..ca231172711af7afdd813e1d5a90579acc6049e6
--- /dev/null
+++ b/roles/prometheus-node-exporter/templates/systemd/system/prometheus-node-exporter-apt.service.d/override.conf.j2
@@ -0,0 +1,3 @@
+[Service]
+ExecStart=
+ExecStart=/bin/bash -c "cat <(/usr/share/prometheus-node-exporter-collectors/apt.sh) <(/usr/share/prometheus-node-exporter-collectors/apt-obsolete.sh) | sponge /var/lib/prometheus/node-exporter/apt.prom"