Denne siden beskriver hvordan migreringen til de nye webserverne er tenkt gjort.
Strukturendring
Gammel struktur:
Én server (uranus)
- Apache 1.x
- PHP 4.x
- MySQL 3.23.x
- Instituttets sider, brukerwebsider og vhosts på denne serveren
Ny struktur:
To servere (alm og or)
- Apache 2.x
- PHP 5.x
- MySQL 3.23.x og 4.1.x
Brukerwebsider på or
Instituttets sider på alm
Vhoster på alm eller or avhengig av offisiellhet
- Revers-proxy på egen maskin, som får alle webserver-CNAMES, og skjuler for verden hvilken maskin ting faktisk ligger på.
Se også [NyWebserver/MaskinerOgStruktur].
Migrering
Et av hovedpoengene med den nye strukturen er å gjøre instituttets websider mer robuste. Denne migreringsplanen er derfor skrevet med fokus på dette.
På et overordnet nivå er planen slik:
Flytt brukerwebsider til alm (vha. revers-proxying)
Gjør or tilgjengelig for Bård som "nywww" e.l.
Bård får sine "Bård-sider" til å fungere på or
Flytt Bård-sider til or vha. revers-proxying
- Flytt vhoster i samarbeid med de ansvarlige
Problematikk
Filsystem-paths
Fra PHP-script og andre ting er det ymse referanser til absolutte stier som ikke lenger er riktige. Vi kan kjøre magisk grep og sed for å ta det aller meste, men det må informeres grundig til alle brukere.
Databaser
I første omgang vil vi ha en MySQL-server på hver web-server. Websider som aksesserer MySQL-databaser som ligger på "den andre serveren" i den nye strukturen, må endres.
Man må passe på å ha en clean cut-over for å unngå at skriveoperasjoner gjøres på flere servere -- kan være "umulig" å fikse skikkelig.
NFS-/SMB-eksportering
Revers-proxyen skjuler faktisk plassering av websider, men vi mangler noe tilsvarende når det gjelder eksponering av filsystemene for redigering.
PHP-versjoner
Det er noen (relativt få) kompatibilitetsproblemer fra PHP 4.x til 5.x. Blant annet var det lov å gjøre $this = <blabla> i PHP 4.x, men $this er hellig i 5.x. Dette gjøres blant annet i filen pw.php3 som nesten alle insituttets websider bruker. (Enkel endring, men det må huskes.)
MySQL-versjoner
Vi ønsker å gå over fra MySQL 3.23.x til 4.1.x. Dette må gjøres i flere steg, og gjøres enklest i forbindelse med overgangen til å bruke mysql.idi.ntnu.no.