Upgrade la cald al Mediation Controller¶
Important
Documentația privind upgrade-ul la cald al Mediation Controller se adresează oricărui Mediation Controller care funcționează cu Debian 11. Versiunea de Debian poate fi verificată cu următoarea comandă (de executat prin SSH sau în acces consolă):
1 | |
Informație
Vă amintim că trecerea la root pe mașinile Debian trebuie efectuată cu următoarea comandă:
1 | |
Planificare și pregătire¶
Deschiderea fluxurilor¶
La upgrade-ul produsului, numeroase pachete trebuie descărcate din repository-urile Debian, din cauza trecerii de la versiunea Debian 11 la 12. Accesul TCP 80 către security.debian.org și ftp.fr.debian.org trebuie deschis.
Pentru a testa deschiderea fluxurilor pe mașină, se poate lansa o sincronizare a repository-urilor Debian. Dacă se afișează mesaje de eroare privind accesul la repository-urile Debian, atunci fluxul de rețea nu este deschis, fiind probabil blocat de firewall-ul companiei. Sincronizarea repository-urilor poate fi inițiată cu următoarea comandă:
1 | |
Descărcarea mirrorului și a instrumentelor necesare¶
Mirrorul CyberElements Cleanroom 4.6 poate fi descărcat de la acest link (necesită crearea unui cont de client): Systancia Marketplace
În plus față de mirror, pentru procesul de upgrade vor fi necesare instrumente terțe:
- Un client SSH (pe Windows poate fi utilizat instrumentul PuTTY)
- Un client SCP (pe Windows pot fi utilizate instrumentele WinSCP sau FileZilla)
Instalarea și utilizarea instrumentului screen¶
Instrumentul screen permite deschiderea mai multor terminale shell într-o singură consolă. Utilizarea acestui instrument este indispensabilă pentru upgrade-ul la versiunea CyberElements Bastion, pentru a elimina dependența de stabilitatea conectivității de rețea. Într-adevăr, fără instrumentul screen, instalarea ar fi oprită în cazul întreruperii conectivității SSH cu serverele CyberElements Bastion.
Prin utilizarea instrumentului screen, la reconectarea la consola shell a echipamentelor CyberElements Bastion, se poate recupera terminalul în care a fost executat procesul de actualizare.
Pachetul screen ar trebui instalat cu următoarea linie de comandă:
1 | |
Pentru a deschide un nou terminal screen, trebuie executată următoarea comandă:
1 | |
Înlocuiți <ID> cu un nume care identifică sesiunea.
Exemplu
Pentru upgrade-urile de versiune CyberElements, identificatorul cye-upgrade este ușor de recunoscut. Comanda ar fi deci următoarea:
1 | |
Pentru a recupera un terminal deschis cu screen, este suficient să executați următoarea comandă:
1 | |
Înlocuiți <ID> cu numele definit la deschiderea sesiunii.
Exemplu
Terminalul deschis anterior cu identificatorul cye-upgrade poate fi recuperat cu următoarea comandă:
1 | |
Pentru a închide terminalul după finalizarea upgrade-ului, introduceți în terminal comanda exit sau combinația de taste ctrl+d.
Astfel veți reveni la consolă. Mesajul „screen is terminating” confirmă că terminalul a fost închis.
Extinderea spațiului pe disc al appliance-urilor virtuale¶
Appliance-urile virtuale Systancia Cleanroom 4.4 sau 4.5 necesită adăugarea unei extinderi de disc de 2 GB la partiția /usr. Această operațiune este necesară pentru a dispune de spațiu suficient pe disc pentru upgrade și pentru a evita blocarea în timpul operațiunii.
La conectarea la Mediation Controller, fie prin SSH, fie în mod consolă, un mesaj de bun venit vă informează că sunteți conectat la o mașină Systancia. O linie suplimentară indică versiunea appliance-ului.
Exemplu
Un appliance virtual Mediation Controller în versiunea 4.5 va da următorul rezultat:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | |
Dacă mașina nu este un appliance virtual furnizat cu versiunea 4.4 sau 4.5, acest capitol poate fi omis pentru a trece direct la upgrade.
Copie de siguranță recomandată insistent
Etapele următoare modifică partiționarea discului Mediation Controller. Dacă au fost efectuate modificări manuale, este posibil ca aceste instrucțiuni să nu fie adecvate, ceea ce ar duce la blocarea mașinii.
Înainte de a continua, realizați o copie de siguranță a mașinii sau, dacă este necesar, duplicați mașina virtuală. Instantaneele nu pot fi utilizate deoarece, în special cu VMware, împiedică extinderea unui disc.
La nivelul hipervizorului, extindeți cu 2 GB suplimentari spațiul pe disc al mașinii virtuale. Dacă extinderea discului nu este posibilă, verificați să nu existe instantanee și, în caz contrar, opriți mașina virtuală dacă extinderea la cald nu este suportată.
Odată extins spațiul pe disc la nivelul mașinii virtuale, sunt necesare următoarele comenzi, de executat ca root, pentru a extinde partiția /usr:
1 2 3 4 5 6 | |
Upgrade¶
Actualizarea pachetelor Debian¶
Deoarece upgrade-ul CyberElements Bastion necesită un upgrade al Debian, se recomandă să actualizați corect pachetele Debian 11 înainte de a trece la Debian 12. Pentru aceasta, executați următoarele comenzi ca root (actualizarea sistemului, apoi eliminarea pachetelor inutile):
1 2 3 | |
Pot apărea mesaje care vă cer să modificați configurarea mai multor fișiere de configurare. În aceste cazuri, selectați opțiunea de păstrare a configurării actuale.
Pregătirea driverelor Microsoft SQL Server¶
Sunt necesare operațiuni suplimentare dacă driverele Microsoft SQL Server sunt instalate (este cazul appliance-urilor virtuale furnizate de Systancia).
Pentru a verifica dacă sunt prezente pe server, se poate executa următoarea comandă ca root:
1 | |
Dacă nu apare niciun răspuns, atunci driverele nu sunt instalate și puteți trece la etapa de pregătire a oglinzii.
În caz contrar, dacă driverele sunt instalate, ar trebui să apară două pachete: msodbcsql17 și mssql-tools. Urmați instrucțiunile din această secțiune.
Exemple
Un server pe care driverele nu sunt instalate ar da următorul rezultat la comanda anterioară:
1 | |
Un server pe care driverele sunt instalate va da un rezultat similar cu acesta (versiunile pachetelor pot diferi):
1 2 3 | |
Următoarele comenzi sunt necesare pentru a instala o versiune anume a pachetelor, astfel încât upgrade-ul să se desfășoare cu succes:
1 | |
Configurați repository-ul Microsoft adaptat pentru Debian 12 pentru a pregăti upgrade-ul:
1 | |
Pregătirea mirrorului CyberElements Cleanroom 4.6¶
Mirrorul recuperat în faza de pregătire (fișier cu extensia tgz) trebuie trimis către server prin SCP. Trebuie plasat în directorul /tmp/.
În continuare, pregătiți mirrorul executând următoarele comenzi ca root (fișierele reziduale de la un upgrade de versiune anterior vor fi șterse):
1 2 3 | |
Configurarea APT¶
Managerul de pachete APT este configurat pentru a obține pachetele Debian 11; trebuie reconfigurat pentru a obține pachetele Debian 12. Este de asemenea necesar să actualizați referința la oglinda locală CyberElements Bastion. Pentru aceasta, executați următoarele comenzi ca root:
1 2 | |
În plus față de configurarea noilor repository-uri, vă recomandăm insistent să aplicați următoarea setare pentru a indica APT să nu instaleze dependențele recomandate care nu sunt strict necesare, în scopul reducerii numărului de componente instalate. Următoarea comandă aplică această setare caroot:
1 | |
În sfârșit, este necesar să actualizați lista pachetelor din repository-uri cu următoarea comandă:
1 | |
Declanșarea upgrade-ului de versiune¶
Accesați prin SSH serverul Mediation Controller și treceți la root, apoi deschideți un screen așa cum s-a indicat mai sus.
Începeți prin a actualiza anumite pachete specifice, pentru ca upgrade-ul de versiune să poată fi efectuat. Este de așteptat un mesaj de eroare la executarea primei comenzi, dar eroarea va fi corectată de a doua comandă:
1 2 | |
La upgrade-ul unui Mediation Controller de la Debian 11 la Debian 12, pachetul collectd este actualizat și devine incompatibil cu fișierul de configurare generat de CyberElements Bastion (/etc/collectd/collectd.conf). Acest lucru poate genera o eroare în timpul actualizării.
Pentru a evita acest lucru, dezactivați collectd:
1 2 | |
În continuare, upgrade-ul poate fi inițiat cu următoarea comandă:
1 | |
În timpul upgrade-ului, vi se vor pune mai multe întrebări privind păstrarea fișierelor de configurare și actualizarea lor conform configurării standard Debian 12, sau menținerea configurării specifice existente. Iată recomandările noastre pentru majoritatea fișierelor pe care le puteți întâlni:
| Fișier de configurare | Acțiune recomandată |
|---|---|
| /etc/issue | De păstrat, răspundeți N |
| /etc/issue.net | De păstrat, răspundeți N |
| /etc/security/limits.conf | De păstrat, răspundeți N |
| /etc/login.defs | De păstrat, răspundeți N |
| /etc/shibboleth/shibboleth2.xml | De păstrat, răspundeți N |
| /etc/shibboleth/shibd.logger | Aplicați modificările, răspundeți Y |
| /etc/default/ntpsec | Aplicați modificările, răspundeți Y |
| /etc/snmp/snmpd.conf | Aplicați modificările, răspundeți Y |
| /etc/logrotate.d/IPdivaServer | Aplicați modificările, răspundeți Y |
| /etc/ssh/sshd_config | De păstrat, răspundeți Keep the local version currently installed |
| /etc/ssh/ssh_config | Aplicați modificările, răspundeți Y |
| /etc/apache2/ports.conf | De păstrat, răspundeți N |
| /etc/init.d/apache2 | De păstrat, răspundeți N |
| /etc/modsecurity/modsecurity.conf-recommended | Aplicați modificările, răspundeți Y |
| /etc/ipdiva/httpd/commonParameters.conf | Aplicați modificările, răspundeți Y |
| /etc/ipdiva/care/djangosettings.ini | Aplicați modificările, răspundeți Y |
| /etc/crontab | Aplicați modificările, răspundeți Y |
| /etc/openssl.cnf | Aplicați modificările, răspundeți Y |
| /etc/audit/rules.d/audit.rules | De păstrat, răspundeți N |
| /etc/pam.d/su | De păstrat, răspundeți N |
| /etc/sysctl.conf | De păstrat, răspundeți N |
Acceptați mesajul de configurare al pachetului glibc: 
Acceptați repornirea automată a serviciilor: 
Odată upgrade-ul finalizat, executați următoarele comenzi pentru a reactiva collectd, a elimina pachetele inutile și a reporni mașina:
1 2 3 4 | |
Acțiuni specifice pentru Mediation Controller-ele în Cluster¶
Pe serverul Mediation Controller SLAVE, executați următoarele comenzi pentru a resincroniza secretul partajat între Mediation Controller MASTER și SLAVE:
1 2 | |
Upgrade-ul instanței de bază de date PostgreSQL¶
Pe serverul Mediation Controller, actualizați instanța de bază de date PostgreSQL de la versiunea 13 la versiunea 15. În acest scop, executați instrucțiunile următoare cu drepturile root adecvate.
Verificați starea instanțelor PostgreSQL înainte de migrare:
1 | |
Executați următoarele comenzi pentru a actualiza instanța de bază de date la versiunea 15 de PostgreSQL:
1 2 3 4 | |
Verificați dacă instanța de bază de date a beneficiat cu succes de upgrade. Trebuie să apară două instanțe, una în versiunea 13 și cealaltă în versiunea 15, aceasta din urmă fiind singura activă. Verificarea se face cu următoarea comandă:
1 | |
Dacă upgrade-ul s-a realizat cu succes, instanța de bază de date în versiunea 13 poate fi ștearsă:
1 | |
Se poate iniția ștergerea pachetelor PostgreSQL din versiunea 13:
1 | |
Migrarea bazei de date CyberElements Bastion¶
Configurarea produsului este stocată în baza de date, care trebuie migrată pentru a putea conține setările modificărilor aduse de noua versiune. Operațiunea se efectuează pe Mediation Controller ca root.
Arhitectură Cluster
Într-o arhitectură Cluster, operațiunea trebuie efectuată de pe un singur Mediation Controller, indiferent care.
Este de asemenea necesar să executați următoarea comandă:
1 | |
Migrarea datelor se declanșează cu o comandă echivalentă cu aceasta:
1 | |
Unde <org_clr> trebuie înlocuit cu numele organizației care urmează să fie migrată. Rețineți că, dacă Mediation Controller are mai multe organizații (multi-tenant), atunci va trebui să executați comanda de tot atâtea ori câte organizații trebuie migrate.
Exemplu
Pentru o platformă CyberElements Bastion care are organizațiile systancia și systancia-test, va trebui să executați următoarele comenzi:
1 2 | |
În urma migrării bazei de date, serviciul Apache2 trebuie repornit:
1 | |
Restaurarea configurărilor¶
Unele configurări au fost suprascrise în timpul procesului de upgrade și trebuie restaurate.
Fișierul commonParameters.conf:
Mutați etichetele <Location> referitoare la HTML5 Gateway-uri, care se află de obicei la sfârșitul fișierului, din fișierul /etc/ipdiva/httpd/commonParameters.conf.dpkg-old în /etc/ipdiva/httpd/commonParameters.extra.conf (creați fișierul dacă nu există). Dacă nu este prezentă nicio etichetă <Location>, pot fi copiate exemplele următoare.
1 2 3 4 5 6 7 8 9 10 11 12 13 | |
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 | |
Fișierul djangosettings.ini:
Copiați informațiile din linia 2 „allowed_hosts” a fișierului /etc/ipdiva/care/djangosettings.ini.dpkg-old în fișierul /etc/ipdiva/care/djangosettings.ini. Acest lucru poate fi automatizat cu următoarea comandă, executată ca root:
1 | |
Aplicarea restaurărilor:
Pentru a aplica restaurările, este necesară o repornire a serviciului Apache2 ca root:
1 | |
Validare¶
Odată upgrade-ul finalizat, infrastructura CyberElements Bastion trebuie validată pentru a vă asigura că funcționează corect înainte de revenirea în producție. Dacă validarea eșuează, luați în considerare o revenire prin restaurarea copiilor de siguranță ale serverelor CyberElements Bastion.
Accesați interfața de administrare a unei organizații, apoi mergeți la meniul „About” din bara de control pentru a verifica dacă versiunea Mediation Controller a fost actualizată cu succes la 4.6.
Primele teste de funcționare a platformei pot fi inițiate, dar recomandăm utilizarea versiunii 4.6 a Edge Gateway pentru a garanta o performanță optimă a aplicațiilor CyberElements Bastion.