Benutzer-Werkzeuge

Webseiten-Werkzeuge


linux:oracle_linux_8_guacamole_update

Apache Guacamole Update von 1.5.0 auf 1.5.5

Aufgabe

Update/Upgrade einer bestehenden Apache Guacamole Umgebung von 1.5.0 auf 1.5.5.

Nach den ersten Erfolgen mit Guacamole ( Basis Installation siehe ⇒ Eine Oracle System Umgebung mit Apache Guacamole auf Oracle Linux 8.7 verwalten) steht das Update an.


Apache Guacamole Server - Upgrade

Welche Version ist im Einsatz?

Die Version vom Demon guacd abfragen mit:

/usr/local/sbin/guacd -v
Guacamole proxy daemon (guacd) version 1.5.0

Welche Version ist aktuell?

Auf der Webseite nachschauen unter https://guacamole.apache.org/releases/

Aktuell (04.2024) ist das die 1.5.5.


Upgrade Prozess

  • Downtime mit dem Team vereinbaren
  • Snapshot des Systems erzeugen
  • Betriebssystem und Libraries updaten (dnf update , reboot)
  • Apache Stack (httpd/tomcat) stoppen
  • Guacamole Demon herunterfahren ( systemctl status guacd )
  • Software neu übersetzen und deployen
  • DB Schema updaten bei Bedarf
  • Tomcat APP ausrollen/austauschen
  • Konfig prüfen
  • Verwendete Extensions erneuern
  • Demon starten
  • Apache httpd / Tomcat starten
  • Testen
  • Bei Bedarf Java/Tomcat updaten

Update OS und Libs

Snapshot der VM zuvor erstellen!

dnf update
reboot

Umgebung stoppen

systemctl stop guacd
systemctl stop tomcat

Code neu übersetzen

Den Sourcecode herunterladen und auf dem Serverbereitstellen:

# Create Working Directory
mkdir /srv/guacamole_source_155
 
#Get Source Code and extract the code
cd /srv/guacamole_source_155
 
wget --no-check-certificate https://downloads.apache.org/guacamole/1.5.5/source/guacamole-server-1.5.5.tar.gz
 
sha256sum guacamole-server-1.5.5.tar.gz
# check with https://downloads.apache.org/guacamole/1.5.3/source/guacamole-server-1.5.3.tar.gz.sha256 !
# 67499611c2e22d9c933763adc5408e716a4bfd08a3eb8a5ba2fc6f8f70868f6b  guacamole-server-1.5.5.tar.gz
 
tar -xvf guacamole-server-1.5.5.tar.gz

Source Code übersetzten:

cd /srv/guacamole_source_155/guacamole-server-*/
 
 
./configure --with-init-dir=/etc/init.d
 
..
 
------------------------------------------------
guacamole-server version 1.5.5
------------------------------------------------
 
   Library status:
 
     freerdp2 ............ yes
     pango ............... yes
     libavcodec .......... yes
     libavformat.......... yes
     libavutil ........... yes
     libssh2 ............. yes
     libssl .............. yes
     libswscale .......... yes
     libtelnet ........... yes
     libVNCServer ........ yes
     libvorbis ........... yes
     libpulse ............ yes
     libwebsockets ....... yes
     libwebp ............. yes
     wsock32 ............. no
 
   Protocol support:
 
      Kubernetes .... yes
      RDP ........... yes
      SSH ........... yes
      Telnet ........ yes
      VNC ........... yes
 
   Services / tools:
 
      guacd ...... yes
      guacenc .... yes
      guaclog .... yes
 
   FreeRDP plugins: /usr/lib64/freerdp2
   Init scripts: /etc/init.d
   Systemd units: no
 
Type "make" to compile guacamole-server.

Darauf achten das bei allen Protokollen auch ein „yes“ steht! Fehlt etwas stimmt etwas nicht mit den benötigten Libraries! Fehlt eine Lib, wird die dazugehörige Option auch nicht aktiviert.

Übersetzten und installieren:

make
make install

Libs bekannt geben:

ldconfig

Version testen:

/usr/local/sbin/guacd -v
 
Guacamole proxy daemon (guacd) version 1.5.5

Autostart einrichten:

systemctl daemon-reload
 
systemctl start guacd
systemctl enable guacd
 
systemctl status guacd

Guacamole Cient Installation

Der eigentliche Client wird als WAR File im Tomcat deployt und liest die Konfiguration unter /etc/guacamole.

Tomcat stoppen:

systemctl stop tomcat
# Als Tomcat User
 
su - tomcat 
 
cd /srv/tomcat/config/webapps
 
mv guacamole-1.5.5 guacamole-1.5.5.war /tmp
 
 
wget https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-1.5.5.war     
 
# bei Bedarf War umbenenne
mv guacamole-1.5.3.war guacamole.war

DB Update prüfen!

Prüfe ob ein DB Update notwendig wird:

Adapter und Schema SQL für die Maria DB bereitstellen:

cd /srv/guacamole_source_155
mkdir ex
 
cd ex
 
wget https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-auth-jdbc-1.5.5.tar.gz
 
tar -xvf guacamole-auth-jdbc-1.5.5.tar.gz
 
cd /srv/guacamole_source_155/ex/guacamole-auth-jdbc-1.5.5/mysql
 
# Adapter hinterlegen
#-- sicherheitskopie
mv /etc/guacamole/extensions/guacamole-auth-jdbc-mysql-1.5.3.jar  /tmp
 
#-- aktualiseren
cp guacamole-auth-jdbc-mysql-1.5.5.jar  /etc/guacamole/extensions

Nun können wir prüfen ob es ein Update Script für die Version gibt:

cd /srv/guacamole_source_153/ex/guacamole-auth-jdbc-1.5.5/mysql/schema/upgrade
 
ls -la
 
# es ist kein DB Upgrade Skript vorhanden, ansonsten müssten wir eins nach dem anderen einspielen bis zu unsere aktuellen Version

Extensions prüfen und upgraden bei Bedarf

 cd /etc/guacamole/extensions/
 
ls -la

In meiner Umgebung muss nur „guacamole-history-recording-storage-1.5.0.jar“ upgegraded werden:

Plugin hinterlegen
cd /srv/guacamole_source_155
mkdir ex
 
cd ex
 
wget https://downloads.apache.org/guacamole/1.5.5/binary/guacamole-history-recording-storage-1.5.5.tar.gz  
 
tar -xvf guacamole-history-recording-storage-1.5.5.tar.gz  
 
cd /srv/guacamole_source_153/ex/guacamole-history-recording-storage-1.5.3/
 
# Adapter hinterlegen
mv /etc/guacamole/extensions/guacamole-history-recording-storage-1.5.0.jar /tmp
 
cp guacamole-history-recording-storage-1.5.3.jar  /etc/guacamole/extensions/
 
 ls -la /etc/guacamole/extensions/

Neustart

Tomcat starten:

systemctl start tomcat

Testauf über http://<your-Server>:8080/guacamole-1.5.3/#/

Nun haben wir eine erste im Prinzip funktionierende Umgebung und können mit den ersten Tests beginnen.


Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
linux/oracle_linux_8_guacamole_update.txt · Zuletzt geändert: 2024/07/04 17:12 von gpipperr