| |
Informujemy, że od 19 Lipca 2010 na serwerach IBC.PL sukcesywnie następować będzie migracja wszystkich platform Serwerowych z systemu 32 bit na 64 bit, poniżej prezentujemy opis zmian i procedurę testową.
I) OPIS AKTUALIZACJI
1. ZMIANA ARCHITEKTURY SYSTEMU Z 32 BIT NA 64 BIT
Nowe wersje oprogramowania na serwerze pracują w architekturze 64 bitowej.
Architektura ta jest określana nazwą x86_64 lub amd64.
W związku ze zmianą mogą wystąpić następujące sytuacje:
a) samodzielnie kompilowane lub instalowane aplikacje muszą zostać zastąpione 64 bitowymi wersjami po aktualizacji. Serwer nadal będzie miał możliwość uruchamiania 32 bitowych aplikacji, jednak do ich działania może być konieczne przygotowanie 32 bitowych wersji bibliotek systemowych
b) moduły i biblioteki przygotowane dla języków takich jak perl, python, ruby muszą zostać wymienione na 64 bitowe odpowiedniki, w tym przypadku wersje 32 bitowe nie będą działać
c) moduły PHP wykorzystywane poprzez użycie funkcji dl() muszą zostać zastąpione przez wersje skompilowane dla nowej architektury (dotyczy to trybu CGI PHP, w trybie pracy jako moduł apache2 użycie funkcji dl() jest niemożliwe)
d) zmiana architektury pozwala na lepsze wykorzystanie zasobów serwera, jednak wiąże się to z większym zużyciem pamięci ram przez aplikacje (w zależności od aplikacji jest to 5-30% wzrost zapotrzebowania na pamięć), może okazać się że należy odpowiednio zwiększyć limity pamięci przyznanych dla aplikacji aby działały one w ten sam sposób po aktualizacji
2. AKTUALIZACJA BIBLIOTEK I NARZĘDZI SYSTEMOWYCH
Nowa wersja systemu serwera wirtualnego została przygotowana w oparciu o dystrybucję Debian Lenny, wszystkie wersje bibliotek systemowych oraz narzędzi i domyślnie instalowanego oprogramowania zostały zaktualizowane do wersji która dostępna jest w tej wersji dystrybucji
3. AKTUALIZACJA JĘZYKÓW INTERPRETOWANYCH SERWERA
a) PHP5.2
Wraz z aktualizacją systemu została przygotowana nowsza wersja języka PHP, obecnie jest to PHP w wersji 5.2.12. Nowa wersja głównie poprawia błędy znalezione w oprogramowaniu.
b) PHP5.3
Najnowsza wersja PHP została umieszczona w systemie jako opcjonalna.
Zastępuje ona PHP w wersji 5.2 i nie ma możliwości równoległego używania obu wersji PHP. Zmiany wersji można dokonać tylko za pośrednictwem BOK IBC.PL.
PHP5.3 to także następujące zmiany w konfiguracji:
- brak możliwości użycia zendoptimizer/zendguard, w przypadku wykorzystania tej metody zabezpieczenia kodu PHP należy użyć konkurencyjnej aplikacji - ionCube
- domyślna wartość konfiguracyjna register_globals to Off
- domyślna wartość konfiguracyjna register_long_arrays to Off
- domyślna wartość konfiguracyjna magic_quotes_gpc to Off
 |
UWAGA migracja na wersję 64bit NIE oznacza AUTOMATYCZNEGO przejścia z PHP5.2 na PHP5.3 - ta zmiana będzię przedmiotem oddzielnej migracji o czym informować będzięmy w oddzielnym komunikacie! |
c) Perl
Perl zostaje zaktualizowany do wersji v5.10.0. W przypadku instalacji modułów perl przez administratorów serwera lista dostępnych modułów nie zmieni się. W przypadku samodzielniej instalacji za pomocą CPAN może się okazać konieczna reinstalacja.
d) Ruby
Dostępne są równolegle 2 wersje ruby, 1.8.7 oraz 1.9.0, z tym że wersja 1.8.7 ustawiona została jako domyślna.
e) Python
Dostępne są 2 wersje języka: domyślna to 2.5.2, dodatkowo można używać starszej wersji 2.4.6.
4. AKTUALIZACJA SERWERA HTTP APACHE2 DO WERSJI 2.2
5. ZMIANY W KONFIGURACJI SERWERÓW
a) wycofane zostaje wsparcie dla szeregu modułów PHP
- eAccelerator, z eAccelerator usunięta została część odpowiedzialna za szyfrowanie stron, oraz funkcje nie związane bezpośrednio z cache opcode PHP
Powód: W nowej wersji PHP brak funkcji kodowania - brak wsparcia przez producenta
- mmcache, wsparcie dla pokazywania zaszyfrowanych stron poprzez mmcache zostało usunięte
Powód: W nowej wersji PHP brak funkcji kodowania - brak wsparcia przez producenta
- zendoptimizer/zendguard - od wersji PHP5.3 nie wspierane jest także szyfrowanie kodu za pomocą tych modułów, jest to związane z brakiem wsparcia producenta dla nowych wersji PHP
Powód: W nowej wersji PHP brak funkcji kodowania - brak wsparcia przez producenta
We wszystkich 3 przypadkach konieczne jest rozkodowanie skryptów, lub wykorzystanie dostępnego rozwiązania realizującego tą samą funkcjonalność, mianowicie ionCube www.ionCube.com).
b) zmieniona zostaje lista domyślnie zainstalowanych modułów PHP
W związku z małym zapotrzebowaniem z listy domyślnie zainstalowanych modułów PHP zostały usunięte następujące moduły (mogą być one nadal instalowane w razie potrzeby):
- fam
- gmp
- interbase
- ldap
- ming
- mnogosearch
- pdo_firebird
Do listy domyślnie dostępnych modułów zostały dodane natomiast moduły:
- imagick
- uploadprogress
c) wycofana zostaje możliwość użycia PHP4 w trybie pracy jako moduł serwera apache2
Jak juz informowaliśmy, dn. 08.08.2008r. wsparcie dla PHP4 przez developerów zostało zakończone. W związku z tym zdecydowaliśmy się na wycofanie możliwości używania PHP4 jako modułu dla serwera apache2.
Użycie PHP4 będzie możliwe tylko i wyłącznie w trybie CGI. Taki tryb pracy jest dużo wolniejszy i generuje znacznie większe obciążenie serwera , należy użyć go więc tylko w ostateczności, jeżeli potrzebne będzie wydłużenie okresu przejściowego w czasie dostosowania aplikacji do działania z PHP5. Należy się liczyć także z tym, że część skryptów nie będzie działać w trybie CGI (np. skrypty wykorzystujące autoryzację http).
 |
W pierwszej kolejności zalecamy aktualizację aplikacji lub dostosowanie do nowej wersji PHP. Większość najczęściej instalowanych aplikacji (Wordpress, phpBB, joomla itp.) jest dostępna dla PHP 5.3, a ich aktualizacja zalecana jest ZAWSZE przez producentów ze względów bezpieczeństwa. |
Aby włączyć tryb CGI pracy PHP oraz ustawić PHP4 jako wersję odpowiedzialną za przetwarzanie skryptów strony należy w katalogu strony utworzyć plik .htaccess o zawartości:
<IfModule !mod_PHP4.c> AddHandler application/x-httpd-PHP4 .PHP </IfModule>
Należy jednak pamiętać ze w takim przypadku nie będą respektowane ustawienia konfiguracji PHP realizowane poprzez .htaccess (dyrektywy PHP_value i PHP_flag).
II) PROCEDURA TESTOWA
Zdecydowaliśmy się na udostępnienie oddzielnego środowiska testowego działającego równolegle do środowiska produkcyjnego.
Aby przetestować działanie Państwa stron należy wykorzystać specjalnie przygotowane porty w adresach URL:
http - 9080
https - 9081
http://www.nazwadomeny.pl:9080/
https://www.nazwadomeny .pl:9081/
 |
Metoda może powodować, że w niektórych przypadkach adres portu będzie pomijany (w linkach na stronie). Dlatego można także skonfigurować IP serwera i port 9080 jako proxy w konfiguracji przeglądarki.
W takim przypadku niektóre wywołania do elementów które nie są na serwerze nie będą działać (np. zewnętrze js, grafika). |
Należy zwrócić uwagę na fakt, że serwer testowy korzysta z tych samych plików co strona produkcyjna.
W przypadku samodzielnego uruchamiania demonów w środowisku serwera należy także dokonać testów i prawdopodobnie reinstalacji demonów dla nowego środowiska. W razie takiej konieczności prosimy o kontakt z naszym BOK w celu zapewnienia dostępu do shell serwera testowego.
Dodatkowo proszę pamiętać, że nowe domeny i konta zakładane na produkcyjnym serwerze nie będą widoczne na serwerze testowym. Konfiguracja takich domen musi zostać wprowadzona przez BOK IBC.PL
|