Skip to content

Commit 0fdebaf

Browse files
Sai Sindhur Mallenirsevilla87
authored andcommitted
Enable simple NetworkPolicy
Signed-off-by: Sai Sindhur Malleni <[email protected]>
1 parent beccf9b commit 0fdebaf

File tree

11 files changed

+94
-0
lines changed

11 files changed

+94
-0
lines changed

deploy/20_role.yaml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,3 +90,15 @@ rules:
9090
- hyperfoils
9191
verbs:
9292
- '*'
93+
- apiGroups:
94+
- networking.k8s.io
95+
resources:
96+
- networkpolicies
97+
verbs:
98+
- get
99+
- list
100+
- watch
101+
- create
102+
- update
103+
- patch
104+
- delete

docs/uperf.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@ spec:
3434
serviceip: false
3535
runtime_class: class_name
3636
hostnetwork: false
37+
networkpolicy: false
3738
pin: false
3839
kind: pod
3940
pin_server: "node-0"
@@ -63,6 +64,8 @@ spec:
6364

6465
`hostnetwork` will test the performance of the node the pod will run on.
6566

67+
`networkpolicy` will create a simple networkpolicy for ingress
68+
6669
*Note:* If you want to run with hostnetwork on `OpenShift`, you will need to execute the following:
6770

6871
```bash

playbook.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,9 @@
8282

8383
- block:
8484

85+
- include_role:
86+
name: "common"
87+
8588
- include_role:
8689
name: "{{ workload.name }}"
8790
vars:

resources/crds/ripsaw_v1alpha1_uperf_cr.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ spec:
1515
args:
1616
serviceip: false
1717
hostnetwork: false
18+
networkpolicy: false
1819
pin: false
1920
multus:
2021
enabled: false

resources/crds/ripsaw_v1alpha1_uperf_vm.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ spec:
1515
args:
1616
hostnetwork: false # irrelevant for vms
1717
serviceip: false # irrelevant for vms
18+
networkpolicy: false
1819
pin: false
1920
pin_server: "node-0"
2021
pin_client: "node-1"

roles/common/tasks/main.yml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# common tasks across multiple roles go here
2+
- block:
3+
- name: Get Network Policy
4+
k8s_facts:
5+
kind: NetworkPolicy
6+
api_version: networking.k8s.io/v1
7+
namespace: '{{ operator_namespace }}'
8+
name: "{{ meta.name }}-networkpolicy-{{ trunc_uuid }}"
9+
register: network_policy
10+
11+
- name: Create Network policy if enabled
12+
k8s:
13+
definition: "{{ lookup('template', 'networkpolicy.yml.j2') | from_yaml }}"
14+
when: network_policy.resources | length < 1
15+
16+
when: workload.args.networkpolicy is defined and workload.args.networkpolicy
17+
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
kind: NetworkPolicy
2+
apiVersion: networking.k8s.io/v1
3+
metadata:
4+
name: "{{ meta.name }}-networkpolicy-{{ trunc_uuid }}"
5+
namespace: '{{ operator_namespace }}'
6+
spec:
7+
podSelector:
8+
matchLabels:
9+
type: "{{ meta.name }}-bench-server-{{ trunc_uuid }}"
10+
ingress:
11+
- from:
12+
- podSelector:
13+
matchLabels:
14+
type: "{{ meta.name }}-bench-client-{{ trunc_uuid }}"

roles/uperf/templates/workload.yml.j2

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ spec:
1414
labels:
1515
app: uperf-bench-client-{{ trunc_uuid }}
1616
clientfor: {{ item.metadata.labels.app }}
17+
type: uperf-bench-client-{{ trunc_uuid }}
1718
{% if workload_args.multus.enabled is sameas true %}
1819
annotations:
1920
k8s.v1.cni.cncf.io/networks: {{ workload_args.multus.client }}

roles/uperf/templates/workload_vm.yml.j2

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ metadata:
66
namespace: '{{ operator_namespace }}'
77
labels:
88
app: uperf-bench-client-{{ trunc_uuid }}
9+
type: uperf-bench-client-{{ trunc_uuid }}
910
spec:
1011
domain:
1112
cpu:
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
apiVersion: ripsaw.cloudbulldozer.io/v1alpha1
2+
kind: Benchmark
3+
metadata:
4+
name: example-benchmark
5+
namespace: my-ripsaw
6+
spec:
7+
elasticsearch:
8+
server: ES_SERVER
9+
port: ES_PORT
10+
index_name: ripsaw-uperf
11+
metadata:
12+
collection: true
13+
cleanup: false
14+
workload:
15+
name: uperf
16+
args:
17+
hostnetwork: false
18+
serviceip: false
19+
networkpolicy: true
20+
pin: false
21+
pin_server: "node-0"
22+
pin_client: "node-1"
23+
multus:
24+
enabled: false
25+
samples: 2
26+
pair: 1
27+
test_types:
28+
- stream
29+
- rr
30+
- bidirec
31+
protos:
32+
- tcp
33+
- udp
34+
sizes:
35+
- 1024
36+
- 512
37+
nthrs:
38+
- 1
39+
- 2
40+
runtime: 2

0 commit comments

Comments
 (0)