linux-system-roles / metrics

An ansible role which configures metrics collection.

Home Page:https://linux-system-roles.github.io/metrics/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

What base packages are required when not using pcp-zeroconf

sradco opened this issue · comments

  1. Does pcp-zeroconf deploy a default configuration file that enables the metrics to collect from the machine?

  2. In case we don't want to collect metrics based on the pcp-zeroconf configuration, what are the base pcp packages required for pcp ?

@lberk

@sradco pcp-zeroconf flips the 'systemctl enable' switch for the pmlogger service. The pmlogger service will generate a logging configuration if none has been explicitly setup for it - auto-generation is a good option, as it will probe the host for available metrics.

@natoscott It mean we dont need to enable the the process right?
Does it also start the process , 'systemctl start' ?

What does it mean "if none has been explicitly setup for it "? If we install the package and add configuration files for collecting metrics from prometheus end point and add configuration file to send them to elasticsearch?
I guess the auto-generated will already be deployed at this point no?

I need to split the packages installation and the configuration files deployment into the different use cases :

  1. Default PCP-Zeroconf installation.
  2. Other types of installations based on the use cases described in the design document.
    Like: Prometheus ->PCP->Elasticsearch, Prometheus ->PCP->Elasticsearch on OpenShift Logging(Viaq), etc.

Can you please explain what the flow based on the different use cases?

| It mean we dont need to enable the the process right?

That's right, pcp-zeroconf will both enable and start pmcd, pmlogger and pmie.

| Does it also start the process , 'systemctl start' ?

Yes.

| What does it mean "if none has been explicitly setup for it "?

I meant that if someone were to enable and start the pmlogger service (like pcp-zeroconf does) without setting up a pmlogger configuration file - see pmlogger(1) - then the enable/start process will automatically do this step.

This is completely distinct from pcp2elasticsearch(1) where the command must be told exactly which metrics to send to elasticsearch - it does not attempt any auto-configuration. @lberk can you describe how pcp2elasticsearch metrics are being configured currently? I think this is from an ansible-managed configuration file.

| Can you please explain what the flow based on the different use cases?

With zeroconf, the name says it all - there is no special configuration required - package installation takes care of everything, including enabling, configuring and starting daemons for local monitoring / analysis.

In the second case, configuration is performed by the Ansible work Lukas has done AIUI. (right @lberk?)

This is completely distinct from pcp2elasticsearch(1) where the command must be told exactly which metrics to send to elasticsearch - it does not attempt any auto-configuration. @lberk can you describe how pcp2elasticsearch metrics are being configured currently? I think this is from an ansible-managed configuration file.

Correct, that's the ovirt.conf file that we've supplied in the ansible patch. That's where we specify/enumerate which metrics, and how we'd like to represent them to send via pcp2elasticsearch. Then in the pcp2elasticsearch service file, we specify that we want to use the configuration we supplied.

The new metrics role uses performancecopilot.pcp which manages the installation of the appropriate PCP packages in all situations (does not rely on pcp-zeroconf, where its not available)