• Forums
    • Public Forums
      • Community Connect
      • Dynatrace
        • Dynatrace Open Q&A
      • Application Monitoring & UEM
        • AppMon & UEM Open Q&A
      • Network Application Monitoring
        • NAM Open Q&A
  • Home /
  • Public Forums /
  • Dynatrace /
  • Dynatrace Open Q&A /
avatar image
Question by Irakli N. · Nov 23, 2020 at 03:35 PM · Dynatrace Managed synthetic monitoring synthetic locations

Private synthetic locations and test frequency - load balancing across cluster activegates

Hello everyone,

Could you please help me to understand what would happen with the following setup.

Let's imagine that with the DT managed we have Cluster Activegates setup for Private Synthetic tests. There are 8 cAGs assigned to 4 Private Synthetic locations - 2 nodes per location.

We also have a total of 100 HTTP monitors set up in the cluster for several tenants. The frequency of tests is the same for all tenants/tests - once every 5 minutes.

I what to understand how DT/Cluster ActiveGates will schedule and distribute the above load among themselves.

In the above case - how frequently each cAG will test the particular URL? The frequency of once every 5 min means that location A will test the URL, 5 min later location B, then 5 min later location C, and finally location D or every location will test the URL every 5 min?

Because there are 2 nodes per location, how does the workload is divided? Will node1 in a location test the particular URL first and one the next iteration it will be node2 which will be testing the same URL? Or there is some more complicated logic behind it?

Thanks

Comment

People who like this

0 Show 0
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

2 Replies

  • Sort: 
  • Most voted
  • Newest
  • Oldest
avatar image
Best Answer

Answer by Hannah M. · Nov 23, 2020 at 03:57 PM

For both Browser Monitors and HTTP Monitors, the frequency you set is how often it will run on each location. So if you have 4 locations and the frequency is set to 5 minutes the monitor will run every 5 minutes on each of the 4 locations.
For Browser monitors, the workload for a location is split across both ActiveGates. It is done by how busy they are. So a monitor could run on 1 AG for one iteration and the other the next or it could run on the same AG multiple times.

For HTTP Monitors, I believe it works slightly differently and each HTTP monitor is scheduled to run on a specific AG rather than executions split across the 2.

Comment
Tomasz W.

People who like this

1 Show 1 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image Irakli N. · Nov 24, 2020 at 12:12 AM 0
Share

Hello Hannah, thanks for replying.


I've asked the question because I've seen quite an imbalance in CPU load on Cluster ActiveGate nodes assigned to the same Private Synthetic location.

Take a look at the screenshot below. There are three nodes/Cluster Activegates assigned to one particual Private Synthetic location. The configuration of the VMs is identical - M size for the the Cluster ActiveGate. All synthetic monitor tests setup across differnt tenants are http tests just checking an URLs for the particual tenant every 5 min. But one node is much more utilized than other two.

How the load can be districuted across all therr nodes in the private synthetic location for my scenario? I don't want to add additional nodes to the location or scale up the VMs.

Thanks.

1606176473669.png (15.8 KiB)
avatar image

Answer by Tomasz W. · Nov 24, 2020 at 10:12 AM

Hi Iraki,


As a member of the Synthetic DEV team, I can confirm everything that Hannah said.


HTTP monitors are split among AGs in the location by monitor definition. So one monitor is executed by the same AG every time. There is a chance that some monitors consume more resources than others and the sharding was so unfortunate in your case that the discrepancy of resources usage is visible.


The good news is, we have implemented new scheduler for HTTP monitors on private deployments. Such monitors will be executed by Synthetic engine as browser monitors. There will be no sharding at all. The visits will be split among nodes in location based on their capacity and utilization. Hopefully, that would balance resources consumption more equally. In fact, we have already started to migrate customers to this new solution since version 205.


Regards,
Tomek

Comment
Hannah M.
Karolina L.
Mikhail A.

People who like this

3 Show 9 · Share
10 |2000000 characters needed characters left characters exceeded
  • Viewable by all users
  • Viewable by moderators
  • Viewable by moderators and the original poster
  • Advanced visibility
Toggle Comment visibility. Current Visibility: Viewable by all users

Up to 10 attachments (including images) can be used with a maximum of 50.0 MiB each and 250.0 MiB total.

avatar image Irakli N. · Nov 25, 2020 at 01:27 PM 0
Share

Tomasz,


Thanks for the insightful reply. If we move/redeploy our Cluster ActiveGates to release 205 will it automatically take care of the load problem?

Also, what would you recommend - upgrade the current activegates to 205 or redeploy them from scrat with the latest version?

avatar image Tomasz W. Irakli N. · Nov 25, 2020 at 01:38 PM 0
Share

Irakli,


Unfortunately, it won't turn on automatically for safety reasons.


It's a very big change from the technical point of view - not only a different scheduling mechanism is used but also a different component will execute HTTP monitors (Synthetic engine instead of ActiveGate). Because of that, we want to stretch the migration process in time and do it in phases, migrating tenants one by one at the same time monitoring the situation.


Once we are sure the whole solution works fine for the chosen groups of tenants we will turn it on by default. After that, the migration should occur automatically.


A fresh installation would not be necessary, just a standard upgrade.

Regards,
Tomek

avatar image Irakli N. Tomasz W. · Nov 30, 2020 at 07:26 AM 0
Share

Tomasz,

If I understand correctly your reply, just an upgrade to v 205 to the cluster activegates is not sufficient to see load distribution to even out and some other actions are required?

If so, what are these actions?

avatar image Tomasz W. Irakli N. · Nov 30, 2020 at 11:49 AM 0
Share

Irakli,


If you could wait till the feature is fully supported, then no further actions would be needed.


If the resource consumption imbalance is really that crucial and you would like to be an early adopter of the feature then I would need to check how to arrange that. An upgrade to 205 is a prerequisite. Perhaps you could share a link to the environment, we could check whether the deployment is ready to be re-configured (valid versions, synthetic engines installed etc) .


Regards,
Tomek

avatar image Irakli N. Tomasz W. · Dec 02, 2020 at 07:40 AM 0
Share

Tomasz,

Thanks for the reply. We'd probably wait until v205 and newer releases are out. At this moment we decided to reduce test run frequency to reduce the load on cluster activegates.

avatar image Mikhail A. · Feb 15 at 12:47 PM 0
Share

Hello @Tomasz W.

Could you please tell me how the load of test will be distributed between AG?

We have 1 location for 4 AG, while there are 2 large AG in 2 Small AG.

Does balancing take into account that ag size is different or better we should make them the same size?


avatar image Tomasz W. Mikhail A. · Feb 15 at 01:13 PM 0
Share

Mikhail,


Once it's the synthetic engine that executes HTTP monitors (not AG), there would no static distribution among nodes. Instead, the nodes would ask for as many visits as they are capable of executing at a given moment in time.

If the location has not much to do it is possible that there would be fluctuations depending on which node had better luck to get the work. Still, that could change every few seconds.

What is the most important here, there would be no static shards whatsoever.

Every node has the same chance of retrieving the monitor that use up a lot more resources than others (if there is such one).


Regards,
Tomek

avatar image Mikhail A. Tomasz W. · Feb 20 at 09:15 AM 0
Share

thanks for the answer!

Could you please tell me the new functionality has been released from version 205?

avatar image Tomasz W. Mikhail A. · 5 days ago 0
Share

It's not that trivial. The functionality has been already released but turned off by default. It can be turned on for desired tenants.

Since cluster version 211, the functionality has been turned on by default. The prerequisite is that all AGs in a given location are in the right version (at least 207 I think or 205)

How to get started

First steps in the forum
Read Community User Guide
Best practices of using forum

NAM 2019 SP5 is available


Check the RHEL support added in the latest NAM service pack.

Learn more

LIVE WEBINAR

"Performance Clinic - Monitoring as a Self Service with Dynatrace"


JANUARY 15, 3:00 PM GMT / 10:00 AM ET

Register here

Follow this Question

Answers Answers and Comments

34 People are following this question.

avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image avatar image

Related Questions

HTTP monitor: why can't I execute HTTP monitor from external location?

Is ti possible to set manuel timings in Dynatrace synthetics ?

Getting Cluster ActiveGate download URL via API call

Agentless Rum on an internal application

Can you configure a synthetic monitor to automatically retry on a failure?

Forum Tags

mobile monitoring dotnet iis chat kubernetes servicenow amazon web services feedback mysql mainframe application rules rest api cassandra dashboard oneagent sdk cmc waterfall chart application monitoring openkit smartscape request attributes monitoring developer community user tagging log monitoring services ufo opentelemetry integrations activegate auto-detection high five award uem webserver usql iib test automation license ios news migration management zones ibm mq web services notifications sso host monitoring knowledge sharing reports browser monitors java hybris sap vmware maintenance window user action naming resource javascript appmon ai availability tipstricks automation extensions diagnostic tools session replay permissions search davis assistant auto-update faq documentation problem detection http monitors easytravel apdex network docker tags and metadata cloud foundry google cloud platform synthetic monitoring lambda process groups account usability dynatrace saas gui paas openshift key user actions administration production user actions postgresql synthetic locations upgrade oneagent security Dynatrace Managed user management python technologies mongodb openstack user session monitoring continuous delivery citrix configuration alerting performance monitoring NGINX action naming geolocation linux nam installation error reporting database mission control apache slo mobileapp RUM php azure purepath davis scripting aix nodejs android
  • Forums
  • Public Forums
    • Community Connect
    • Dynatrace
      • Dynatrace Open Q&A
    • Application Monitoring & UEM
      • AppMon & UEM Open Q&A
    • Network Application Monitoring
      • NAM Open Q&A