Kihagyás

A Mediation Controller üzem közbeni verziófrissítése

Fontos

A Mediation Controller üzem közbeni verziófrissítéséről szóló dokumentáció minden Debian 11 rendszeren futó Mediation Controller komponensre vonatkozik. A Debian verziója a következő paranccsal ellenőrizhető (SSH-n vagy konzolhozzáférésen keresztül futtatandó):

1
cat /etc/debian_version

Információ

Emlékeztetőül: a Debian rendszerű számítógépeken a root felhasználóra való váltást a következő paranccsal kell végrehajtani:

1
su -

Tervezés és előkészítés

Hálózati folyamok megnyitása

A termék verziófrissítésekor a Debian 11-ről a Debian 12-re való átállás miatt számos csomagot kell letölteni a Debian-tárházakból. A TCP 80 hozzáférést meg kell nyitni a security.debian.org és az ftp.fr.debian.org címek felé.

A hálózati folyamok megnyitásának teszteléséhez elindítható a Debian-tárházak szinkronizálása a számítógépen. Ha a Debian-tárházak elérésével kapcsolatos hibaüzenetek jelennek meg, akkor a hálózati folyam nincs megnyitva, valószínűleg a vállalati tűzfal blokkolja. A tárházak szinkronizálása a következő paranccsal indítható el:

1
apt update

A tükör és a szükséges eszközök letöltése

A CyberElements Cleanroom 4.6 tükör erről a hivatkozásról tölthető le (ügyfélfiók létrehozása szükséges): Systancia Marketplace

A CyberElements Bastion tárházát hitelesítő systancia.gpg kulcsot szintén a Systancia Marketplace-ről kell letölteni.

A tükör mellett a verziófrissítési folyamathoz harmadik féltől származó eszközökre is szükség lesz:

  • Egy SSH-ügyfél (Windows rendszeren a PuTTY eszköz használható)
  • Egy SCP-ügyfél (Windows rendszeren a WinSCP vagy a FileZilla eszköz használható)

A screen eszköz telepítése és használata

A screen eszközzel több rendszerhéj-terminált nyithat meg egyetlen konzolon. A CyberElements Bastion verziófrissítéséhez elengedhetetlen ennek az eszköznek a használata, hogy a folyamat ne függjön a hálózati kapcsolat stabilitásától. A screen eszköz használata nélkül ugyanis a telepítés leállna, ha megszakad az SSH-kapcsolat a CyberElements Bastion kiszolgálókkal.

A screen eszköz használatával a CyberElements Bastion eszközeinek rendszerhéj-konzoljához való újracsatlakozáskor visszakereshető az a terminál, amelyben a frissítési folyamat futott.

A screen csomagot a következő parancssorral kell telepíteni:

1
apt install --no-install-recommends screen

Új screen terminál megnyitásához a következő parancsot kell végrehajtani:

1
screen -S <ID>

Cserélje le az <ID> helyőrzőt a munkamenetet azonosító névre.

Példa

A CyberElements verziófrissítései esetén a cye-upgrade azonosító könnyen felismerhető. A parancs tehát a következő:

1
screen -S cye-upgrade

Egy screen használatával megnyitott terminál újbóli eléréséhez egyszerűen hajtsa végre a következő parancsot:

1
screen -r <ID>

Cserélje le az <ID> helyőrzőt a munkamenet megnyitásakor megadott névre.

Példa

A korábban a cye-upgrade azonosítóval megnyitott terminál a következő paranccsal érhető el újra:

1
screen -r cye-upgrade

A terminál bezárásához a verziófrissítés befejeztével írja be a terminálba az exit parancsot, vagy használja a ctrl+d billentyűparancsot.

Ezzel visszatér a konzolhoz. A „screen is terminating” üzenet megerősíti, hogy a terminál bezárult.

Lemezterület bővítése virtuális berendezéseken

A Systancia Cleanroom 4.4-es vagy 4.5-ös virtuális berendezéseken 4 GB-os lemezbővítést kell hozzáadni a /usr partícióhoz. Erre a műveletre azért van szükség, hogy elegendő lemezterület álljon rendelkezésre a verziófrissítéshez, és a művelet ne akadjon el.

Amikor SSH-n vagy konzolmódban csatlakozik a Mediation Controller komponenshez, egy üdvözlő üzenet tájékoztatja arról, hogy Systancia-számítógéphez csatlakozott. Egy további sor az appliance verzióját jelzi.

Példa

A 4.5-ös verziót futtató Mediation Controller virtuális berendezés a következő eredményt adja:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
            ____            _                   _
        / ___| _   _ ___| |_ __ _ _ __   ___(_) __ _
        \___ \| | | / __| __/ _  | '_ \ / __| |/ _  |
            ___) | |_| \__ \ || (_| | | | | (__| | (_| |
        |____/ \__, |___/\__\__,_|_| |_|\___|_|\__,_|
                |___/
#################################################################
# WARNING:                                                      #
# You must have specific authorization to access this machine.  #
# Unauthorized access to this machine is prohibited and will be #
# considered as intrusion.                                      #
# Unauthorized users will be logged, monitored, and could be    #
# prosecuted.                                                   #
#################################################################
Systancia Cleanroom 4.5.0 B77

Ha a számítógép nem a 4.4-es vagy 4.5-ös verzióval szállított virtuális berendezés, ez a fejezet kihagyható, és közvetlenül a verziófrissítéssel lehet folytatni.

Biztonsági mentés erősen ajánlott

A következő lépések módosítják a Mediation Controller kiszolgáló lemezének particionálását. Ha korábban kézi módosításokat végeztek, előfordulhat, hogy az alábbi utasítások nem megfelelőek, és a számítógép blokkolt állapotba kerül.

A folytatás előtt készítsen biztonsági mentést a számítógépről, vagy szükség esetén duplikálja a virtuális gépet. Pillanatképek nem használhatók, mert – különösen VMware esetén – megakadályozzák a lemez bővítését.

Bővítse a virtuális gép lemezterületét további 4 GB-tal a hipervizor szintjén. Ha a lemez nem bővíthető, ellenőrizze, hogy nincsenek-e pillanatképek, és ha nincsenek, állítsa le a virtuális gépet, amennyiben az üzem közbeni bővítés nem támogatott.

Miután a virtuális gép szintjén megtörtént a lemezterület bővítése, a /usr partíció bővítéséhez a következő, root felhasználóként futtatandó parancsokra van szükség:

1
2
3
4
5
6
echo 1 > /sys/class/block/sda/device/rescan
start_lvm_partition=`fdisk -l /dev/sda | grep LVM | awk '{print $2}'`
echo -e "d\n2\nn\ne\n2\n\n\nn\n$start_lvm_partition\n\nt\n5\n8E\nw" | fdisk /dev/sda
pvresize /dev/sda5
lvresize -l +100%FREE /dev/mapper/SystanciaLVMGroup-usr
resize2fs /dev/mapper/SystanciaLVMGroup-usr

Verziófrissítés

A Debian-csomagok frissítése

Mivel a CyberElements Bastion verziófrissítése a Debian verziófrissítését is megköveteli, ajánlott a Debian 11 csomagjait megfelelően frissíteni, mielőtt átvált a Debian 12-re. Ehhez futtassa a következő parancsokat root felhasználóként (rendszerfrissítés, majd a szükségtelen csomagok eltávolítása):

1
2
3
apt update
apt upgrade -y
apt autoremove -y

Megjelenhetnek olyan üzenetek, amelyek több konfigurációs fájl konfigurációjának módosítását kérik. Ilyen esetben válassza a jelenlegi konfiguráció megtartását.

A Microsoft SQL Server illesztőprogramjainak előkészítése

További lépésekre van szükség, ha a Microsoft SQL Server illesztőprogramjai telepítve vannak (ez a helyzet a CyberElements által szállított virtuális berendezéseken).
Annak ellenőrzéséhez, hogy jelen vannak-e a kiszolgálón, a következő parancs futtatható root felhasználóként:

1
apt list --installed ms*

Ha nem jelenik meg válasz, az illesztőprogramok nincsenek telepítve, és folytathatja a tükör előkészítésének lépésével.
Ellenkező esetben, ha az illesztőprogramok telepítve vannak, két csomagnak kell megjelennie a listában: msodbcsql17 és mssql-tools. Kövesse az ebben a fejezetben leírt utasításokat.

Példák

Egy olyan kiszolgálón, amelyen az illesztőprogramok nincsenek telepítve, az előző parancs a következő eredményt adná:

1
Listing... Done

Egy olyan kiszolgálón, amelyen az illesztőprogramok telepítve vannak, az eredmény ehhez hasonló lesz (a csomagok verziói eltérhetnek):

1
2
3
Listing... Done
msodbcsql17/bullseye,now 17.10.6.1-1 amd64 [installed]
mssql-tools/bullseye,now 17.10.1.1-1 amd64 [installed]

A sikeres verziófrissítés biztosításához a következő parancsokkal a csomagok egy adott verzióját kell telepíteni:

1
env ACCEPT_EULA=Y apt install -y --allow-downgrades odbcinst=2.3.6-0.1+b1 odbcinst1debian2=2.3.6-0.1+b1 libodbc1=2.3.6-0.1+b1 unixodbc=2.3.6-0.1+b1 mssql-tools=17.9.1.1-1 msodbcsql17=17.9.1.1-1

A verziófrissítés előkészítéséhez konfigurálja a Debian 12-höz igazított Microsoft-tárházat:

1
echo "deb [arch=amd64] https://packages.microsoft.com/debian/12/prod bookworm main" > /etc/apt/sources.list.d/mssql-release.list

A CyberElements Cleanroom 4.6 tükör előkészítése

Az előkészítési fázisban letöltött tükröt (tgz kiterjesztésű fájl) SCP-n keresztül kell a kiszolgálóra másolni. A /tmp/ könyvtárba kell elhelyezni.

Ezután készítse elő a tükröt a következő parancsok root felhasználóként való végrehajtásával (a korábbi verziófrissítésekből visszamaradt fájlok törlődnek):

1
2
3
mkdir -p /opt/systancia/repository
rm -rf /opt/systancia/repository/*
tar xvzf /tmp/*.tgz -C /opt/systancia/repository/

Az APT konfigurálása

Az APT csomagkezelő a Debian 11 csomagjainak lekérésére van konfigurálva; újra kell konfigurálni, hogy a Debian 12 csomagjait kérje le. Frissíteni kell a CyberElements Bastion helyi tükörtárházára mutató hivatkozást is. Ehhez futtassa a következő parancsokat root felhasználóként:

1
2
echo -e 'deb http://security.debian.org/debian-security/ bookworm-security main contrib non-free non-free-firmware\ndeb http://ftp.fr.debian.org/debian bookworm main contrib non-free non-free-firmware\ndeb http://ftp.fr.debian.org/debian bookworm-updates main contrib non-free non-free-firmware' > /etc/apt/sources.list
echo "deb file:///opt/systancia/repository/ bookworm ipdiva" > /etc/apt/sources.list.d/systancia.list

A helyi tükörtárházat az előkészítési fázisban letöltött systancia.gpg kulcs hitelesíti. Küldje el SCP-n keresztül a kiszolgáló /tmp/ könyvtárába, majd telepítse a következő paranccsal root felhasználóként:

1
mv /tmp/systancia.gpg /etc/apt/trusted.gpg.d/

Az új tárházak konfigurálásán túl kifejezetten ajánlott a következő beállítás alkalmazása, amely arra utasítja az APT-t, hogy ne telepítse a nem feltétlenül szükséges ajánlott függőségeket, így csökkentve a telepített összetevők számát. A következő parancs root felhasználóként alkalmazza ezt a beállítást:

1
echo -e 'APT::Install-Recommends false;\nAPT::Install-Suggests false;' > /etc/apt/apt.conf.d/99norecommends

Végül frissíteni kell a tárházakban lévő csomagok listáját a következő paranccsal:

1
apt update

A verziófrissítés elindítása

Csatlakozzon SSH-n keresztül a Mediation Controller kiszolgálóhoz, váltson root felhasználóra, majd nyisson meg egy screen munkamenetet a fentiekben leírtak szerint.

Először frissítsen bizonyos csomagokat, hogy a verziófrissítés elvégezhető legyen. Az első parancs végrehajtásakor hibaüzenet várható, de a második parancs kijavítja a hibát:

1
2
apt install -y python3-cleanroom-django-mssql python3-ipdiva-ua-parser python3-ipdiva-user-agents python3-ipdiva-django2
apt install -y --fix-broken

Egy Mediation Controller kiszolgáló Debian 11-ről Debian 12-re történő verziófrissítésekor a collectd csomag frissül, és nem lesz kompatibilis a CyberElements Bastion által generált konfigurációs fájllal (/etc/collectd/collectd.conf). Ez hibát okozhat a frissítés során.

Ennek elkerülése érdekében kapcsolja ki a collectd szolgáltatást:

1
2
systemctl stop collectd 
systemctl disable collectd

Ezt követően a verziófrissítés a következő paranccsal indítható el:

1
apt dist-upgrade -y

A verziófrissítés során a rendszer több kérdést is feltesz arról, hogy megtartsa-e a konfigurációs fájlokat és frissítse-e őket a Debian 12 szabványos konfigurációja szerint, vagy a meglévő egyedi konfigurációt hagyja érvényben. Íme az ajánlásaink a legtöbb olyan fájlhoz, amellyel találkozhat:

Konfigurációs fájl Javasolt művelet
/etc/issue A megtartáshoz adja meg az N választ
/etc/issue.net A megtartáshoz adja meg az N választ
/etc/security/limits.conf A megtartáshoz adja meg az N választ
/etc/login.defs A megtartáshoz adja meg az N választ
/etc/shibboleth/shibboleth2.xml Megtartás, válasz: N
/etc/shibboleth/shibd.logger Módosítások alkalmazása, válasz: Y
/etc/default/ntpsec Módosítások alkalmazása, válasz: Y
/etc/snmp/snmpd.conf Módosítások alkalmazása, válasz: Y
/etc/logrotate.d/IPdivaServer Módosítások alkalmazása, válasz: Y
/etc/ssh/sshd_config Megtartás, válasz: Keep the local version currently installed
/etc/ssh/ssh_config Módosítások alkalmazása, válasz: Y
/etc/apache2/ports.conf Megtartás, válasz: N
/etc/init.d/apache2 Megtartás, válasz: N
/etc/modsecurity/modsecurity.conf-recommended Módosítások alkalmazása, válasz: Y
/etc/ipdiva/httpd/commonParameters.conf Módosítások alkalmazása, válasz: Y
/etc/ipdiva/care/djangosettings.ini Módosítások alkalmazása, válasz: Y
/etc/crontab Módosítások alkalmazása, válasz: Y
/etc/openssl.cnf Módosítások alkalmazása, válasz: Y
/etc/audit/rules.d/audit.rules Megtartás, válasz: N
/etc/pam.d/su Megtartás, válasz: N
/etc/sysctl.conf Megtartás, válasz: N

Fogadja el a glibc csomag konfigurációs üzenetét:

Fogadja el a szolgáltatások automatikus újraindítását:

A verziófrissítés befejezése után futtassa a következő parancsokat a collectd újraaktiválásához, a szükségtelen csomagok eltávolításához és a számítógép újraindításához:

1
2
3
4
systemctl start collectd
systemctl enable collectd
apt autoremove -y
reboot

A Mediation Controller fürtre vonatkozó műveletek

A SLAVE Mediation Controller kiszolgálón futtassa a következő parancsokat a MASTER Mediation Controller és a SLAVE közötti közös titkos kód újraszinkronizálásához:

1
2
hostManagerCtl masterSynchro /etc/ipdiva/secure/secret /etc/ipdiva/secure/secret
systemctl restart apache2

A PostgreSQL-adatbázispéldány verziófrissítése

A Mediation Controller kiszolgálón frissítse a PostgreSQL-adatbázispéldányt a 13-as verzióról a 15-ös verzióra. Ehhez hajtsa végre a következő utasításokat a megfelelő root jogokkal.

A migrálás előtt ellenőrizze a PostgreSQL-példányok állapotát:

1
pg_lsclusters

Futtassa a következő parancsokat az adatbázispéldány PostgreSQL 15-ös verzióra való frissítéséhez:

1
2
3
4
pg_dropcluster --stop 15 main
systemctl stop postgresql
pg_upgradecluster 13 main
systemctl start postgresql

Ellenőrizze, hogy az adatbázispéldány verziófrissítése sikeres volt-e. Két példánynak kell megjelennie: egy 13-as és egy 15-ös verziójúnak, amely az egyetlen aktív. Az ellenőrzés a következő paranccsal történik:

1
pg_lsclusters

Ha a verziófrissítés sikeres volt, a 13-as verziójú adatbázispéldány törölhető:

1
pg_dropcluster 13 main

Elindítható a 13-as verziójú PostgreSQL-csomagok törlése:

1
apt -y --purge autoremove postgresql-client-13 postgresql-13

A CyberElements Bastion adatbázis migrálása

A termék konfigurációját az adatbázis tárolja, amelyet migrálni kell, hogy tartalmazhassa az új verzió által bevezetett változások konfigurációit. A műveletet a Mediation Controller kiszolgálón kell elvégezni root felhasználóként.

Cluster architektúra

Cluster architektúra esetén a műveletet csak egyetlen Mediation Controller kiszolgálóról kell elvégezni, mindegy, melyikről.

Ezenkívül a következő parancsot is futtatni kell:

1
python3 /var/lib/ipdiva/care/manage.py migrate

Az adatmigrálás egy ehhez hasonló paranccsal indítható:

1
python3 /var/lib/ipdiva/care/manage.py migrate --database=<org_clr>

Itt a <org_clr> helyére a migrálandó szervezet nevét kell írni. Felhívjuk figyelmét, hogy ha a Mediation Controller több szervezetet kezel (multi-tenant), a parancsot annyiszor kell futtatnia, ahány szervezetet migrálni kell.

Példa

A systancia és a systancia-test szervezettel rendelkező CyberElements Bastion platform esetében a következő parancsokat kell futtatnia:

1
2
python3 /var/lib/ipdiva/care/manage.py migrate --database=systancia
python3 /var/lib/ipdiva/care/manage.py migrate --database=systancia-test

Az adatbázis migrálása után újra kell indítani az Apache2 szolgáltatást:

1
systemctl restart apache2

Konfigurációk visszaállítása

Egyes konfigurációk felülíródtak a verziófrissítési folyamat során, ezért vissza kell állítani őket.

commonParameters.conf fájl:

Helyezze át a HTML5 Gateway komponensekre vonatkozó <Location> címkéket, amelyek általában a fájl végén találhatók, a /etc/ipdiva/httpd/commonParameters.conf.dpkg-old fájlból a /etc/ipdiva/httpd/commonParameters.extra.conf fájlba (hozza létre a fájlt, ha nem létezik). Ha nincsenek <Location> címkék, a következő példák másolhatók.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
<Location /HTML5/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1234/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1234
</Location>

<Location /HTML5/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
</Location>
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
<Location /HTML5-1/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1234/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1234
</Location>

<Location /HTML5-1/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1234/systanciaHTML5-6.0/websocket-tunnel
</Location>

<Location /HTML5-2/>
    Order allow,deny
    Allow from all
    ProxyPass http://127.0.0.1:1235/systanciaHTML5-6.0/ flushpackets=on
    ProxyPassReverse http://127.0.0.1:1235
</Location>

<Location /HTML5-2/websocket-tunnel>
    Order allow,deny
    Allow from all
    ProxyPass ws://127.0.0.1:1235/systanciaHTML5-6.0/websocket-tunnel
    ProxyPassReverse ws://127.0.0.1:1235/systanciaHTML5-6.0/websocket-tunnel
</Location>

djangosettings.ini fájl:

Másolja át a /etc/ipdiva/care/djangosettings.ini.dpkg-old fájl 2. sorában található „allowed_hosts” információt a /etc/ipdiva/care/djangosettings.ini fájlba. Ez a következő paranccsal automatizálható root felhasználóként:

1
sed -i "2c\\`sed -n '2p' /etc/ipdiva/care/djangosettings.ini.dpkg-old`" /etc/ipdiva/care/djangosettings.ini

A visszaállítások alkalmazása:

A visszaállítások alkalmazásához újra kell indítani az Apache2 szolgáltatást root felhasználóként:

1
systemctl restart apache2

Validálás

A verziófrissítés befejezése után, az éles üzembe való visszatérés előtt validálni kell a CyberElements Bastion infrastruktúrát, hogy megbizonyosodjon a megfelelő működéséről. Ha a validálás sikertelen, fontolja meg a visszagörgetést a CyberElements Bastion kiszolgálók biztonsági mentéseinek visszaállításával.

Nyissa meg egy szervezet rendszergazdai felületét, majd a vezérlősáv „About” menüjét, és ellenőrizze, hogy a Mediation Controller verziója sikeresen 4.6-ra frissült.

Megkezdhetők a platform működésének első tesztjei, de a CyberElements Bastion alkalmazások optimális teljesítménye érdekében az Edge Gateway 4.6-os verziójának használatát javasoljuk.