Skip to content

Commit f3c2e3d

Browse files
committed
SYS-687 final updates for Ubuntu 26.04
1 parent d977aea commit f3c2e3d

18 files changed

Lines changed: 92 additions & 58 deletions

File tree

ansible/roles/fileserver/defaults/main.yml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,11 @@ ubuntu_packages:
3131
- unison
3232
- vsftpd
3333

34-
virtualbox_defaults:
34+
# Virtualization technology: QEMU (default) and/or VirtualBox
35+
qemu:
3536
enabled: true
37+
virtualbox_defaults:
38+
enabled: false
3639
apt_repo:
3740
url: http://download.virtualbox.org/virtualbox/debian
3841
key_urls:

ansible/roles/fileserver/handlers/main.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@
44
name: smbd
55
state: restarted
66

7+
- name: Reload udev rules
8+
ansible.builtin.command: "{{ item }}"
9+
loop:
10+
- udevadm control --reload-rules
11+
- udevadm trigger
12+
become: yes
13+
714
- name: Restart vsftpd
815
service:
916
name: vsftpd

ansible/roles/fileserver/tasks/main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,9 @@
5151
enabled: no
5252
when: not samba.enabled
5353

54+
- import_tasks: qemu.yml
55+
when: qemu.enabled
56+
5457
- import_tasks: virtualbox.yml
5558
when: virtualbox.enabled
5659

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
- name: QEMU virt-manager package
3+
ansbile.builtin.package:
4+
name: virt-manager
5+
6+
- name: DBUS package to support virt-manager dconf under X11
7+
ansible.builtin.package:
8+
name: dbus-x11
9+
10+
- name: Set up udev permissions for libvirt group members
11+
ansible.builtin.copy:
12+
content: |
13+
# Managed by ansible
14+
ENV{DM_VG_NAME}=="virt", OWNER="libvirt-qemu", GROUP="libvirt", MODE="0660"
15+
dest: /etc/udev/rules.d/65-libvirt.rules
16+
notify: Reload udev rules

ansible/roles/kubernetes/tasks/cplane.yml

Lines changed: 13 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,19 @@
99
src: kubeadm-config-cplane.j2
1010
dest: /etc/kubernetes/kubeadm-config.yaml
1111

12+
- name: Directory for locally defined k8s objects
13+
ansible.builtin.file:
14+
mode: 0700
15+
path: /etc/kubernetes/local
16+
state: directory
17+
18+
- name: Set up encryption config in path available to kube-apiserver
19+
ansible.builtin.template:
20+
src: api-crypt.conf.j2
21+
dest: /etc/kubernetes/local/api-crypt.conf
22+
mode: 0600
23+
when: "'encryption_key' in vault_k8s"
24+
1225
# TODO: run_once is not supported with strategy: free
1326
- name: Init cluster if needed
1427
include_tasks: cplane_init.yml
@@ -65,18 +78,6 @@
6578
CPUAccounting=true
6679
MemoryAccounting=true
6780
68-
- name: Set up encryption config in path available to kube-apiserver
69-
ansible.builtin.template:
70-
src: secrets.conf.j2
71-
dest: /etc/kubernetes/pki/secrets.conf
72-
mode: 0600
73-
74-
- name: Adjust kube-apiserver config - encrypt etcd values
75-
ansible.builtin.lineinfile:
76-
path: /etc/kubernetes/manifests/kube-apiserver.yaml
77-
insertafter: etcd-servers=https://127.0.0.1:2379
78-
line: ' - --encryption-provider-config=/etc/kubernetes/pki/secrets.conf'
79-
8081
- name: Create / restrict directory for etcd backups
8182
ansible.builtin.file:
8283
dest: /var/backup/k8s
File renamed without changes.

ansible/roles/kubernetes/templates/kubeadm-config-cplane.j2

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ bootstrapTokens:
1212
groups:
1313
- system:bootstrappers:kubeadm:default-node-token
1414
localAPIEndpoint:
15-
advertiseAddress: {{ k8s.cplane_vip }}
15+
advertiseAddress: {{ k8s.cplane_hostip }}
1616
bindPort: 6443
1717
nodeRegistration:
1818
criSocket: {{ k8s.cri_socket }}
@@ -41,7 +41,7 @@ apiServer:
4141
- {{ k8s.cplane_vip }}
4242
extraArgs:
4343
- name: encryption-provider-config
44-
value: /etc/kubernetes/pki/secrets.conf
44+
value: /etc/kubernetes/local/api-crypt.conf
4545
- name: oidc-issuer-url
4646
value: {{ oidc.issuer_url }}
4747
- name: oidc-client-id
@@ -54,6 +54,15 @@ apiServer:
5454
value: {{ oidc.username_prefix }}
5555
- name: oidc-groups-prefix
5656
value: {{ oidc.group_prefix }}
57+
- name: oidc-ca-file
58+
value: {{ oidc.ca-file }}
59+
extraVolumes:
60+
- name: local-config
61+
hostPath: "/etc/kubernetes/local"
62+
mountPath: "/etc/kubernetes/local"
63+
readOnly: true
64+
pathType: DirectoryOrCreate
65+
controlPlaneEndpoint: "{{ k8s.cplane_vip }}:6443"
5766
dns:
5867
# Workaround for bug 112131; never got fixed as of k8s 1.31:
5968
# https://github.com/kubernetes/kubernetes/issues/112131

ansible/roles/monitoring_agent/files/plugins/check_drive_health.py

Lines changed: 12 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -129,13 +129,15 @@ def check_smart(drive, error_items, warn_temp, crit_temp, warn_spare):
129129

130130
if not dot_get(smart, 'smart_status.passed'):
131131
return STATUS_CRIT, 'CRIT: serial=%s smart_status not OK' % serial_num
132-
if temperature > crit_temp:
133-
return STATUS_CRIT, 'CRIT: %s serial=%s temp=%d exceeds threshold' % (
134-
drive, serial_num, temperature)
135-
elif temperature > warn_temp:
136-
status = STATUS_WARN
137-
message = 'WARN: %s serial=%s, temp=%d exceeds threshold' % (
138-
drive, serial_num, temperature)
132+
if temperature:
133+
if temperature > crit_temp:
134+
return STATUS_CRIT, \
135+
'CRIT: %s serial=%s temp=%d exceeds threshold' % (
136+
drive, serial_num, temperature)
137+
elif temperature > warn_temp:
138+
status = STATUS_WARN
139+
message = 'WARN: %s serial=%s, temp=%d exceeds threshold' % (
140+
drive, serial_num, temperature)
139141
if nvme_log:
140142
spare_threshold = max(nvme_log.get('available_spare_threshold', 0),
141143
warn_spare)
@@ -158,8 +160,9 @@ def check_smart(drive, error_items, warn_temp, crit_temp, warn_spare):
158160
'CRIT' if status == STATUS_CRIT else 'WARN',
159161
drive, serial_num, key, item['val'])
160162
if status == STATUS_OK:
161-
message = '%s OK: temp=%d serial=%s cap=%.3fT' % (
162-
drive, temperature, serial_num, capacity / 1e12)
163+
message = '%s OK:%s serial=%s cap=%.3fT' % (
164+
drive, ' temp=%s' % temperature if temperature else '', serial_num,
165+
capacity / 1e12)
163166
return status, message
164167

165168

ansible/roles/mythfrontend/tasks/setup.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,3 +27,8 @@
2727
mode: 0600
2828
owner: mythtv
2929
src: config.xml.j2
30+
31+
- name: MythTV command-line settings (fix for 4K resolution)
32+
ansible.builtin.template:
33+
dest: /etc/mythtv/session-settings
34+
src: session-settings.j2
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{{ ansible_managed | comment }}
2+
# Fix playback resolution when running on a 4K display under Wayland
3+
MYTHFRONTEND_OPTS="-platform xcb"

0 commit comments

Comments
 (0)