From b75f585bd37fa295cc28b78b91d130ffe1fda39c Mon Sep 17 00:00:00 2001
From: Vladimir Still <git@vstill.eu>
Date: Tue, 25 Jan 2022 07:38:11 +0100
Subject: [PATCH] ansible: Antea setup

---
 ansible/antea.yml                        | 97 ++++++++++++++++++++++++
 ansible/files/antea/iscsi-thecus.service | 22 ++++++
 2 files changed, 119 insertions(+)
 create mode 100644 ansible/antea.yml
 create mode 100644 ansible/files/antea/iscsi-thecus.service

diff --git a/ansible/antea.yml b/ansible/antea.yml
new file mode 100644
index 0000000..94ddbe2
--- /dev/null
+++ b/ansible/antea.yml
@@ -0,0 +1,97 @@
+- name: antea
+  hosts: antea.fi.muni.cz
+  vars:
+    postgres_server: false
+    nftables:
+      pds_local: true
+      nfs: true
+      snmp: false
+    backup_users:
+      - name: pontos01
+        uid: 502
+      - name: pontos02
+        uid: 501
+      - name: pontos03
+        uid: 500
+      - name: pontos04
+        uid: 995
+      - name: antea
+        uid: 993
+      - name: anna
+        uid: 504
+      - name: hesperia
+        uid: 505
+
+  tasks:
+      - fail:
+          msg: possibly wrong server?
+        when: ansible_distribution != 'Debian'
+
+      - import_role:
+          name: common_deb
+
+      - name: "Setup iSCSI"
+        block:
+          - name: "Instal iSCSI"
+            apt:
+              pkg:
+                - open-iscsi
+
+          - name: "setup iSCSI service"
+            copy:
+              src: antea/iscsi-thecus.service
+              dest: /etc/systemd/system
+            register: iscsi_service_file
+
+          - name: "enable & start iSCSI service"
+            systemd:
+              name: "iscsi-thecus"
+              state: '{{"re" if iscsi_service_file.changed else ""}}started'
+              enabled: true
+              daemon_reload: '{{iscsi_service_file.changed}}'
+
+          - name: "iSCSI: backup-tar in fstab"
+            mount:
+              path: "/backup-tar"
+              src: '/dev/vg.antea.thecus/backup-tar'
+              fstype: "xfs"
+              opts: "noauto,nofail,_netdev,relatime,attr2,inode64,noquota,x-systemd.automount,x-systemd-requires=iscsi-thecus.service"
+              state: "mounted"
+
+      - name: "Backup users & groups"
+        block:
+          - name: Backup group
+            group:
+              name: 'backup-remote'
+              gid: 502
+
+          - name: Backup users
+            user:
+              name: 'backup-{{item.name}}'
+              uid: '{{item.uid}}'
+              home: '/backup-tar/{{item.name}}'
+              group: 'backup-remote'
+              shell: /bin/bash
+            loop: "{{backup_users}}"
+
+          - name: "Aug group for backups"
+            group:
+              name: 'backup-aux'
+              gid: 501
+
+          - name: "Aux users for backups"
+            user:
+              name: 'checker' # for checker@hesperia
+              uid: 1001
+              shell: '/usr/sbin/nologin'
+              home: '/var/empty'
+              group: 'backup-aux'
+
+      - import_role:
+          name: pds_mount
+
+#      - import_role:
+#          name: ghc_deb
+
+      - import_role:
+          name: pds_deb
diff --git a/ansible/files/antea/iscsi-thecus.service b/ansible/files/antea/iscsi-thecus.service
new file mode 100644
index 0000000..607173a
--- /dev/null
+++ b/ansible/files/antea/iscsi-thecus.service
@@ -0,0 +1,22 @@
+# Managed by ansible
+[Unit]
+Description=Connect THECUS iSCSI disks
+Requires=dhcpcd.service
+After=dhcpcd.service
+Wants=network.target
+# Before=network.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+# ExecStart=/usr/bin/ip link set up dev enp1s0f1
+ExecStart=/usr/bin/ip addr add 192.168.0.10/24 dev enp1s0f1
+ExecStart=/usr/bin/iscsiadm -m discovery -t sendtargets -p 192.168.0.100
+# ExecStart=/usr/bin/iscsiadm -m node --targetname=iqn.2016-04.com.thecus.n8800prov2:iscsi.3x4t.raid0 --login -p 192.168.0.100
+# ExecStart=/usr/bin/iscsiadm -m node --targetname=iqn.2016-12.com.thecus.n8800prov2:iscsi.raid5b.raid1 --login -p 192.168.0.100
+ExecStart=/usr/bin/iscsiadm -m node --targetname=iqn.2016-12.com.thecus.n8800prov2:iscsi.raid5b.raid0 --login -p 192.168.0.100
+ExecStart=/usr/bin/iscsiadm -m node --targetname=iqn.2021-08.com.thecus.n8800prov2:iscsi.single4ta.raid1 --login -p 192.168.0.100
+ExecStart=/usr/bin/iscsiadm -m node --targetname=iqn.2021-09.com.thecus.n8800prov2:iscsi.single4tb.raid2 --login -p 192.168.0.100
+
+[Install]
+WantedBy=multi-user.target
-- 
GitLab