Skip to content

Commit ef9bfe9

Browse files
Merge pull request openstack-k8s-operators#800 from yadneshk/configure_kepler_firewall
Add firewall rule to include Kepler port
2 parents ea70ed0 + 52b70a5 commit ef9bfe9

File tree

6 files changed

+80
-0
lines changed

6 files changed

+80
-0
lines changed

roles/edpm_telemetry_power_monitoring/molecule/default/prepare.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,25 @@
6767
become: true
6868
command: groupadd libvirt
6969

70+
- name: Create firewall directory
71+
become: true
72+
ansible.builtin.file:
73+
path: "/var/lib/edpm-config/firewall"
74+
state: directory
75+
owner: root
76+
group: root
77+
mode: '0750'
78+
79+
- name: open port 22 (edpm_nftables will active this later)
80+
become: true
81+
ansible.builtin.copy:
82+
dest: /var/lib/edpm-config/firewall/sshd-networks.yaml
83+
content: |
84+
- rule_name: 003 Allow SSH
85+
rule:
86+
proto: tcp
87+
dport: 22
88+
7089
- name: Create ceilometer.conf
7190
become: true
7291
ansible.builtin.copy:
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
- name: kepler rule source file exists
2+
become: true
3+
ansible.builtin.stat:
4+
path: "/var/lib/edpm-config/firewall/kepler.yaml"
5+
register: kepler_rule_source_exists
6+
- name: Assert kepler rule source file exists
7+
ansible.builtin.assert:
8+
that:
9+
- kepler_rule_source_exists.stat.exists
10+
fail_msg: "kepler rule source file does not exist"
11+
12+
- name: verify vnc nftables firewall rules
13+
block:
14+
- name: Run nft list command and grep for Kepler rule in EDPM_INPUT chain
15+
become: true
16+
ansible.builtin.shell: nft list table inet filter | awk '/chain EDPM_INPUT {/,/}/' | grep Kepler
17+
register: kepler_chain_exists
18+
- name: Assert that output from greping for VNC contains the correct rule
19+
assert:
20+
that:
21+
- item | regex_search('\s+tcp dport 8888 ct state new counter packets \d+ bytes \d+ accept comment\s+')
22+
loop: "{{ kepler_chain_exists.stdout_lines }}"

roles/edpm_telemetry_power_monitoring/molecule/default/verify.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,3 +50,6 @@
5050
- "Copying /var/lib/openstack/config/polling.yaml to /etc/ceilometer/polling.yaml"
5151
- "/usr/bin/ceilometer-polling --polling-namespaces ipmi --logfile /dev/stdout"
5252
- "Copying /var/lib/openstack/config/ceilometer-host-specific.conf to /etc/ceilometer/ceilometer.conf.d/02-ceilometer-host-specific.conf"
53+
54+
- name: ensure firewall is configured
55+
ansible.builtin.include_tasks: "test-helpers/kepler.yaml"

roles/edpm_telemetry_power_monitoring/tasks/main.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,3 +22,6 @@
2222

2323
- name: Install telemetry power monitoring services
2424
ansible.builtin.import_tasks: install.yml
25+
26+
- name: Post-install
27+
ansible.builtin.include_tasks: post-install.yml
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
---
2+
- name: Ensure firewall directory is present
3+
become: true
4+
ansible.builtin.file:
5+
path: "/var/lib/edpm-config/firewall/"
6+
state: directory
7+
owner: root
8+
group: root
9+
mode: '0750'
10+
11+
- name: Copy kepler firewall config
12+
become: true
13+
ansible.builtin.template:
14+
src: "firewall.yaml.j2"
15+
dest: "/var/lib/edpm-config/firewall/kepler.yaml"
16+
mode: "0640"
17+
18+
- name: Configure firewall for kepler
19+
ansible.builtin.include_role:
20+
name: osp.edpm.edpm_nftables
21+
tasks_from: "configure.yml"
22+
23+
- name: Reload firewall for kepler
24+
ansible.builtin.include_role:
25+
name: osp.edpm.edpm_nftables
26+
tasks_from: "run.yml"
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
# Generated via edpm_telemetry_power_monitoring
3+
- rule_name: 000 Allow Kepler traffic
4+
rule:
5+
proto: tcp
6+
dport:
7+
- "8888"

0 commit comments

Comments
 (0)