Skip to content

Commit

Permalink
Merge pull request #1931 from jpwhite4/sw_docs
Browse files Browse the repository at this point in the history
Update software requirements docs to expunge Centos 7
  • Loading branch information
jpwhite4 authored Oct 25, 2024
2 parents 10d1941 + dc6c25a commit 7c114f4
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 53 deletions.
8 changes: 0 additions & 8 deletions docs/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,14 +10,6 @@ See [Software Requirements](software-requirements.html) for details.

See [Hardware Requirements](hardware-requirements.html) for details.

### Can I use Open XDMoD with Rocky Linux 8/RHEL 8?

Open XDMoD 10.0 has a [beta release](https://github.com/ubccr/xdmod/releases/tag/v10.0.0-beta5-el8) version that is compatible with Rocky Linux 8.

### Does Open XDMoD support PHP versions newer than PHP 5.4?

Open XDMoD 10.0 has a [beta release](https://github.com/ubccr/xdmod/releases/tag/v10.0.0-beta5-el8) version that is compatible with PHP 7.2.

### How do I enable LDAP Authentication?

Open XDMoD has support for [Single Sign On](simpleSAMLphp.html)
Expand Down
3 changes: 0 additions & 3 deletions docs/latest-releases.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,5 @@ title: Latest Releases

Below you will find links to our latest releases by supported OS.

# CentOS7
You can find the latest CentOS 7 build here: [CentOS7 Latest](https://github.com/ubccr/xdmod/releases/latest)

# Rocky 8
You can find the latest Rocky 8 build here: [Rocky 8 Latest](https://github.com/ubccr/xdmod/releases/latest)
76 changes: 34 additions & 42 deletions docs/software-requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ Open XDMoD requires the following software:
- [mod_ssl][]
- [mod_headers][]
- [MariaDB][]/[MySQL][] 5.5.3+, MariaDB 10.3.17+
- [PHP][] 5.4+, 7.2+, (PHP 8 not supported)
- [PHP][] 7.4, (PHP 8 not supported)
- [PDO][]
- [MySQL PDO Driver][pdo-mysql]
- [GD][php-gd]
Expand Down Expand Up @@ -62,42 +62,28 @@ Open XDMoD requires the following software:
Linux Distribution Packages
---------------------------

Open XDMoD can be run on any Linux distribution, but has been tested on
CentOS 7.
Open XDMoD is developed and tested with servers running Rocky 8 Linux. The Open XDMoD team
use Rocky 8 for their production Open XDMoD software instances.

Most of the requirements can be installed with the package managers
available from these distributions.
Rocky 8 is the preferred Linux distribution, however Open XDMoD should be able to run on any Linux distribution
that has the appropriate versions of the software dependencies available.

### CentOS 7

**NOTE**: The package list below includes packages included with
[EPEL](https://fedoraproject.org/wiki/EPEL). This repository can be
added with this command for CentOS 7:

# yum install epel-release

# yum install httpd php php-cli php-mysql php-gd php-pdo php-xml \
libreoffice \
nodejs \
mariadb-server mariadb cronie logrotate \
perl-Image-ExifTool php-mbstring php-pecl-apcu jq \
chromium-headless librsvg2-tools
### Rocky 8+

**NOTE**: After installing Apache and MySQL you must make sure that they
are running. CentOS may not start these services and they will not
start after a reboot unless you have configured them to do so.
**NOTE**: The php version that is enabled by default in Rocky 8 is php 7.2. Open XDMoD
requires php version 7.4 that [is supported until May 2029](https://access.redhat.com/support/policy/updates/rhel-app-streams-life-cycle#rhel8_full_life_application_streams).
```shell
dnf module -y reset php
dnf module -y enable php:7.4
```

**NOTE**: APCu is optional, but highly recommended as it provides enhanced performance.
The Open XDMoD RPM requires packages that are provided in EPEL.

### Rocky 8+
```sh
dnf install -y epel-release

dnf install -y httpd php php-cli php-mysqlnd php-gd php-pdo php-xml \
php-pear libreoffice nodejs \
mariadb-server mariadb cronie logrotate \
perl-Image-ExifTool php-mbstring php-pecl-apcu jq \
chromium-headless librsvg2-tools
dnf install -y php make libzip-devel php-pear php-devel \
mariadb-server mariadb
```

**NOTE**: The nodejs version that is enabled by default in Rocky 8 is nodejs 10. Open
Expand All @@ -109,10 +95,8 @@ dnf module -y reset nodejs
dnf module -y install nodejs:16
```

**NOTE**: The method to install the system level mongodb drivers has changed for Rocky 8. To account for this, you will
need to run the following:
**NOTE**: The php mongodb drivers are not available as RPMs and must be installed using PECL as follows:
```shell
dnf install -y php-devel
pecl install mongodb-1.16.2
echo "extension=mongodb.so" > /etc/php.d/40-mongodb.ini
```
Expand All @@ -136,28 +120,31 @@ Additional Notes
### PHP

Open XDMoD is tested to work with the versions of PHP that is supplied with
Centos 7 (PHP 5.4.16) and Rocky 8 (PHP 7.2.24). Open XDMoD is not compatible
with PHP 8 at this time.
Rocky 8 (PHP 7.4.33). Open XDMoD {{ page.sw_version }} is not compatible
with PHP 8.

Some Linux distributions (including CentOS) do not set the timezone used
Some Linux distributions (including Rocky 8) do not set the timezone used
by PHP in their default configuration. This will result in many warning
messages from PHP. You should set the timezone in your `php.ini` file
by adding the following, but substituting your timezone:
messages from PHP and will cause data corruption in the XDMoD datawarehouse
if the PHP timezone is different from the OS or Mariadb timezone.

_You must set the timezone in your `php.ini` file
by adding the following, but substituting your timezone_:

```ini
date.timezone = America/New_York
```

The PHP website contains the full list of supported [timezones][].

Production Open XDMoD instances should use HTTPS, which is enabled via the webserver
Open XDMoD instances must use HTTPS. HTTP is not supported. HTTPS is enabled via the webserver
configuration (see below).

[timezones]: https://secure.php.net/manual/en/timezones.php

### Apache

Production instances of Open XDMoD should use HTTPS. This requires
Open XDMoD must use HTTPS. This requires
the `mod_ssl` module be installed and enabled. The `mod_headers` module
is also recommended so that the [HTTP Strict-Transport-Security](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security)
header can be set on the webserver.
Expand All @@ -169,7 +156,7 @@ network access.

### MySQL

Open XDMoD is tested to work with MariaDB 5.5.60 and 10.3.28, and may be
Open XDMoD is tested to work with MariaDB 10.3.39, and may be
compatible with more recent releases of MySQL and MariaDB. Open XDMoD is
not compatible with MySQL 8.0 at this time.

Expand All @@ -184,5 +171,10 @@ Open XDMoD has been tested with `chromium-headless` from EPEL, `chromium` from E

### SELinux

Open XDMoD does not work with the default CentOS
SELinux security policy. You will need to disable SELinux.
The default SELinux policy on Rocky 8 does not give sufficient permission
to the webserver software to perform all tasks required by Open XDMoD,
such as connecting to the MariaDB and MongoDB databases, and running the image export
tools.

It is recommended to either disable SELinux, or to follow the [RedHat SELinux](https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/using_selinux/index)
documentation to create an SELinux policy for your server.

0 comments on commit 7c114f4

Please sign in to comment.