Skip to content

Commit d352973

Browse files
committed
Add optional deployment steps
- Create a new 4th step in the deployment guide in README for deploying dependencies and updating images required for some of the telemetry services. - The note for deploying COO was moved from the bottom of the README to this new step - It's beneficial to execute these steps before deploying the dataplane, so that an updated ceilometer is deployed on the compute nodes. - Files in the ci/ folder were modified slightly to work when executed locally.
1 parent d3ea47b commit d352973

8 files changed

Lines changed: 75 additions & 20 deletions

README.md

Lines changed: 46 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,45 @@ This operator deploys a multiple telemetry agents, both in the control plane and
3535
make openstack_deploy
3636
```
3737

38-
4. Deploy dataplane operator
38+
4. (Optional) Set-up prerequisites and update services
39+
40+
NOTE: Execute this step from the telemetry-operator directory
41+
42+
4.a. Deploy COO (required for metric-storage):
43+
44+
```bash
45+
ansible-playbook ci/create-coo-subscription-playbook.yaml
46+
```
47+
48+
4.b. Deploy loki-operator and minio (required for cloudkitty):
49+
50+
```bash
51+
ansible-playbook ci/cloudkitty-pre_deploy-install_loki.yml
52+
```
53+
54+
4.c. Deploy loki-operator, minio, CLO (required for logging):
55+
56+
NOTE: 4.b is a subset of this. Either one of the steps or both can be run.
57+
58+
```bash
59+
ansible-playbook ci/deploy-logging-dependencies.yml --tags clo
60+
```
61+
62+
4.d. Update openstack services
63+
64+
NOTE: This can be done later except for updating ceilometer, which should be done before deploying the dataplane.
65+
66+
```bash
67+
oc patch --type merge openstackversions openstack-galera-network-isolation --patch-file=ci/files/master-aodh-patch.yaml # required for autoscaling
68+
oc patch --type merge openstackversions openstack-galera-network-isolation --patch-file=ci/files/master-ceilometer-patch.yaml # required for ceilometer compute metrics
69+
oc patch --type merge openstackversions openstack-galera-network-isolation --patch-file=ci/files/master-cloudkitty-patch.yaml # required for cloudkitty
70+
oc patch --type merge openstackversions openstack-galera-network-isolation --patch-file=ci/files/master-heat-patch.yaml # required for autoscaling
71+
oc patch --type merge openstackversions openstack-galera-network-isolation --patch-file=ci/files/master-openstackclient-patch.yaml # required for "openstack metric" commands to work correctly
72+
```
73+
74+
Return to the install_yamls directory before continuing.
75+
76+
5. Deploy dataplane operator
3977

4078
```bash
4179
DATAPLANE_TOTAL_NODES=2 DATAPLANE_NTP_SERVER=clock.redhat.com make edpm_deploy
@@ -49,21 +87,21 @@ This operator deploys a multiple telemetry agents, both in the control plane and
4987
DATAPLANE_TOTAL_NODES=2 DATAPLANE_NTP_SERVER=clock.redhat.com make edpm_wait_deploy
5088
```
5189

52-
5. Refresh Nova discover hosts
90+
6. Refresh Nova discover hosts
5391

5492
```bash
5593
make edpm_nova_discover_hosts
5694
```
5795

5896
Now, we proceed to run our own telemetry-operator instance:
5997

60-
6. Remove Telemetry deployment
98+
7. Remove Telemetry deployment
6199

62100
```bash
63101
oc patch openstackcontrolplane openstack-galera-network-isolation --type='json' -p='[{"op": "replace", "path": "/spec/telemetry/enabled", "value":false}]'
64102
```
65103

66-
7. Scale down telemetry-operator and openstack-operator
104+
8. Scale down telemetry-operator and openstack-operator
67105

68106
```bash
69107
oc scale deployments/openstack-operator-controller-operator --replicas 0 -n openstack-operators
@@ -73,7 +111,7 @@ This operator deploys a multiple telemetry agents, both in the control plane and
73111
oc scale deployments/telemetry-operator-controller-manager --replicas 0 -n openstack-operators
74112
```
75113

76-
8. Deploy custom telemetry-operator version
114+
9. Deploy custom telemetry-operator version
77115

78116
NOTE: If you intend to deploy a custom telemetry object *with pre-populated image URLs*, you can use `make run` instead of `make run-with-webhook`, because the webhooks will not be required.
79117

@@ -88,17 +126,17 @@ This operator deploys a multiple telemetry agents, both in the control plane and
88126
OPERATOR_TEMPLATES=$PWD/templates make run-with-webhook
89127
```
90128

91-
9. Deploy Telemetry
129+
10. Deploy Telemetry
92130

93131
There are two options, either use the existing OpenStackControlPlane to manage the telemetry object, or manage it yourself.
94132

95-
9.a. To use the existing OpenStackControlPlane to manage the telemetry object, re-enable telemetry (preferred way, unless necessary for some reason):
133+
10.a. To use the existing OpenStackControlPlane to manage the telemetry object, re-enable telemetry (preferred way, unless necessary for some reason):
96134

97135
```bash
98136
oc patch openstackcontrolplane openstack-galera-network-isolation --type='json' -p='[{"op": "replace", "path": "/spec/telemetry/enabled", "value":true}]'
99137
```
100138

101-
9.b. To use a custom telemetry object
139+
10.b. To use a custom telemetry object
102140

103141
>NOTE: Make sure to use a different name other than "telemetry" in your custom object
104142
>
@@ -293,15 +331,6 @@ If you need to connect directly to the CRC VM just use
293331
ssh -i ~/.crc/machines/crc/id_ecdsa core@"192.168.130.11"
294332
```
295333
296-
## Install pre-requisites
297-
298-
To use MetricsStorage storage, the cluster-observability-operator is required.
299-
Use the following playbook to install it:
300-
301-
```bash
302-
ansible-playbook ci/create-coo-subscription-playbook.yaml
303-
```
304-
305334
## License
306335
307336
```text

ci/cloudkitty-pre_deploy-install_loki.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
hosts: "{{ cifmw_target_hook_host | default('localhost') }}"
44
gather_facts: true
55
environment:
6-
KUBECONFIG: "{{ cifmw_openshift_kubeconfig | default(ansible_env.HOME + '/.kube.config' ) }}"
6+
KUBECONFIG: "{{ cifmw_openshift_kubeconfig | default(ansible_env.HOME + '/.kube/config' ) }}"
77
PATH: "{{ cifmw_path | default(ansible_env.PATH) }}"
88
tasks:
99
- name: Set zuul

ci/deploy-logging-dependencies.yml

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,12 +3,14 @@
33
hosts: "{{ cifmw_target_hook_host | default('localhost') }}"
44
gather_facts: false
55
environment:
6-
KUBECONFIG: "{{ cifmw_openshift_kubeconfig }}"
7-
PATH: "{{ cifmw_path }}"
6+
KUBECONFIG: "{{ cifmw_openshift_kubeconfig | default(ansible_env.HOME + '/.kube/config') }}"
7+
PATH: "{{ cifmw_path | default(ansible_env.PATH) }}"
88
tasks:
99
- name: Deploy logging dependencies
1010
ansible.builtin.import_role:
1111
name: deploy-logging-dependencies
12+
tags: clo
13+
1214
- name: Copy dataplane nodeset kustomization
1315
ansible.builtin.copy:
1416
dest: "{{ cifmw_basedir }}/artifacts/manifests/kustomizations/dataplane/90-kustomize-dataplane-logging-service.yaml"
@@ -25,6 +27,7 @@
2527
- op: add
2628
path: /spec/services/-
2729
value: logging
30+
tags: kustomization
2831

2932
- name: Copy controlplane kustomization
3033
ansible.builtin.copy:
@@ -47,3 +50,4 @@
4750
enabled: true
4851
target:
4952
kind: OpenStackControlPlane
53+
tags: kustomization

ci/files/master-aodh-patch.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
spec:
2+
customContainerImages:
3+
aodhAPIImage: quay.rdoproject.org/podified-master-centos10/openstack-aodh-api:current-tested
4+
aodhEvaluatorImage: quay.rdoproject.org/podified-master-centos10/openstack-aodh-evaluator:current-tested
5+
aodhListenerImage: quay.rdoproject.org/podified-master-centos10/openstack-aodh-listener:current-tested
6+
aodhNotifierImage: quay.rdoproject.org/podified-master-centos10/openstack-aodh-notifier:current-tested
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
spec:
2+
customContainerImages:
3+
ceilometerCentralImage: quay.rdoproject.org/podified-master-centos10/openstack-ceilometer-central:current-tested
4+
ceilometerComputeImage: quay.rdoproject.org/podified-master-centos10/openstack-ceilometer-compute:current-tested
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
spec:
2+
customContainerImages:
3+
cloudkittyAPIImage: quay.rdoproject.org/podified-master-centos10/openstack-cloudkitty-api:current-tested
4+
cloudkittyProcImage: quay.rdoproject.org/podified-master-centos10/openstack-cloudkitty-processor:current-tested

ci/files/master-heat-patch.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
spec:
2+
customContainerImages:
3+
heatAPIImage: quay.rdoproject.org/podified-master-centos10/openstack-heat-api:current-tested
4+
heatCfnapiImage: quay.rdoproject.org/podified-master-centos10/openstack-heat-api-cfn:current-tested
5+
heatEngineImage: quay.rdoproject.org/podified-master-centos10/openstack-heat-engine:current-tested
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
spec:
2+
customContainerImages:
3+
openstackClientImage: quay.rdoproject.org/podified-master-centos10/openstack-openstackclient:current-tested

0 commit comments

Comments
 (0)