diff --git a/playbooks/common.yml b/playbooks/common.yml
index ae7bd7c864d2bfb983a6c67a03da2c22adac707f..d13eb4d010554d221586d00a022f22ee6a437316 100644
--- a/playbooks/common.yml
+++ b/playbooks/common.yml
@@ -51,3 +51,8 @@
 - hosts: data-exchange
   roles:
     - data-exchange
+
+- hosts: hark
+  roles:
+    - hark
+
diff --git a/roles/hark/defaults/main.yml b/roles/hark/defaults/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f43268decc59a622bca50151f71e13019cf186be
--- /dev/null
+++ b/roles/hark/defaults/main.yml
@@ -0,0 +1,15 @@
+---
+
+# Keep services.common.yml in sync with this variable.
+hark_ports:
+  - 23
+  - 79
+  - 88
+  - 111
+  - 161
+  - 631
+  - 1080
+  - 6000
+  - 8000
+  - 8080
+
diff --git a/roles/hark/handlers/main.yml b/roles/hark/handlers/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..2a7e60fdb20082dfb48785d59578ff07e39ac8ad
--- /dev/null
+++ b/roles/hark/handlers/main.yml
@@ -0,0 +1,7 @@
+---
+
+- listen: restart hark
+  systemd:
+    name: hark.service
+    state: restarted
+
diff --git a/roles/hark/tasks/main.yml b/roles/hark/tasks/main.yml
new file mode 100644
index 0000000000000000000000000000000000000000..f85f25be59b69cd865d50b7498319851ade12973
--- /dev/null
+++ b/roles/hark/tasks/main.yml
@@ -0,0 +1,13 @@
+---
+
+- name: Install hark package
+  apt:
+    name: hark
+    state: present
+
+- name: Configure har
+  template:
+    src: hark.default.j2
+    dest: "/etc/default/hark"
+  notify: restart hark
+
diff --git a/roles/hark/templates/hark.default.j2 b/roles/hark/templates/hark.default.j2
new file mode 100644
index 0000000000000000000000000000000000000000..9c1d3026d0ea763bbe574b66761436e22c78041e
--- /dev/null
+++ b/roles/hark/templates/hark.default.j2
@@ -0,0 +1,2 @@
+PORTS="{% for port in hark_ports %}--port {{ port }} {% endfor %}"
+
diff --git a/services.common.yml b/services.common.yml
index 4997787648217d49b1098f16d0a127fd151c616b..4151eb8fe129b58c2479c29baf373fb752948454 100644
--- a/services.common.yml
+++ b/services.common.yml
@@ -214,3 +214,24 @@ data-exchange:
     - name: data-exchange
       port: 5792
       scheme: http
+
+hark:
+  scheduling_group: all
+  monitoring_endpoints:
+    - job_name: hark
+      port: 9419
+      scheme: http
+  systemd_services:
+    - hark.service
+  ports:
+    - 23
+    - 79
+    - 88
+    - 111
+    - 161
+    - 631
+    - 1080
+    - 6000
+    - 8000
+    - 8080
+