Skip to content

Commit 57a1181

Browse files
raukadahopenshift-merge-bot[bot]
authored andcommitted
Enable telemetry with remotewritereceiver
In uni03gamma job, telemetry is enabled but remotewritereceiver is not enabled. It is needed by watcher tempest plugin to push metrics using promtool over prometheus. This pr adds the patch file to enable remotewritereceiver on the controlplane. It also drops cifmw_edpm_prepare_kustomizations file as we moved the required config to enable telemetry in deploy_watcher_service playbook. Assisted-By: Gemini 2.5 Flash Signed-off-by: Chandan Kumar (raukadah) <raukadah@gmail.com>
1 parent ec4f1eb commit 57a1181

4 files changed

Lines changed: 56 additions & 43 deletions

File tree

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
---
2+
apiVersion: core.openstack.org/v1beta1
3+
kind: OpenStackControlPlane
4+
metadata:
5+
name: controlplane
6+
spec:
7+
telemetry:
8+
enabled: true
9+
template:
10+
ceilometer:
11+
enabled: true
12+
metricStorage:
13+
enabled: true
14+
customMonitoringStack:
15+
alertmanagerConfig:
16+
disabled: true
17+
prometheusConfig:
18+
enableRemoteWriteReceiver: true
19+
persistentVolumeClaim:
20+
resources:
21+
requests:
22+
storage: 20G
23+
replicas: 1
24+
scrapeInterval: 30s
25+
resourceSelector:
26+
matchLabels:
27+
service: metricStorage
28+
retention: 24h
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
---
2+
apiVersion: core.openstack.org/v1beta1
3+
kind: OpenStackControlPlane
4+
metadata:
5+
name: controlplane
6+
spec:
7+
telemetry:
8+
template:
9+
metricStorage:
10+
monitoringStack: null

ci/playbooks/deploy_watcher_service.yaml

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,23 @@
1111
PATH: "{{ cifmw_path }}"
1212
CTLPLANE_PATCH: "{{ watcher_ctlplane_patch | default( '{{ watcher_repo }}/ci/ctlplane_watcher_patch.yaml' ) }}"
1313
tasks:
14+
- name: Configure telemetry for watcher service
15+
when: deploy_watcher_service | default('true') | bool
16+
block:
17+
- name: Patch telemetry service to enable Remote Write Receiver
18+
cifmw.general.ci_script:
19+
output_dir: "{{ cifmw_basedir }}/artifacts"
20+
chdir: "{{ watcher_repo }}/ci/files"
21+
script: |
22+
oc patch openstackcontrolplane controlplane --type='merge' --patch-file configure_telemetry_for_watcher_service.yaml -n openstack
23+
oc patch openstackcontrolplane controlplane --type='merge' --patch-file remove-monitoring-stack-field.yaml -n openstack
24+
25+
- name: Wait for OpenStackControlPlane 'controlplane' to be redeployed
26+
ansible.builtin.command:
27+
cmd: >-
28+
oc wait OpenStackControlPlane controlplane --namespace=openstack
29+
--for=condition=Ready --timeout=10m
30+
1431
# If the watcher-operator installation is already included in the openstack-operator we don't need to install it as
1532
# an standalone operator.
1633
- name: Check if Watcher API resources are available
@@ -23,7 +40,6 @@
2340
- name: add watcher_installed_integrated fact, true if Watcher API resources exist
2441
set_fact:
2542
watcher_installed_integrated: "{{ watcher_api_resources.rc == 0 }}"
26-
2743
- name: Fetch dlrn md5_hash from DLRN repo
2844
when: fetch_dlrn_hash | default(true) | bool
2945
ansible.builtin.uri:

ci/scenarios/edpm.yml

Lines changed: 1 addition & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -23,49 +23,8 @@ post_deploy:
2323
combine({ 'watcher_repo': watcher_repo })
2424
}}
2525
26-
# controlplane customization to deploy telemetry service
27-
# customMonitoringStack is used here to allow us to enable
28-
# enableRemoteWriteReceiver, needed when pushing fake metrics
29-
# to Prometheus server, via watcher-tempest-plugin.
3026
cifmw_edpm_prepare_timeout: 60
31-
cifmw_edpm_prepare_kustomizations:
32-
- apiVersion: kustomize.config.k8s.io/v1beta1
33-
kind: Kustomization
34-
namespace: openstack
35-
patches:
36-
- patch: |-
37-
apiVersion: core.openstack.org/v1beta1
38-
kind: OpenStackControlPlane
39-
metadata:
40-
name: unused
41-
spec:
42-
telemetry:
43-
enabled: true
44-
template:
45-
metricStorage:
46-
enabled: true
47-
customMonitoringStack:
48-
alertmanagerConfig:
49-
disabled: true
50-
prometheusConfig:
51-
replicas: 1
52-
enableRemoteWriteReceiver: true
53-
scrapeInterval: 30s
54-
persistentVolumeClaim:
55-
resources:
56-
requests:
57-
storage: 20G
58-
resourceSelector:
59-
matchLabels:
60-
service: metricStorage
61-
retention: 24h
62-
target:
63-
kind: OpenStackControlPlane
64-
- patch: |-
65-
- op: remove
66-
path: /spec/telemetry/template/metricStorage/monitoringStack
67-
target:
68-
kind: OpenStackControlPlane
27+
6928
cifmw_install_yamls_whitelisted_vars:
7029
- 'WATCHER_REPO'
7130
- 'WATCHER_BRANCH'

0 commit comments

Comments
 (0)