Web server update 2024

Virtual web servers in a cluster

The SCC operates a fail-safe cluster of several servers behind two load balancers distributed across two locations. This ensures a high level of availability.

The web servers always run on all machines in the cluster. When accessing www.oe.kit.edu in the browser, you are directed to a server by the load balancer. If you want to know which one, you can call up

https://www.oe.kit.edu/phpinfo.php

which contains the server name in the System line (e.g. "Linux web3 ..." --> i.e. the pages of the www.oe.kit.edu site are delivered from the web3 machine).

Alternatively

https://www.oe.kit.edu/global-cgi-bin/hostname

can be called up.

Update or migration 2024

The SCC carries out regular updates within an operating system version to ensure operation.

LTS (Long Time Support) versions are used to minimize the effort required for migrations to new operating system versions.

The guaranteed maintenance/development of the operating systems results in the following operating period:

Cluster Server Operating system max. operation
Buster web1, web2, web4 Debian 10 (Buster) until 30.06.2024
Bookworm web3, web6 Debian 12 (Bookworm) until 30.06.2028 at the latest

The web servers in the Buster cluster must be updated to Debian 12 (Bookworm) by 30.06.2024 at the latest.

PHP version

As part of the update, the PHP version will be upgraded from 7.3 to 8.2: to PHP 7.4 to PHP 8.0 to PHP 8.1 to PHP 8.2.

MediaWiki version

As part of the update, the MediaWiki version will be upgraded from 1.31.16 to 1.39.7.

Testing before the move: Setting up the test environment

The new operating system is already running on the two machines web3.scc.kit.edu and web6.scc.kit.edu. For the test, you want to ensure that your web pages are delivered from exactly one of these machines. To achieve this, use an SSH connection.

Establish an SSH tunnel via the command line

on your own computer (Linux, Cygwin under Windows): 
   ssh -D 1080 Account@HOST
   e.g.: ssh -D 1080 oe-web-0001@web6.scc.kit.edu

This establishes a tunnel for a local SOCKS proxy within the SSH connection.

Alternatively, you can use the putty software, for example, to set up the socks tunnel

  • Session -> Host Name (or IP address): web6.scc.kit.edu
  • Connection/Data -> Auto-login username: oe-web-0001
  • Connection/SSH/Tunnels -> enter as in the screenshot and then click "Add".

Testing before the move: Use SSH tunnel

Addressing SSH tunnels via the command line

To test via the command line, start another command line. This then uses the existing SSH tunnel:

 curl --socks5-hostname localhost https://FQDN/PATH
 e.g. curl --socks5-hostname localhost https://www.oe.kit.edu/server-status

Alternatively: Call up the pages in the browser via the configured socks tunnel (e.g. Firefox)

  • Settings -> Advanced -> Network
  • Settings
  • Manual proxy configuration:
  • SOCKS Host: localhost / Port: 1080

The "Proxy Switcher and Manager" extension is available for Firefox and Chrome. This allows simple switching to a previously set up "Socks tunnel".

Adjustments to programs

Important: It is best to test programs that do not work in a copy or set up a new test environment, as the necessary changes for the new version (php, perl etc.) may not be backwards compatible and this could lead to errors on the running sites.