Bug 52320 - Two additional UCR variables for Max/MinSpareServers necessary
Two additional UCR variables for Max/MinSpareServers necessary
Status: CLOSED FIXED
Product: UCS
Classification: Unclassified
Component: Apache
UCS 4.4
All All
: P5 normal (vote)
: UCS 4.4-6-errata
Assigned To: Florian Best
Dirk Wiesenthal
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2020-11-06 14:22 CET by Thorger Ahrens
Modified: 2020-11-25 12:08 CET (History)
1 user (show)

See Also:
What kind of report is it?: Development Internal
What type of bug is this?: ---
Who will be affected by this bug?: ---
How will those affected feel about the bug?: ---
User Pain:
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional): Large environments, UCS Performance
Max CVSS v3 score:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thorger Ahrens 2020-11-06 14:22:40 CET
I'm referring to the already closed Bug 51249, where some UCR variables for Apache server parameters were added.

https://forge.univention.org/bugzilla/show_bug.cgi?id=51294

I think, two more parameters / variables are necessary, to get Apache running the desired way.

AFAIK, in UCS is actually PHP 7.0 implemented, compiled only with support for Prefork MPM.

I understood the apache documentation in the way, that when Prefork MPM is used, Max/MinSpareThreads (which where implemented as reaction to bug 51249) will have no effect, because for every http-worker a new process is created, not a new thread.

If I'm right here, two additional UCR variables for Max/MinSpareServers are necessary, or the existing variables need to be changed.

https://httpd.apache.org/docs/2.4/de/mod/prefork.html
Comment 1 Florian Best univentionstaff 2020-11-06 14:49:11 CET
Thank you for your feedback!
The variables have been added as well:
   `apache2/start-threads`
   `apache2/min-spare-servers`
   `apache2/max-spare-servers`

univention-apache.yaml
6197f72d2b62 | YAML Bug #52320

univention-apache (11.0.1-21)
0143f70b5306 | Bug #52320: add configuration for Max/MinSpareServers
Comment 2 Florian Best univentionstaff 2020-11-18 17:01:33 CET
Dirk asked me to remove all variables for thread configuration again, as the modules handling them aren't enabled.

univention-apache (11.0.1-22)
ca280ba0aa2f | Bug #52320: remove all thread related configuration options as the modules aren't enabled by default
Comment 3 Dirk Wiesenthal univentionstaff 2020-11-24 11:41:44 CET
(In reply to Florian Best from comment #2)
> Dirk asked me to remove all variables for thread configuration again, as the
> modules handling them aren't enabled.
> 

Yes, we removed apache2/*threads* again. Apparently, it needs an Apache module that conflicts with a module that we enable by default, at least on DC Master systems (for simplesamlphp). Setting these variables without highly customizing the apache environment results in a configuration file that prevents the Apache service from starting.

For the time being, I think it would be better for those who really need Prefork MPM and Max/MinSpareThreads to write their own configuration file in /etc/apache2.

Max/MinSpareServers are supported.
Comment 4 Florian Best univentionstaff 2020-11-24 12:25:55 CET
(In reply to Dirk Wiesenthal from comment #3)
> Yes, we removed apache2/*threads* again. Apparently, it needs an Apache
> module that conflicts with a module that we enable by default, at least on
> DC Master systems (for simplesamlphp). Setting these variables without
Well, that's not true. simplesamlphp does not use mod_php7.0/mpm_prefork but is executed directly via suexec.
So it would not break something in UCS to e.g. replace mod_php with fastcgi/etc.