Skip to content

Commit 43d2b2d

Browse files
authored
Merge pull request #461 from bosh-prometheus/new-firehose-exporter
replace firehose_exporter, move to attic legacy job and dependencies
2 parents 46687fa + 2d354e5 commit 43d2b2d

File tree

95 files changed

+31846
-2990
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

95 files changed

+31846
-2990
lines changed

README.md

+49-7
Original file line numberDiff line numberDiff line change
@@ -119,9 +119,13 @@ bosh -d prometheus deploy manifests/prometheus.yml \
119119

120120
### Monitoring Cloud Foundry
121121

122-
If you want to monitor your [Cloud Foundry](https://www.cloudfoundry.org/) platform, first update your [cf-deployment](https://github.com/cloudfoundry/cf-deployment) adding the [add-prometheus-uaa-clients.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/cf/add-prometheus-uaa-clients.yml) op file. This will add the UAA clients required to gather information from the Cloud Foundry [API](https://apidocs.cloudfoundry.org/268/) and [Firehose](https://docs.cloudfoundry.org/loggregator/architecture.html#firehose).
122+
If you want to monitor your [Cloud Foundry][cloudfoundry] platform, first update your
123+
[cf-deployment][cf-deployment] adding the [add-prometheus-uaa-clients.yml][add-prometheus-uaa-clients]
124+
op file.
123125

124-
Then add the [monitor-cf.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/monitor-cf.yml) ops file by running the following command (filling the required variables with your own values):
126+
This will add the UAA clients required to gather information from the Cloud Foundry [API][cfapi]
127+
and [Firehose][firehose]. Then add the [monitor-cf.yml][monitor-cf] ops file by running the following
128+
command (filling the required variables with your own values):
125129

126130
```
127131
bosh -d prometheus deploy manifests/prometheus.yml \
@@ -136,17 +140,47 @@ bosh -d prometheus deploy manifests/prometheus.yml \
136140
-v metron_deployment_name= \
137141
-v system_domain= \
138142
-v uaa_clients_cf_exporter_secret= \
139-
-v uaa_clients_firehose_exporter_secret= \
140-
-v traffic_controller_external_port= \
143+
-v loggregator_ca_name= \
141144
-v skip_ssl_verify=
142145
```
143146

144-
>*NOTE:* `metron_deployment_name` property should match the `deployment` property of your `metron_agent` or `loggregator_agent` jobs.
147+
>**NOTE:** `metron_deployment_name` property should match the `deployment` property of your `metron_agent` or `loggregator_agent` jobs.
145148
> Use:
146149
>- your `system_domain` (`metron_agent`) for [cf-deployment](https://github.com/cloudfoundry/cf-deployment) before [v2.0.0](https://github.com/cloudfoundry/cf-deployment/releases/tag/v2.0.0)
147150
>- `cf` (`loggregator_agent`) for [cf-deployment](https://github.com/cloudfoundry/cf-deployment) starting from the [v2.0.0](https://github.com/cloudfoundry/cf-deployment/commit/b4e761fa257740a2cbca2574b40ae78bcfe2178b#diff-1c845aa8da14326552b37f043a621ccaR3)
148151
>- `cf` for [Pivotal Application Service](https://network.pivotal.io/products/elastic-runtime)
149152
153+
>**NOTE:** `loggregator_ca_name` property should match the full credhub path of `loggregator_ca` certificate variable, ex: `/bosh-mydirector/cf/loggregator_ca`.
154+
155+
>**NOTE:** You can switch to legacy implementation of [firehose_exporter][firehose_exporter] and legacy
156+
> cloud foundry dashboards by adding the following ops-files:
157+
> - on prometheus deployment, adapt:
158+
> ```
159+
> ...
160+
> -o manifests/operators/monitor-cf.yml \
161+
> -o manifests/operators/deprecated/monitor-cf-attic.yml \
162+
> -v uaa_clients_firehose_exporter_secret= \
163+
> -v traffic_controller_external_port= \
164+
> ...
165+
> ```
166+
> - When using `add-prometheus-uaa-clients.yml` on cloud foundry deployment, adapt:
167+
> ```
168+
> ...
169+
> -o manifests/operators/cf/add-prometheus-uaa-clients.yml
170+
> -o manifests/operators/deprecated/cf/add-prometheus-uaa-clients-attic.yml
171+
> ...
172+
> ```
173+
>
174+
> This will switch deployment to `firehose_exporter-attic`, `cloudfoundry_dashboards-attic` and `cloudfoundry_alerts-attic`
175+
176+
[cloudfoundry]: https://www.cloudfoundry.org/
177+
[cf-deployment]: https://github.com/cloudfoundry/cf-deployment
178+
[add-prometheus-uaa-clients]: https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/cf/add-prometheus-uaa-clients.yml
179+
[cfapi]: https://v3-apidocs.cloudfoundry.org/version/3.137.0/index.html
180+
[firehose]: https://docs.cloudfoundry.org/loggregator/architecture.html#firehose
181+
[monitor-cf]: https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/monitor-cf.yml
182+
[firehose_exporter]: https://github.com/bosh-prometheus/firehose_exporter
183+
150184
#### Register Cloud Foundry routes
151185
152186
If you want to access `alertmanager`, `grafana`, and `prometheus` web ui's using your Cloud Foundry system domain instead of IP addresses, then you can register those [routes](https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html) inside your Cloud Foundry environment using the [enable-cf-route-registrar.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-cf-route-registrar.yml) op file by running the following command (filling the required variables with your own values):
@@ -188,7 +222,7 @@ bosh -d prometheus deploy manifests/prometheus.yml \
188222
189223
Additional [operations files](http://bosh.io/docs/cli-ops-files.html) are located at the [manifests/operators](https://github.com/bosh-prometheus/prometheus-boshrelease/tree/master/manifests/operators) directory. Those files includes a basic configuration, so extra ops files might be needed for additional configuration.
190224
191-
Please review the op files before deploying them to check the requeriments, dependencies and necessary variables.
225+
Please review the op files before deploying them to check the requirements, dependencies and necessary variables.
192226
193227
| File | Description | exporter | dashboards | alerts |
194228
| ---- | ----------- |:--------:|:----------:|:------:|
@@ -203,7 +237,6 @@ Please review the op files before deploying them to check the requeriments, depe
203237
| [alertmanager-web-external-url.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/alertmanager-web-external-url.yml) | Configures the URL under which `alertmanager` is externally reachable | | | |
204238
| [configure-bosh-exporter-uaa-client-id.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/configure-bosh-exporter-uaa-client-id.yml) | Configures a custom `bosh_exporter` UAA `client_id` for the [enable-bosh-uaa.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-bosh-uaa.yml) op-file | | | |
205239
| [enable-bosh-uaa.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-bosh-uaa.yml) | Configures [monitor-bosh.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/monitor-bosh.yml) to use an UAA client (you must apply the [add-bosh-exporter-uaa-clients.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/bosh/add-bosh-exporter-uaa-clients.yml) op file to your [bosh-deployment](https://github.com/cloudfoundry/bosh-deployment)) | | | |
206-
| [enable-cf-loggregator-v2.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-cf-loggregator-v2.yml) | Enables [Cloud Foundry Loggregator V2 API](https://github.com/cloudfoundry/loggregator-release#rlp-gateway) calls at the `firehose_exporter` | | | |
207240
| [enable-cf-route-registrar.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-cf-route-registrar.yml) | Registers `alertmanager`, `grafana`, and `prometheus` as [Cloud Foundry routes](https://docs.cloudfoundry.org/devguide/deploy-apps/routes-domains.html) (under your `system domain`) | | | |
208241
| [enable-grafana-uaa.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-grafana-uaa.yml) | Configures `grafana` user authentication to use [Cloud Foundry UAA](https://docs.cloudfoundry.org/concepts/architecture/uaa.html) (you must apply the [add-grafana-uaa-clients.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/cf/add-grafana-uaa-clients.yml) op file to your [cf-deployment](https://github.com/cloudfoundry/cf-deployment)) | | | |
209242
| [enable-grafana-generic-oauth.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/enable-grafana-generic-oauth.yml) | Configures `grafana` user authentication to use a generic OAuth2 provider | | | |
@@ -253,6 +286,15 @@ Please review the op files before deploying them to check the requeriments, depe
253286
| [prometheus-web-external-url.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/prometheus-web-external-url.yml) | Configures the URL under which `prometheus` is externally reachable | | | |
254287
| [use-sqlite3.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/use-sqlite3.yml) | Use sqlite3 instead of postgres | | | |
255288
289+
290+
In addition, some deprecated ops-files allows to switch back to legacy behaviours
291+
| File | Description | exporter | dashboards | alerts |
292+
| ---- | ----------- |:--------:|:----------:|:------:|
293+
| [deprecated/monitor-cf-attic.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/deprecated/monitor-cf-attic.yml) | Use legacy implementation of `monitor-cf.yml` | x | x | x |
294+
| [deprecated/cf/add-prometheus-uaa-clients-attic.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/deprecated/cf/add-prometheus-uaa-clients-attic.yml) | Adds UAA client in cloud foundry deployment when using `monitor-cf-attic.yml` | | | |
295+
| [deprecated/enable-cf-loggregator-v2.yml](https://github.com/bosh-prometheus/prometheus-boshrelease/blob/master/manifests/operators/deprecated/enable-cf-loggregator-v2.yml) | Enables [Cloud Foundry Loggregator V2 API](https://github.com/cloudfoundry/loggregator-release#rlp-gateway) calls in the legacy `firehose_exporter` | | | |
296+
297+
256298
### Deployment variables and the var-store
257299
258300
Some operators files requires additional information to provide environment-specific or sensitive configuration such as various credentials. To do this in the default configuration, we use the `--vars-store`. This flag takes the name of a `yml` file that it will read and write to. Where necessary credential values are not present, it will generate new values based on the type information stored at the different deployment files. Necessary variables that BOSH can't generate need to be supplied as well.

config/blobs.yml

+4
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,10 @@ firehose_exporter/firehose_exporter-6.2.0.linux-amd64.tar.gz:
4242
size: 9102454
4343
object_id: 065e08b0-0023-46ba-4955-ee5daf5e40f0
4444
sha: sha256:6f81a643a158a578c7e8b08e3fc06044ba957806d87c33d58955c1142cd54d8f
45+
firehose_exporter/firehose_exporter_7.0.0.linux-amd64.tar.gz:
46+
size: 4651429
47+
object_id: bafeaea4-1752-45b4-59c3-5b2a746b1738
48+
sha: sha256:16f5744d37693e08216ac902e72948fef9c3612489583764e5c3e40f00c25321
4549
fontconfig/fontconfig-2.13.92.tar.gz:
4650
size: 2127384
4751
object_id: 2ff7a520-f3dd-487f-6af0-e7a7a8f758f3

jobs/cloudfoundry_alerts-attic/monit

Whitespace-only changes.

0 commit comments

Comments
 (0)