Description:
I want to use external victoria metrics setup to be used instead of the inbuilt victoria metrics of PMM. I found this document which describes it .
But, there is a contradicting statement in the document and I want clarity on the same.
When external VictoriaMetrics is configured, internal VictoriaMetrics stops. In this case, VM Agent on PMM Server pulls metrics from agents configured in the pull metrics mode and from remote nodes. Data is then pushed to external VictoriaMetrics.
Note
VM Agents run by PMM Clients push data directly to external VictoriaMetrics.
Ensure that they can connect to external VictoriaMetrics
The Note contradicts the above statement. Can anyone confirm this and get more clarity on wether the push of metrics from vm agents on PMM clients directly goes to this external Victoria metrics server or will it go first to PMM and then PMM will push it to the external victoria metrics server?
Hi!
That statement is correct. The metrics collected by exporters will be pushed to the external instance of VictoriaMetrics you will have configured. Therefore, to display the metrics on its dashboards PMM will pull the data from that instance.
Alex
Thanks for the clarity.
Push model
PMM client --push–> Victora metrics(external server) --read–> PMM server(reads from vm server)
Pull Model
PMM Client --pull–> PMM Server --remote write–> Victoria metrics server(external)
Is the above understanding correct?
Your understanding is correct for the push model.
For the pull model I suggest you take a look at PMM Architecture diagram, particularly at “Component Based View” of PMM Client.
The difference between two models is in the presence of vmagent
. It acts as an intermediary and pushes data to VictoriaMetrics in push mode. When a database is monitored in pull mode, it’s the external VictoriaMetrics who is going to pull metrics directly from exporters.
Alex