The Community Forums

Interact with an entire community of cPanel & WHM users!
  1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

EasyApache 4 not resolving conflict correctly

Discussion in 'EasyApache' started by gareth.star, Jun 28, 2016.

  1. gareth.star

    gareth.star Member

    Joined:
    May 9, 2013
    Messages:
    19
    Likes Received:
    2
    Trophy Points:
    3
    cPanel Access Level:
    Root Administrator
    Hi.

    I currently have a server that was provisioned with EasyApache 4 to use Apache 2.4 prefork. I have decided I would like to use the event MPM instead of prefork.

    I've selected "ea-apache24-mod_mpm_event". In doing so, I am told there will be a conflict with "ea-apache24-mod_mpm_prefork" and "ea-apache24-mod_cgi" which will be uninstalled and "ea-apache24-mod_cgid" will also be installed.

    easyapache.png

    After selecting Yes, "ea-apache24-mod_mpm_event" is marked as Install, and "ea-apache24-mod_mpm_prefork" is marked as Uninstall.

    easyapache2.png

    Additionally after selecting Yes, "ea-apache24-mod_cgid" is marked as Install, and "ea-apache24-mod_cgi" is marked as Uninstall.

    easyapache3.png

    When I finally get to the Review step, I am told everything conflicts with each other and nothing will be installed or uninstalled.

    easyapache4.png

    I'm sure uninstalling prefork + cgi first would probably allow me to provision with event + cgid, however that would mean a longer downtime to my site than it would if EasyApache took care of everything at once. I have to minimize downtime.

    Did I do something incorrectly?
     
  2. cPJacob

    cPJacob cPanel Product Owner
    Staff Member

    Joined:
    May 2, 2014
    Messages:
    510
    Likes Received:
    66
    Trophy Points:
    28
    cPanel Access Level:
    DataCenter Provider
    Twitter:
    Hi,

    Changing MPMs in EA4 is a little tricky right now. The UI's don't fully resolve dependencies and conflicts in a recursive level. That's something we're working to fix now, but it looks like that will be happening in v60. Right now, easiest way to change these MPMs is to go into the CLI, and use Yum Shell to fix this.

    It would look something like:
    Code:
    root@11 [~]# yum shell
    Loaded plugins: fastestmirror, tsflags, universal-hooks
    > install ea-apache24-mod_mpm_event
    > remove ea-apache24-mod_mpm_prefork
    > run
    
    --> Running transaction check
    ---> Package ea-apache24-mod_mpm_event.x86_64 0:2.4.20-3.1 will be installed
    --> Processing Dependency: ea-apache24-mod_cgid for package: ea-apache24-mod_mpm_event-2.4.20-3.1.x86_64
    ---> Package ea-apache24-mod_mpm_prefork.x86_64 0:2.4.20-3.1 will be erased
    --> Processing Dependency: ea-apache24-mpm = forked for package: ea-apache24-mod_cgi-2.4.20-3.1.x86_64
    --> Running transaction check
    ---> Package ea-apache24-mod_cgi.x86_64 0:2.4.20-3.1 will be erased
    ---> Package ea-apache24-mod_cgid.x86_64 0:2.4.20-3.1 will be installed
    --> Finished Dependency Resolution
    
    =================================================================================================================================================================
    
    Package                                              Arch                            Version                                Repository                     Size
    
    =================================================================================================================================================================
    
    Installing:
    
    ea-apache24-mod_mpm_event                            x86_64                          2.4.20-3.1                             EA4                            46 k
    Removing:
    ea-apache24-mod_mpm_prefork                          x86_64                          2.4.20-3.1                             @EA4                           31 k
    Installing for dependencies:
    ea-apache24-mod_cgid                                 x86_64                          2.4.20-3.1                             EA4                            36 k
    Removing for dependencies:
    ea-apache24-mod_cgi                                  x86_64                          2.4.20-3.1                             @EA4                           27 k
    
    Transaction Summary
    
    =================================================================================================================================================================
    Install  1 Package (+1 Dependent package)
    Remove   1 Package (+1 Dependent package)
    
    Total download size: 81 k
    Is this ok [y/d/N]:
    I hope this helps!
     
    gareth.star likes this.
  3. gareth.star

    gareth.star Member

    Joined:
    May 9, 2013
    Messages:
    19
    Likes Received:
    2
    Trophy Points:
    3
    cPanel Access Level:
    Root Administrator
    I just gave it a try and saw:

    Code:
    Installing:
    ea-apache24-mod_mpm_event                                     x86_64                                   2.4.20-3.1                                      EA4                                     46 k
    Removing:
    ea-apache24-mod_mpm_prefork                                   x86_64                                   2.4.20-3.1                                      @EA4                                    31 k
    Installing for dependencies:
    ea-apache24-mod_cgid                                          x86_64                                   2.4.20-3.1                                      EA4                                     36 k
    Removing for dependencies:
    ea-apache24-mod_cgi                                           x86_64                                   2.4.20-3.1                                      @EA4                                    27 k
    ea-php70-php                                                  x86_64                                   7.0.7-1.3                                       @EA4                                   4.1 M
    
    I definitely don't want to be remove PHP 7.

    Is that unavoidable at this point? Should I be waiting on v60?
     
  4. cPJacob

    cPJacob cPanel Product Owner
    Staff Member

    Joined:
    May 2, 2014
    Messages:
    510
    Likes Received:
    66
    Trophy Points:
    28
    cPanel Access Level:
    DataCenter Provider
    Twitter:
    That package isn't specifically PHP7, that's the PHP DSO module for PHP 7. DSO is a forked model only, and requires prefork to run. Since you're removing prefork, DSO can't be there, so it's being removed. It looks right :D
     
    gareth.star likes this.
  5. gareth.star

    gareth.star Member

    Joined:
    May 9, 2013
    Messages:
    19
    Likes Received:
    2
    Trophy Points:
    3
    cPanel Access Level:
    Root Administrator
    It worked! You're my hero! (for today ;))

    A follow-up question. When a new EasyApache version gets released, what will happen to this change? I'm assuming v60 will handle it, but what about v58?
     
  6. cPJacob

    cPJacob cPanel Product Owner
    Staff Member

    Joined:
    May 2, 2014
    Messages:
    510
    Likes Received:
    66
    Trophy Points:
    28
    cPanel Access Level:
    DataCenter Provider
    Twitter:
    Awesome! I'm glad that worked out. With your question, I'm not sure I follow correctly. I'm going to answer with what I think you're asking, but please let me know if I'm off my rocker :P.

    In v58, yes, this will be a bit painful. We've gotten the frontend working properly with mock data, but we're working on the backend side of this change now. I'm hoping that we'll be able to have it backported into a v58.1 release, but that's not 100% set in stone right now.

    As for EA releases themselves, those won't affect your current settings and setup. The packages won't switch out or anything, when there's a new update, those packages will auto-update via yum, and you won't have to do anything with them.

    I hope this helps!
     
    gareth.star likes this.
  7. gareth.star

    gareth.star Member

    Joined:
    May 9, 2013
    Messages:
    19
    Likes Received:
    2
    Trophy Points:
    3
    cPanel Access Level:
    Root Administrator
    Yep, you answered everything I asked.

    Thanks a million, Jacob! :D
     
  8. aNightOne

    aNightOne Member

    Joined:
    May 13, 2014
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Root Administrator
    Jacob:

    Similar problem here. Trying to go from the pre-fork to the worker mpm.

    Get the following conflicts:
    Cursor_and_cpanel_–_WebHost_Manager.png

    Then attempting to resolve via yum:

    Code:
    yum shell
    remove ea-apache24-mod_mpm_prefork
    remove ea-apache24-mod_cgi
    install ea-apache24-mod_mpm_worker
    install ea-apache24-mod_cgid
    run
    Yields the following which just returns me into the yum shell but does not ask permission to install or remove anything...

     
  9. cPJacob

    cPJacob cPanel Product Owner
    Staff Member

    Joined:
    May 2, 2014
    Messages:
    510
    Likes Received:
    66
    Trophy Points:
    28
    cPanel Access Level:
    DataCenter Provider
    Twitter:
    Howdy!

    Can you do a 'yum clean all', then via yum shell:
    Code:
    yum shell
    remove ea-apache24-mod_mpm_prefork
    install ea-apache24-mod_mpm_worker
    run
    [code]
    
    The dependencies should be picked up just by using those two packages. Let me know how it goes!
     
  10. aNightOne

    aNightOne Member

    Joined:
    May 13, 2014
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Root Administrator
    That worked to install/remove the packages and successfully switched Apache to worker.

    However, when I go through Apache 4 to activate specific PHP modules and progress through to the review screen, i get stuck on the 'Preparing selected packages for review.' and it never moves on (over 30min now...).

    Nothing has been logged to cpanel/logs/error_log
     
  11. aNightOne

    aNightOne Member

    Joined:
    May 13, 2014
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Root Administrator
    I have opened a ticket on this.
     
  12. cPJacob

    cPJacob cPanel Product Owner
    Staff Member

    Joined:
    May 2, 2014
    Messages:
    510
    Likes Received:
    66
    Trophy Points:
    28
    cPanel Access Level:
    DataCenter Provider
    Twitter:
    Thanks!

    That page can take a minute or two (or longer on busier systems) to complete, but I haven't seen it freeze like that. It's possible a timeout occurred somewhere that we may need to account for. Thanks again for letting us check it out!
     
  13. aNightOne

    aNightOne Member

    Joined:
    May 13, 2014
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Root Administrator

    The package after about 22 min finally came back with the same conflicts mentioned in the Forum thread- mainly that the prefork MPM was conflicting with the worker MPM.

    This is despite having manually removed the prefork mpm via Yum.
    In fact, when I go back into the Yum shell and again try:

    [root@cpanel ~]# yum shell
    Loaded plugins: fastestmirror, post-transaction-actions, tsflags, universal-hooks
    > remove ea-apache24-mod_mpm_prefork
    No Match for argument: ea-apache24-mod_mpm_prefork
    >

    Apache4 seems to be picking up modules that Yum doesn't see...

    Support has already started on the ticket. Really impressive service guys!
     
  14. aNightOne

    aNightOne Member

    Joined:
    May 13, 2014
    Messages:
    7
    Likes Received:
    0
    Trophy Points:
    1
    cPanel Access Level:
    Root Administrator
    Update just to let anyone else having the same problem know:

    If trying to install php 7 with the apache mpm-worker module. Don't select the 'ea-php-70=php' module.

    It is the DSO module for PHP (and thusly unnecessary, as PHP requests should be sufficiently served by SuPHP). The current Easy Apache 4 will not flag it as having a dependency on the apache pre-fork module so it just tells you that the prefork and worker conflict even though you are not trying to use the pre-fork.

    Thanks to support and their quick help on figuring this out!
     
Loading...

Share This Page