Skip to content

Commit 34251de

Browse files
committed
Add playbook to set SMT on worker nodes
1 parent 2fdcb58 commit 34251de

File tree

5 files changed

+37
-4
lines changed

5 files changed

+37
-4
lines changed
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
---
2-
node_type: master
2+
node_type: master
3+
smt_level: 8
Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
---
2-
node_type: worker
2+
node_type: worker
3+
smt_level: 4

kubetest2-tf/data/k8s-ansible/install-k8s-ha.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,13 @@
2222
- download-k8s
2323
- install-k8s
2424

25+
- name: Set desired SMT levels on nodes
26+
hosts:
27+
- masters
28+
- workers
29+
roles:
30+
- set-smt
31+
2532
- name: Install networking - calico
2633
hosts: masters
2734
roles:

kubetest2-tf/data/k8s-ansible/patch-nodes.yaml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
- masters
44
- workers
55
roles:
6-
- role: update-node-os
6+
- update-node-os
77

88
- name: Reboot Kubernetes nodes one-by-one
99
hosts:
@@ -12,4 +12,11 @@
1212
serial: 1
1313
become: yes
1414
roles:
15-
- role: reboot-sequentially
15+
- reboot-sequentially
16+
17+
- name: Set desired SMT levels on nodes
18+
hosts:
19+
- masters
20+
- workers
21+
roles:
22+
- set-smt
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
- name: Resolve Kubernetes node name from inventory IP
2+
shell: |
3+
kubectl get nodes -o jsonpath="{range .items[*]}{.metadata.name} {.status.addresses[?(@.type=='InternalIP')].address}{'\n'}{end}" \
4+
--kubeconfig {{ kubeconfig_path }} | grep {{ inventory_hostname }} | awk '{print $1}'
5+
register: node_name
6+
delegate_to: "{{ groups['masters'][0] }}"
7+
8+
- name: Add SMT level label to node
9+
shell: |
10+
kubectl label node/{{ node_name.stdout }} feature.node.kubernetes.io/ppc64le.smtlevel="{{ smt_level }}" --overwrite
11+
delegate_to: "{{ groups['masters'][0] }}"
12+
13+
- name: Set SMT level
14+
shell: ppc64_cpu --smt={{ smt_level }}
15+
16+
- name: Restart kubelet to update the node's capacity at the cluster level
17+
shell: systemctl restart kubelet

0 commit comments

Comments
 (0)