Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,11 @@ include::../modules/proc_getting-ca-certificate-from-stf-for-overcloud-configura
endif::include_when_13[]

include::../modules/proc_configuring-red-hat-openstack-platform-overcloud-for-stf.adoc[leveloffset=+1]
include::../modules/proc_configuring-gnocchi-metrics.adoc[leveloffset=+1]
include::../modules/proc_retrieving-the-qdr-route-address.adoc[leveloffset=+1]
include::../modules/proc_creating-the-base-configuration-for-stf.adoc[leveloffset=+1]
include::../modules/proc_configuring-the-stf-connection-for-the-overcloud.adoc[leveloffset=+1]
include::../modules/proc_deploying-the-overcloud.adoc[leveloffset=+1]
include::../modules/proc_sending-metrics-to-gnocchi-and-to-stf.adoc[leveloffset=+1]
include::../modules/proc_validating-clientside-installation.adoc[leveloffset=+2]

//reset the context
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,252 +28,15 @@ To configure the {OpenStack} overcloud, you must configure the data collection a

To configure the {OpenStack} overcloud, complete the following tasks:

. xref:retrieving-the-qdr-route-address[]
. xref:creating-the-base-configuration-for-stf[]
. xref:configuring-the-stf-connection-for-the-overcloud[]
. xref:deploying-the-overcloud[]
. xref:retrieving-the-qdr-route-address_assembly-completing-the-stf-configuration[]
. xref:creating-the-base-configuration-for-stf_assembly-completing-the-stf-configuration[]
. xref:configuring-the-stf-connection-for-the-overcloud_assembly-completing-the-stf-configuration[]
. xref:deploying-the-overcloud_assembly-completing-the-stf-configuration[]
. xref:validating-clientside-installation_assembly-completing-the-stf-configuration[]

ifdef::include_when_16_1[]
.Additional resources

* To collect data through {MessageBus}, see https://access.redhat.com/documentation/en-us/red_hat_openstack_platform/16.1/html-single/monitoring_tools_configuration_guide/index#amqp1[The amqp1 plug-in] in the _Monitoring Tools Configuration_ guide.

endif::include_when_16_1[]

[[retrieving-the-qdr-route-address]]
== Retrieving the {MessageBus} route address

When you configure the {OpenStack} overcloud for {ProjectShort}, you must provide the {MessageBus} route address in the {ProjectShort} connection file.

.Procedure

. Log in to your {OpenShift} ({OpenShiftShort}) environment.

. In the `service-telemetry` project, retrieve the {MessageBus} route address:
+
[source,bash,options="nowrap",subs="verbatim"]
----
$ oc get routes -ogo-template='{{ range .items }}{{printf "%s\n" .spec.host }}{{ end }}' | grep "\-5671"
default-interconnect-5671-service-telemetry.apps.infra.watch
----
+
[NOTE]
If your {ProjectShort} installation differs from the documentation, ensure that you retrieve the correct {MessageBus} route address.

[[creating-the-base-configuration-for-stf]]
== Creating the base configuration for {ProjectShort}

To configure the base parameters to provide a compatible data collection and transport for {ProjectShort}, you must create a file that defines the default data collection values.

.Procedure

. Log in to the {OpenStack} undercloud as the `stack` user.

. Create a configuration file called `enable-stf.yaml` in the `/home/stack` directory.
+
[IMPORTANT]
====
Setting `EventPipelinePublishers` and `PipelinePublishers` to empty lists results in no event or metric data passing to {OpenStack} legacy telemetry components, such as Gnocchi or Panko. If you need to send data to additional pipelines, the Ceilometer polling interval of 30 seconds as specified in `ExtraConfig` might overwhelm the legacy components, and should be increased to a larger value such as `300`. Increasing the value to a longer polling interval will result in less telemetry resolution in {ProjectShort}.

To enable collection of telemetry with {ProjectShort} and Gnocchi, see xref:sending-metrics-to-gnocchi-and-to-stf_assembly-completing-the-stf-configuration[]
====
+
ifdef::include_when_13[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
# only send to STF, not other publishers
EventPipelinePublishers: []
PipelinePublishers: []

# manage the polling and pipeline configuration files for Ceilometer agents
ManagePolling: true
ManagePipeline: true

# enable Ceilometer metrics and events
CeilometerQdrPublishMetrics: true
CeilometerQdrPublishEvents: true

# set collectd overrides for higher telemetry resolution and extra plugins
# to load
CollectdConnectionType: amqp1
CollectdAmqpInterval: 5
CollectdDefaultPollingInterval: 5
CollectdExtraPlugins:
- vmem

ExtraConfig:
ceilometer::agent::polling::polling_interval: 30
ceilometer::agent::polling::polling_meters:
- cpu
- disk.*
- ip.*
- image.*
- memory
- memory.*
- network.*
- perf.*
- port
- port.*
- switch
- switch.*
- storage.*
- volume.*

# to avoid filling the memory buffers if disconnected from the message bus
collectd::plugin::amqp1::send_queue_limit: 50

# receive extra information about virtual memory
collectd::plugin::vmem::verbose: true

# provide the human-friendly name of the virtual instance
collectd::plugin::virt::plugin_instance_format: metadata
----
endif::include_when_13[]
ifdef::include_when_16[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
# only send to STF, not other publishers
EventPipelinePublishers: []
PipelinePublishers: []

# manage the polling and pipeline configuration files for Ceilometer agents
ManagePolling: true
ManagePipeline: true

# required to set valid parameter due to typo in ceilometer-write-qdr.yaml
# and will be resolved in a future release
CeilometerQdrPublishMetrics: true

# enable collection of API status
CollectdEnableSensubility: true
CollectdSensubilityTransport: amqp1

# enable collection of containerized service metrics
CollectdEnableLibpodstats: true

# set collectd overrides for higher telemetry resolution and extra plugins
# to load
CollectdConnectionType: amqp1
CollectdAmqpInterval: 5
CollectdDefaultPollingInterval: 5
CollectdExtraPlugins:
- vmem

ExtraConfig:
ceilometer::agent::polling::polling_interval: 30
ceilometer::agent::polling::polling_meters:
- cpu
- disk.*
- ip.*
- image.*
- memory
- memory.*
- network.*
- perf.*
- port
- port.*
- switch
- switch.*
- storage.*
- volume.*

# to avoid filling the memory buffers if disconnected from the message bus
collectd::plugin::amqp1::send_queue_limit: 50

# receive extra information about virtual memory
collectd::plugin::vmem::verbose: true

# provide name and uuid in addition to hostname for better correlation
# to ceilometer data
collectd::plugin::virt::hostname_format: "name uuid hostname"

# provide the human-friendly name of the virtual instance
collectd::plugin::virt::plugin_instance_format: metadata

# set memcached collectd plugin to report its metrics by hostname
# rather than host IP, ensuring metrics in the dashboard remain uniform
collectd::plugin::memcached::instances:
local:
host: "%{hiera('fqdn_canonical')}"
port: 11211
----
endif::include_when_16[]


[[configuring-the-stf-connection-for-the-overcloud]]
== Configuring the {ProjectShort} connection for the overcloud

To configure the {ProjectShort} connection, you must create a file that contains the connection configuration of the {MessageBus} for the overcloud to the {ProjectShort} deployment. Enable the collection of events and storage of the events in {ProjectShort} and deploy the overcloud. The configuration is set up for a single cloud instance with the default message bus topics. For configuration of multiple cloud deployments, see xref:configuring-multiple-clouds_assembly-advanced-features[].

.Procedure

. Log in to the {OpenStack} undercloud as the `stack` user.

. Create a configuration file called `stf-connectors.yaml` in the `/home/stack` directory.

. In the `stf-connectors.yaml` file, configure the `MetricsQdrConnectors` address to connect the {MessageBus} on the overcloud to the {ProjectShort} deployment.
* Replace the `host` parameter with the value of `HOST/PORT` that you retrieved in xref:retrieving-the-qdr-route-address[]:
+
ifdef::include_when_13[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
MetricsQdrConnectors:
- host: default-interconnect-5671-service-telemetry.apps.stf.cloudops.psi.redhat.com
port: 443
role: edge
sslProfile: sslProfile
verifyHostname: false

MetricsQdrSSLProfiles:
- name: sslProfile
caCertFileContent: |
----BEGIN CERTIFICATE----
<snip>
----END CERTIFICATE----
----
endif::include_when_13[]
ifdef::include_when_16[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
MetricsQdrConnectors:
- host: default-interconnect-5671-service-telemetry.apps.infra.watch
port: 443
role: edge
sslProfile: sslProfile
verifyHostname: false
----
endif::include_when_16[]

[[deploying-the-overcloud]]
== Deploying the overcloud

Deploy or update the overcloud with the required environment files to result in data being collected and transmitted to {ProjectShort}.

.Procedure

. Add the following files to your {OpenStack} {OpenStackInstaller} deployment to setup data collection and {MessageBus}:
+
* the `collectd-write-qdr.yaml` file to ensure that collectd telemetry and events are sent to {ProjectShort}
* the `ceilometer-write-qdr.yaml` file to ensure that Ceilometer telemetry and events are sent to {ProjectShort}
* the `qdr-edge-only.yaml` file to ensure that the message bus is enabled and connected to {ProjectShort} message bus routers
* the `enable-stf.yaml` environment file to ensure defaults are set up correctly
* the `stf-connectors.yaml` environment file to define the connection to {ProjectShort}
+
[source,bash,options="nowrap",subs="+quotes"]
----
$ openstack overcloud deploy <other arguments>
--templates /usr/share/openstack-tripleo-heat-templates \
--environment-file <...other-environment-files...> \
--environment-file /usr/share/openstack-tripleo-heat-templates/environments/metrics/ceilometer-write-qdr.yaml \
--environment-file /usr/share/openstack-tripleo-heat-templates/environments/metrics/collectd-write-qdr.yaml \
--environment-file /usr/share/openstack-tripleo-heat-templates/environments/metrics/qdr-edge-only.yaml \
--environment-file /home/stack/enable-stf.yaml \
--environment-file /home/stack/stf-connectors.yaml
----

. Deploy the {OpenStack} overcloud.
endif::include_when_16_1[]
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
// Module included in the following assemblies:
//
// <List assemblies here, each on a new line>

// This module can be included from assemblies using the following include statement:
// include::<path>/proc_configuring-the-stf-connection-for-the-overcloud.adoc[leveloffset=+1]

// The file name and the ID are based on the module title. For example:
// * file name: proc_doing-procedure-a.adoc
// * ID: [id='proc_doing-procedure-a_{context}']
// * Title: = Doing procedure A
//
// The ID is used as an anchor for linking to the module. Avoid changing
// it after the module has been published to ensure existing links are not
// broken.
//
// The `context` attribute enables module reuse. Every module's ID includes
// {context}, which ensures that the module has a unique ID even if it is
// reused multiple times in a guide.
//
// Start the title with a verb, such as Creating or Create. See also
// _Wording of headings_ in _The IBM Style Guide_.

[id="configuring-the-stf-connection-for-the-overcloud_{context}"]
= Configuring the {ProjectShort} connection for the overcloud

[role="_abstract"]
To configure the {ProjectShort} connection, you must create a file that contains the connection configuration of the {MessageBus} for the overcloud to the {ProjectShort} deployment. Enable the collection of events and storage of the events in {ProjectShort} and deploy the overcloud. The configuration is set up for a single cloud instance with the default message bus topics. For configuration of multiple cloud deployments, see xref:configuring-multiple-clouds_assembly-advanced-features[].

.Prerequisites

* Retrieve the {MessageBus} route address. For more information, see xref:retrieving-the-qdr-route-address_assembly-completing-the-stf-configuration[].

.Procedure

. Log in to the {OpenStack} undercloud as the `stack` user.

. Create a configuration file called `stf-connectors.yaml` in the `/home/stack` directory.

. In the `stf-connectors.yaml` file, configure the `MetricsQdrConnectors` address to connect the {MessageBus} on the overcloud to the {ProjectShort} deployment.
* Replace the `host` parameter with the value of `HOST/PORT` that you retrieved in xref:retrieving-the-qdr-route-address[]:
+
ifdef::include_when_13[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
MetricsQdrConnectors:
- host: default-interconnect-5671-service-telemetry.apps.stf.cloudops.psi.redhat.com
port: 443
role: edge
sslProfile: sslProfile
verifyHostname: false

MetricsQdrSSLProfiles:
- name: sslProfile
caCertFileContent: |
----BEGIN CERTIFICATE----
<snip>
----END CERTIFICATE----
----
endif::include_when_13[]
ifdef::include_when_16[]
[source,yaml,options="nowrap",subs="+quotes"]
----
parameter_defaults:
MetricsQdrConnectors:
- host: default-interconnect-5671-service-telemetry.apps.infra.watch
port: 443
role: edge
sslProfile: sslProfile
verifyHostname: false
----
endif::include_when_16[]
Loading