Proxy inventory of park above 20 thousand computers #773
Replies: 4 comments 7 replies
-
Hello @erique-souza first of all, I see in your issue more a support request than a real agent issue. You're speaking about 20000 agents trying to submit requests to one proxy agent. This is definitively not a context for which this feature was developed. I see also few big mistakes in the proxy configuration showing you didn't understood few basic principles. For example, you changed So I'll first move your issue as a discussion before fully continuing. |
Beta Was this translation helpful? Give feedback.
-
Of course, when targeting such a heavy park, you should definitively need a professional support. If you don't have it, please try to earn a GLPI subscription. About If you want to maximize the throughput, with such a number of agent requests, you should better:
|
Beta Was this translation helpful? Give feedback.
-
Thanks for the guidance The configuration numbers were test numbers, previously I was using numbers close to the standard As on the agents I was receiving a lot of 500 errors when trying to communicate with the proxy, one of the first tests I carried out was to increase the maxrate and maxrate_period, as far as I understood based on the documentation on the website the maxrate was the limit of requests per IP that could happen from the same agent to the proxy server in a certain period and maxrate_period defined this period in seconds. The idea by increasing the maxrate was not to prohibit agents from contacting the proxy so as not to return error 500 and to allow local inventory on the proxy, but I did not see this expected effect Now about max_proxy_threads I ran the "lscpu" command to check the number of cores per socket, in this case it is 2, so the maximum that could be used in the max_proxy_threads configuration is 4, correct? If the default is 10 in the agent then it means that I need more cores to process the amount of load that the park is currently requesting, I'm just describing it "out loud" to establish the concepts and also record the line of reasoning I made these changes to adjust it correctly, as advised, this below is the result of the log after the changes Current proxy configuration file My goal is to understand where the problem is with the web service being unavailable from the proxy, and also allow agents to be able to contact the proxy to carry out their inventories without presenting return errors in the agent itself This server is a virtualized server, if one of the problems, for example, is the number of sockets/processors/cores, we can evaluate whether we can increase this capacity to improve processing performance If there is something else I can work on on the glpi-agent side, proxy file and glpi-agent sll file I can be carrying out tests to improve the agent system as a whole |
Beta Was this translation helpful? Give feedback.
-
@g-bougard Still on the same subject, in the latest versions of the agent 1.11, for example, does the agent now send partial inventory by default?, if there have been changes since your last inventory? I saw some agents reporting newer versions like this, but I was unsure if it was a new feature, as I didn't see any specific announcement on the topic, but it could be my fault for not having seen something like that, could you advise me if this really exists? today |
Beta Was this translation helpful? Give feedback.
-
Bug reporting acknowledgment
Yes, I read it
Professional support
Still not applicable
Describe the bug
I have a scenario with a park of approximately 20 thousand assets that have glpi-agent installed, these agents are installed and pointing to a proxy server using the glpi-agent native proxy plugin, but from what we noticed after some analysis it is that even with a relatively high inventory frequency, which is currently 168 hours (7 days), there are a lot of requests in a short space of time, I believe that as a result the proxy's ssl service ends up falling, that is, becoming inoperative
As the proxy plugin does not have a more extensive configuration module as is the case with conventional web services such as apache, ngnix, etc.. I tested some configurations of the proxy plugin itself to try to minimize requests as well as increase the inventory frequency. , using the documentation at https://glpi-agent.readthedocs.io/en/latest/plugins/proxy-server-plugin.html as a basis
Also change the maxrate together with maxrate_period to a very high number
Change it so that instead of being the active proxy that receives the inventory and then forwards it, it is passive that receives the inventory and stores it internally in a folder, using the only_local_store = yes and local_store = /inventario function
And even testing for very high numbers max_proxy_threads = 10000 and max_pass_through = 10000
However, it seems that none of these measures have yet been able to solve the problem we are facing, which is: The Proxy Server Going Offline in its web version, on port 443, with SSL everything correctly active
Doing this when an agent is trying to communicate, many times, the vast majority of the time they are unable to do their inventory
I am attaching the log from the proxy side below, because in the proxy the requests are registered and some manage to execute as expected, which are the few that manage to communicate and record their file, and the vast majority end up being rejected from their inventory, with the error messages
[ssl server plugin] HTTPD can't start SSL session: Failed to upgrade socket to SSL: SSL wants a read first
[http server] HTTPD can't start SSL session
I am also sending below the proxy settings and also the ssl configuration on the proxy for analysis
glpi-agent.log
proxy_server_conf.txt
ssl_conf.txt
To reproduce
Expected behavior
Device inventory locally on the proxy
Operating system
Linux
GLPI Agent version
v1.11
GLPI version
Not applicable
GLPIInventory plugin or other plugin version
Not applicable
Additional context
No response
Beta Was this translation helpful? Give feedback.
All reactions