diff --git a/source/authentication/dex.rst b/source/authentication/dex.rst index 48d3ec1f0..371208195 100644 --- a/source/authentication/dex.rst +++ b/source/authentication/dex.rst @@ -10,11 +10,22 @@ Installing OnDemand Dex package First the OnDemand yum repos must be enabled, see :ref:`install-software`. -Install the ``ondemand-dex`` RPM: +Install the ``ondemand-dex`` package: - .. code-block:: sh +.. tabs:: + + .. tab:: yum/dnf + + .. code-block:: sh + + sudo yum install ondemand-dex + + + .. tab:: apt + + .. code-block:: sh - sudo yum install ondemand-dex + sudo apt-get install ondemand-dex Installing OnDemand Dex from source ----------------------------------- diff --git a/source/conf.py b/source/conf.py index b29179111..e34feff2c 100644 --- a/source/conf.py +++ b/source/conf.py @@ -68,9 +68,9 @@ # built documents. # # The short X.Y version. -version = u'3.0' +version = u'3.1' # The full version, including alpha/beta/rc tags. -release = u'3.0.3' +release = u'3.1.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/source/how-tos/debug/debug-apache.rst b/source/how-tos/debug/debug-apache.rst index a364d1c9c..2aa0eed6b 100644 --- a/source/how-tos/debug/debug-apache.rst +++ b/source/how-tos/debug/debug-apache.rst @@ -36,7 +36,7 @@ Restart services sudo systemctl try-restart httpd - .. tab:: Ubuntu + .. tab:: Ubuntu & Debian .. code-block:: sh @@ -73,7 +73,7 @@ Or you're using the wrong hostname in your browser. sudo /sbin/httpd -S - .. tab:: Ubuntu + .. tab:: Ubuntu & Debian .. code-block:: sh diff --git a/source/how-tos/monitoring/prometheus.rst b/source/how-tos/monitoring/prometheus.rst index 035461b86..05d53b049 100644 --- a/source/how-tos/monitoring/prometheus.rst +++ b/source/how-tos/monitoring/prometheus.rst @@ -25,7 +25,7 @@ Dependencies: Install via RPM -------------------------- -For RHEL/CentOS 7 and RHEL/Rocky 8 systems the `ondemand_exporter`_ can be installed via RPM. +For yum/dnf based systems the `ondemand_exporter`_ can be installed via RPM. .. code-block:: sh @@ -34,22 +34,24 @@ For RHEL/CentOS 7 and RHEL/Rocky 8 systems the `ondemand_exporter`_ can be insta The RPM will install the following files that should work out of the box: - **RHEL/CentOS 7 only**: /opt/rh/httpd24/root/etc/httpd/conf.d/ondemand_exporter.conf -- **RHEL/Rocky 8 only**: /etc/httpd/conf.d/ondemand_exporter.conf +- **RHEL/Rocky/AlmaLinux 8 & 9 only**: /etc/httpd/conf.d/ondemand_exporter.conf - /etc/sudoers.d/ondemand_exporter Ensure that the new Apache configuration is loaded by restarting Apache -RHEL/CentOS 7 +.. tabs:: - .. code-block:: sh + .. tab:: RHEL/CentOS 7 - sudo systemctl restart httpd24-httpd + .. code-block:: sh -RHEL/Rocky 8 + sudo systemctl restart httpd24-httpd - .. code-block:: sh + .. tab:: RHEL/Rocky/Alma Linux 8 & 9 - sudo systemctl restart httpd + .. code-block:: sh + + sudo systemctl restart httpd Start the service @@ -69,7 +71,7 @@ Check for the `ondemand_exporter Latest Release`_ version number. Replace ``VER .. code-block:: sh - VERSION="0.8.0" + VERSION="0.10.0" ARCHIVE="ondemand_exporter-${VERSION}.linux-amd64" wget -O /tmp/${ARCHIVE}.tar.gz https://github.com/OSC/ondemand_exporter/releases/download/v${VERSION}/${ARCHIVE}.tar.gz tar xf /tmp/${ARCHIVE}.tar.gz -C /tmp @@ -78,19 +80,21 @@ Check for the `ondemand_exporter Latest Release`_ version number. Replace ``VER sudo install -o root -g root -m 0644 /tmp/${ARCHIVE}/files/ondemand_exporter.service /etc/systemd/system/ sudo systemctl daemon-reload -RHEL/CentOS 7 +.. tabs:: - .. code-block:: sh + .. tab:: RHEL/CentOS 7 - sudo install -o root -g root -m 0440 /tmp/${ARCHIVE}/files/apache.conf /opt/rh/httpd24/root/etc/httpd/conf.d/ondemand_exporter.conf - sudo systemctl restart httpd24-httpd + .. code-block:: sh -RHEL/Rocky 8 + sudo install -o root -g root -m 0440 /tmp/${ARCHIVE}/files/apache.conf /opt/rh/httpd24/root/etc/httpd/conf.d/ondemand_exporter.conf + sudo systemctl restart httpd24-httpd - .. code-block:: sh + .. tab:: RHEL/Rocky/Alma Linux 8 & 9 + + .. code-block:: sh - sudo install -o root -g root -m 0440 /tmp/${ARCHIVE}/files/apache.conf /etc/httpd/conf.d/ondemand_exporter.conf - sudo systemctl restart httpd + sudo install -o root -g root -m 0440 /tmp/${ARCHIVE}/files/apache.conf /etc/httpd/conf.d/ondemand_exporter.conf + sudo systemctl restart httpd **(Optional)** If Passenger was not installed via ``ondemand-passenger`` RPM. Adjust the path to ``passenger-status`` as needed @@ -101,6 +105,7 @@ RHEL/Rocky 8 [Service] Environment="PASSENGER_STATUS=/usr/sbin/passenger-status" EOF + sudo systemctl daemon-reload Start the service diff --git a/source/installation.rst b/source/installation.rst index bdc5586a3..050853fcb 100644 --- a/source/installation.rst +++ b/source/installation.rst @@ -6,7 +6,7 @@ Installation The OnDemand host machine needs to be setup *similarly* to a login node. This means that it will need: -- RedHat/CentOS 7+ or Ubuntu 20.04-22.04 +- RedHat/CentOS 7+ or Ubuntu 20.04-22.04 or Debian 12 or Amazon Linux 2023 - the resource manager (e.g., Torque, Slurm, or LSF) client binaries and libraries used by the batch servers installed - configuration on both OnDemand node **and batch servers** to be able to diff --git a/source/installation/add-ssl.rst b/source/installation/add-ssl.rst index a33df8b41..356a8460b 100644 --- a/source/installation/add-ssl.rst +++ b/source/installation/add-ssl.rst @@ -76,7 +76,7 @@ authority. sudo yum update ca-certificates - .. tab:: Ubuntu + .. tab:: Ubuntu & Debian .. code:: sh @@ -96,7 +96,7 @@ authority you're using and run these commands to copy it to the appropriate plac sudo cp /etc/pki/ca-trust/source/anchors/ sudo update-ca-trust - .. tab:: Ubuntu + .. tab:: Ubuntu & Debian .. code:: sh diff --git a/source/installation/install-software.rst b/source/installation/install-software.rst index 7f6f7305b..df24ef781 100644 --- a/source/installation/install-software.rst +++ b/source/installation/install-software.rst @@ -6,7 +6,7 @@ Install Software Open OnDemand uses these packages, among many others. - `Apache HTTP Server 2.4`_ -- Ruby 2.7 with :command:`rake`, :command:`bundler`, and development +- Ruby 3.0 with :command:`rake`, :command:`bundler`, and development libraries - Node.js 14 @@ -19,8 +19,8 @@ Some operating systems use `Software Collections`_ to satisfy these. .. warning:: - Be sure to check :ref:`Supported Operating Systems ` before proceeding with install to verify - you are on a supported operating system. + Be sure to check :ref:`Supported Operating Systems and Architectures ` before proceeding with install to verify + you are on a supported operating system and architecture. .. warning:: @@ -40,20 +40,21 @@ Some operating systems use `Software Collections`_ to satisfy these. sudo yum install centos-release-scl epel-release - .. tab:: RockyLinux 8 + .. tab:: RockyLinux/Alma Linux 8 .. code-block:: sh sudo dnf config-manager --set-enabled powertools sudo dnf install epel-release - sudo dnf module enable ruby:3.0 nodejs:14 + sudo dnf module enable ruby:3.1 nodejs:18 - .. tab:: RockyLinux 9 + .. tab:: RockyLinux/Alma Linux 9 .. code-block:: sh sudo dnf config-manager --set-enabled crb sudo dnf install epel-release + sudo dnf module enable ruby:3.1 nodejs:18 .. tab:: RHEL 7 @@ -74,7 +75,7 @@ Some operating systems use `Software Collections`_ to satisfy these. .. code-block:: sh sudo dnf install epel-release - sudo dnf module enable ruby:3.0 nodejs:14 + sudo dnf module enable ruby:3.1 nodejs:18 sudo subscription-manager repos --enable codeready-builder-for-rhel-8-x86_64-rpms @@ -83,7 +84,7 @@ Some operating systems use `Software Collections`_ to satisfy these. .. code-block:: sh sudo dnf install epel-release - sudo dnf module enable ruby:3.0 nodejs:16 + sudo dnf module enable ruby:3.1 nodejs:18 sudo subscription-manager repos --enable codeready-builder-for-rhel-9-x86_64-rpms 2. Add repository and install @@ -91,26 +92,71 @@ Some operating systems use `Software Collections`_ to satisfy these. .. tabs:: - .. tab:: yum/dnf + .. tab:: RedHat/CentOS 7 .. code-block:: sh - sudo yum install https://yum.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web-{{ ondemand_version }}-1.noarch.rpm + sudo yum install https://yum.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web-{{ ondemand_version }}-1.el7.noarch.rpm sudo yum install ondemand + .. tab:: RedHat/Rocky Linux/AlmaLinux 8 - .. tab:: apt + .. code-block:: sh + + sudo dnf install https://yum.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web-{{ ondemand_version }}-1.el8.noarch.rpm + + sudo dnf install ondemand + + .. tab:: RedHat/Rocky Linux/AlmaLinux 9 + + .. code-block:: sh + + sudo dnf install https://yum.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web-{{ ondemand_version }}-1.el9.noarch.rpm + + sudo dnf install ondemand + + .. tab:: Ubuntu 20.04 + + .. code-block:: sh + + sudo apt install apt-transport-https ca-certificates + wget -O /tmp/ondemand-release-web_{{ ondemand_version }}.0-focal_all.deb https://apt.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web_{{ ondemand_version }}.0-focal_all.deb + sudo apt install /tmp/ondemand-release-web_{{ ondemand_version }}.0-focal_all.deb + sudo apt update + + sudo apt install ondemand + + .. tab:: Ubuntu 22.04 + + .. code-block:: sh + + sudo apt install apt-transport-https ca-certificates + wget -O /tmp/ondemand-release-web_{{ ondemand_version }}.0-jammy_all.deb https://apt.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web_{{ ondemand_version }}.0-jammy_all.deb + sudo apt install /tmp/ondemand-release-web_{{ ondemand_version }}.0-jammy_all.deb + sudo apt update + + sudo apt install ondemand + + .. tab:: Debian 12 .. code-block:: sh sudo apt install apt-transport-https ca-certificates - wget -O /tmp/ondemand-release-web_{{ ondemand_version }}.0_all.deb https://apt.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web_{{ ondemand_version }}.0_all.deb - sudo apt install /tmp/ondemand-release-web_{{ ondemand_version }}.0_all.deb + wget -O /tmp/ondemand-release-web_{{ ondemand_version }}.0-bookworm_all.deb https://apt.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web_{{ ondemand_version }}.0-bookworm_all.deb + sudo apt install /tmp/ondemand-release-web_{{ ondemand_version }}.0-bookworm_all.deb sudo apt update sudo apt install ondemand + .. tab:: Amazon Linux 2023 + + .. code-block:: sh + + sudo dnf install https://yum.osc.edu/ondemand/{{ ondemand_version }}/ondemand-release-web-{{ ondemand_version }}-1.amzn2023.noarch.rpm + + sudo dnf install ondemand + 3. Start services ----------------- @@ -131,13 +177,20 @@ Some operating systems use `Software Collections`_ to satisfy these. sudo systemctl start httpd sudo systemctl enable httpd - .. tab:: Ubuntu + .. tab:: Ubuntu & Debian .. code-block:: sh sudo systemctl start apache2 sudo systemctl enable apache2 + .. tab:: Amazon Linux 2023 + + .. code-block:: sh + + sudo systemctl start httpd + sudo systemctl enable httpd + 4. Verify installation ---------------------- @@ -152,7 +205,7 @@ After adding authentication, but before actually testing that it works, you shou You may also want to :ref:`enable SELinux `. -If you're seeing the default Apache page (Ubuntu users will) you will have to :ref:`debug virtualhosts ` +If you're seeing the default Apache page (Ubuntu & Debian users will) you will have to :ref:`debug virtualhosts ` and likely :ref:`configure a servername `. Building From Source diff --git a/source/release-notes.rst b/source/release-notes.rst index 69d1c6f16..a645b7e8a 100644 --- a/source/release-notes.rst +++ b/source/release-notes.rst @@ -6,6 +6,7 @@ Release Notes .. toctree:: :maxdepth: 2 + release-notes/v3.1-release-notes release-notes/v3.0-release-notes release-notes/v2.0-release-notes release-notes/v1.8-release-notes diff --git a/source/release-notes/v3.1-release-notes.rst b/source/release-notes/v3.1-release-notes.rst new file mode 100644 index 000000000..c51a6299f --- /dev/null +++ b/source/release-notes/v3.1-release-notes.rst @@ -0,0 +1,206 @@ +.. _v3.1-release-notes: + +v3.1 Release Notes +================== + +Administrative changes +---------------------- + +- `Deprecations`_ +- `Dependency updates`_ +- `Upgrade directions`_ + +New Features +------------ + +- `aarch64/arm64 and ppc64le packages`_ +- `Amazon Linux 2023 packages`_ +- `Debian 12 packages`_ + +Details of administrative changes +--------------------------------- + +Deprecations +............ + +RedHat/CentOS 7 packages deprecated +*********************************** + +OnDemand 3.1 will be the last OnDemand release to support RedHat/CentOS 7. + +Dependency updates +.................. + +This release updates the following dependencies: + +- Ruby 3.1 **(RHEL 8 & 9 only)** + + .. warning:: The change in Ruby version means any Ruby based apps that are not provided by the OnDemand RPM must be rebuilt or supply their own ``bin/ruby`` to use the older version of ruby. + +- NodeJS 18 **(All OSes except RHEL 7)** + + .. warning:: The change in Node version means any Node based apps that are not provided by the OnDemand RPM must be rebuilt. + +- Passenger 6.0.17 +- NGINX 1.22.1 +- ondemand-dex 2.36.0 +- mod_auth_openidc 2.4.14.1 (RHEL 7 & 8 only) + +Upgrade directions +.................. + +.. warning:: + + As always please update the *development* or *test* instances of OnDemand installed at your center first to test and verify before you modify the *production* instance. + +.. warning:: + + The OnDemand upgrade has only been tested going from 3.0.x to 3.1.x. + +#. Update OnDemand release RPM + + .. tabs:: + + .. tab:: RedHat/CentOS 7 + + .. code-block:: sh + + sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el7.noarch.rpm + + + .. tab:: RedHat/Rocky Linux/AlmaLinux 8 + + .. code-block:: sh + + sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el8.noarch.rpm + + .. tab:: RedHat/Rocky Linux/AlmaLinux 8 + + .. code-block:: sh + + sudo yum install -y https://yum.osc.edu/ondemand/3.1/ondemand-release-web-3.1-1.el9.noarch.rpm + + .. tab:: Ubuntu 20.04 + + .. code-block:: sh + + wget -O /tmp/ondemand-release-web_3.1.0-focal_all.deb https://apt.osc.edu/ondemand/3.1/ondemand-release-web_3.1.0-focal_all.deb + sudo apt install /tmp/ondemand-release-web_3.1.0-focal_all.deb + sudo apt update + + .. tab:: Ubuntu 22.04 + + .. code-block:: sh + + wget -O /tmp/ondemand-release-web_3.1.0-jammy_all.deb https://apt.osc.edu/ondemand/3.1/ondemand-release-web_3.1.0-jammy_all.deb + sudo apt install /tmp/ondemand-release-web_3.1.0-jammy_all.deb + sudo apt update + +#. Enable dependencies + + **RHEL/Rocky/AlmaLinux 8 & 9 only** + + .. code-block:: sh + + sudo dnf module reset nodejs + sudo dnf module enable nodejs:18 + sudo dnf module reset ruby + sudo dnf module enable ruby:3.1 + +#. Update OnDemand + + .. tabs:: + + .. tab:: yum/dnf + + .. code-block:: sh + + sudo yum clean all + sudo yum update ondemand + + + .. tab:: apt + + .. code-block:: sh + + sudo apt-get --only-upgrade install ondemand + +#. (Optional) If using Dex based authentiction, update the ``ondemand-dex`` package. + + .. tabs:: + + .. tab:: yum/dnf + + .. code-block:: sh + + sudo yum update ondemand-dex + + + .. tab:: apt + + .. code-block:: sh + + sudo apt-get --only-upgrade install ondemand-dex + +#. Update Apache configuration and restart Apache. + + .. code-block:: sh + + sudo /opt/ood/ood-portal-generator/sbin/update_ood_portal + + .. tabs:: + + .. tab:: RedHat/CentOS 7 + + .. code-block:: sh + + sudo systemctl try-restart httpd24-httpd.service + + .. tab:: RedHat/Rocky Linux/AlmaLinux 8 & 9 + + .. code-block:: sh + + sudo systemctl try-restart httpd + + .. tab:: Ubuntu 20.04 & 22.04 + + .. code-block:: sh + + sudo systemctl try-restart apache2 + +#. (Optional) If ``ondemand-dex`` was installed, restart the ``ondemand-dex`` service. + + .. code-block:: sh + + sudo systemctl try-restart ondemand-dex.service + +#. (Optional) If ``ondemand-selinux`` was installed, see :ref:`ood_selinux_updates` + +#. Force all PUNs to restart + + .. code-block:: sh + + sudo /opt/ood/nginx_stage/sbin/nginx_stage nginx_clean -f + +Details of new features +----------------------- + +aarch64/arm64 and ppc64le packages +.................................. + +Added aarch64/arm64 and ppc64le packages for some operating systems. +See :ref:`Supported Operating Systems and Architectures ` +for a full list of which operating systems support aarch64 and ppc64le. + + +Amazon Linux 2023 packages +.......................... + +Added Amazon Linux 2023 packages. +See :ref:`install-software` for installation instructions. + +Debian 12 packages +.................. + +Added Debian 12 packages. +See :ref:`install-software` for installation instructions. diff --git a/source/requirements.rst b/source/requirements.rst index a5d2ff10e..bd2a85997 100644 --- a/source/requirements.rst +++ b/source/requirements.rst @@ -8,13 +8,22 @@ Supported Operating Systems .. _os-support: -At this time OnDemand only supports the following operating systems: - -- RedHat/CentOS 7 -- RedHat/Rocky Linux/AlmaLinux 8 -- RedHat/Rocky Linux/AlmaLinux 9 -- Ubuntu 20.04 -- Ubuntu 22.04 +At this time OnDemand only supports the following operating systems and architectures: + +.. role:: raw-html(raw) + :format: html + +.. csv-table:: Operating System and Architecture Support + :header: "","x86_64","aarch64/arm64","ppc64le" + :stub-columns: 1 + + "RedHat/CentOS 7",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`✅` + "RedHat/Rocky Linux/AlmaLinux 8",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`✅` + "RedHat/Rocky Linux/AlmaLinux 9",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`✅` + "Ubuntu 20.04",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`❌` + "Ubuntu 22.04",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`❌` + "Debian 12",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`✅` + "Amazon Linux 2023",:raw-html:`✅`,:raw-html:`✅`,:raw-html:`❌` Software Requirements ---------------------