Migration Tool Prerequisites for PHP; Is Tool Current?; CentOS 7 to Rocky Linux 8?

Discussion in 'Installation/Configuration' started by fatbear, Oct 28, 2021.

  1. fatbear

    fatbear Member HowtoForge Supporter

    I visited the page https://www.ispconfig.org/add-ons/ispconfig-migration-tool and am considering purchasing the migration tool to assist my moving my ISPConfig 3 installation from one VM on one hypervisor to another VM on another hypervisor and from CentOS 7 to Rocky Linux 8.
    1. I note in the Prerequisites that it mentions the PHP supported versions are 5.3 - 7.3. Is this old documentation? I would prefer either the latest PHP 7.4 or 8.0.
    2. Is this tool current and will it migrate from
    3. Can this tool migrate from CentOS 7 to Rocky Linux 8?
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    PHP 7.4 is fine, 8.0 is not. But the tool is run on the old server anyway and your old CentOS 7 server has probably not PHP 8 yet and the PHP version of the new system does not matter for the tool. But as ISPConfig itself does not support PHP 8 as the main PHP version, your main PHP version has to stay at PHP 7.4 on the new server too. You can add PHP 8 as an additional PHP version though.


    ISPConfig itself does not support Rocky Linux 8 and an ISPConfig installation is required on the target server if you want to migrate ISPConfig to it. But it might be that it works if you change the redhat-release file and if exists the /etc/os-release in a way that they resemböle a CentOS 8 system, so that the ISPconfig installer believes that it is centOS and not Rocky Linux.
  3. ahrasis

    ahrasis Well-Known Member HowtoForge Supporter

    Or just use Debian or its derivative Ubuntu on the target server which is very much supported by ISPConfig.
  4. fatbear

    fatbear Member HowtoForge Supporter

    A significant amount of our automation code is written for RHEL 7 distros (CentOS, Red Hat Enterprise Linux, Rocky Linux), so Debian is not a reasonable choice for us.

    PHP 7 and 8: So, we can then cherry pick: Use PHP 7 for ISPConfig and websites that require that version, and use PHP 8 for websites that are compatible with that version.
    RHEL 8 distros: Can you be more specific as to what pattern match ISPConfig is needing in /etc/os-release?

    Request that ISPConfig support the CentOS Linux 8 Replacements:
    CentOS Stream 8
    as an late-Beta upstream product (compared to CentOS Linux 8 as a production-quality downstream product that is at EOL after Dec 31, 2021) is no longer acceptable for production use. Hence ISPConfig's compatibility with Rocky Linux 8 and Alma Linux 8 is very important. Our company has selected Rocky Linux 8 due to adoption by big players in the industry.

    For reference, the differences in the /etc/*release files between CentOS Linux 8.4 and Rocky Linux 8.4 are:


    What specific need does ISPConfig have in looking at any of the above files? We'd recommend adopting the least intrusive approach to checking ISPConfig/OS compatibility. Note that the os-release specification document says that the os-release file "should generally not be changed by the administrator."
    Last edited: Oct 30, 2021
  5. fatbear

    fatbear Member HowtoForge Supporter

    According to the ISPConfig.org home page under the Supports Many Linux Distributions section, it is shown that CentOS is supported, merely not recommended. If ISPConfig wishes to remove support for CentOS or not provide support for CentOS replacements, then we'll have to look at options other than ISPConfig. We're a Red Hat shop with customers that have service contracts with Red Hat as well as other clients that merely prefer CentOS (and now, Rocky Linux).
  6. till

    till Super Moderator Staff Member ISPConfig Developer

    We don't plan to stop supporting RHEL based distributions, so the answer above that you have to switch to Debian or Ubuntu is not correct. At the moment, we just do not have implemented support for one of the CentOS replacements (AlmaLinux and RockyLinux) yet, that's why you will have to tell the ISPConfig installer that it's a CentOS 8 so the installer uses the right routines.

    I just had a look at the installer, it should be enough to edit the file /etc/redhat-release and change it's content to:

    CentOS Linux release 8.0
    to switch the installer into the mode that is sued for installations on CentOS 8.
  7. fatbear

    fatbear Member HowtoForge Supporter

    I've completed the installation on Rocky Linux 8. Before I made the change to /etc/redhat-release, I noted that I needed to manually restart Apache (systemctl restart httpd) in order for a new site to be picked up and for Postfix to recognize the SSL certificates in /usr/local/ispconfig/interface/ssl/ispserver.{crt,key}.
    I will be doing another ISPConfig installation again today for another customer and will see if this fully remediates the problems. I'll report back likely tomorrow and that should close this thread. Many thanks for your patience.
    I was using the installation instructions:
    till likes this.
  8. fatbear

    fatbear Member HowtoForge Supporter

    I completed the installation of ISPConfig 3 yesterday successfully on Rocky Linux 8. I can provide details, but I did some things differently than in the online tutorial:
    • Ensure python is not /usr/libexec/no-python (used /usr/bin/python 3 via alternatives)
    • Installed additional fonts because I also install tigervnc and prefer Lucida Console
    • Installed iptables-based filtering using ipset to filter out entire countries via data from ipdeny.com
    • Installed autofs and updated /etc/sysconfig/nfs to enable better nfs handling
    • Move /etc/resolv.conf to /etc/resolv-static.conf and link that to /etc/resolv.conf to avoid getting NetworkManager updates.
    • Disabled IPv6 in /etc/default/grub and updated files to not reference IPv6:
      • grub2-mkconfig -o /boot/grub2/grub.cfg
      • /etc/hosts
      • /etc/dovecot/dovecot.conf
      • /usr/lib/systemd/system/rpcbind.socket
    • Install MariaDB 10.5 instead of the default 5.x
    • Did not follow the instructions for installing phpMyAdmin and wrote new scripts for this purpose. I automated the creation of the blowfish_secret with the idiom:
      Secret="$( tr -dc A-Za-z0-9 </dev/urandom | head -c 32 )"
    • Used ln -sr instead of ln -s where links would otherwise be absolute.
    This issue can now be considered to be solved. Many thanks for your help on this!
    Last edited: Nov 2, 2021
    till likes this.

Share This Page