Instalacja bazy danych SMS 2003 na klastrze SQL 2005, cz. I

Opublikowano: 28 lutego 2008

Już sam tytuł może dla znawców tematu zabrzmieć kontrowersyjnie. Baza danych SMS-a 2003 na klastrze? Przecież sam producent (czyli Microsoft) twierdzi, że tego zrobić się nie da. W Google też nie znajdziemy nic ciekawego poza informacjami, iż rozwiązanie to jest „not supported”

Czy więc jest to możliwe? Owszem. Niewątpliwe zalety takiego rozwiązania – które w wypadku klastrowania są oczywiste – skłoniły mnie do podjęcia wyzwania i opracowania skutecznej metody wdrożenia.

*
Zawartość strony
WstępWstęp
Podstawowe komponenty i konwencja nazewnicza Podstawowe komponenty i konwencja nazewnicza
Konfiguracja środowiska klastrowego Konfiguracja środowiska klastrowego
Upgrade do środowiska klastrowego Upgrade do środowiska klastrowego
Przeniesienie bazy danych Przeniesienie bazy danych
Niezbędna modyfikacja uprawnienień: Niezbędna modyfikacja uprawnienień:
Etap pierwszy migracji Etap pierwszy migracji
Etap drugi migracji Etap drugi migracji
Etap trzeci migracjiEtap trzeci migracji
Przeczytaj pozostałe części tego artykułuPrzeczytaj pozostałe części tego artykułu

Wstęp

Zanim przejdziemy do jakichkolwiek szczegółów – trzeba przypomnieć, że poniższy opis odnosi się do konfiguracji typu „not supported”. Jak zobaczycie Państwo, nie oznacza to „not possible”, natomiast ma jedną poważną konsekwencję: rozwiązanie to nie jest objęte standardową pomocą techniczną ze strony firmy Microsoft. Jeśli więc macie wykupioną usługę pomocy technicznej, uzgodnijcie późniejszą obsługę rozwiązania przed jego wdrożeniem (nie powinno być z tym większego problemu).

Druga kwestia to poziom zaawansowania – metodyka opisana poniżej do najprostszych nie należy i bez solidnej wiedzy na temat SMS-a 2003 i choćby podstaw SQL-a na klastrze nie zasiadałbym do jej realizacji (przynajmniej nie w środowisku produkcyjnym).

Jaki jest więc konkretnie nasz cel? Jest nim skorzystanie z dobrodziejstw posiadania bazy programu SMS-2003 w środowisku klastrowym SQL 2005. Platformą bazową rozwiązania jest system Microsoft Windows Server 2003 z najnowszym dodatkiem Service Pack (może być to wersja R2). W kolejnych częściach artykułu opisane zostaną dwa warianty – upgrade z pojedynczej bazy SQL 2000 lub 2005, a tahże nowa instalacja. Ze względu na późniejsze niewielkie utrudnienia w procesie aktualizacji zalecane jest korzystanie z nośnika instalacyjnego SMS 2003 z wbudowanym dodatkiem Service Pack 3. Klaster SQL 2005 powinien być zaktualizowany do wersji Service Pack 2.

Do początku stronyDo początku strony

Podstawowe komponenty i konwencja nazewnicza

Niezmiernie istotne jest wstępne ustalenie konwencji nazewniczej oraz adresacji wykorzystywanej w trakcie wdrożenia (poszczególne nazwy będą miały krytyczne znaczenie dla powodzenie przedsięwzięcia). Jest to oczywiście kwestia gustu; ja zaproponuję następujące nazwy i adresy IP dla komponentów bazowych:

Elementy podstawowe:

KomponentNazwa NETBIOSAdres IP/maska

Kontroler domeny

DC01

10.10.0.1/255.0.0.0

Site Serwer SMS 2003

SMSSRV

10.10.0.10/255.0.0.0

Środowisko klastrowe:

KomponentNazwa NETBIOSAdres IP/maska

Pierwszy węzeł klastra

NODE1

10.10.0.20/255.0.0.0

Drugi węzeł klastra

NODE2

10.10.0.21/255.0.0.0

Nazwa sieciowa klastra

CLUSRV

10.10.0.30/255.0.0.0

Wirtualny serwer SQL

CLUSQL

10.10.0.40/255.0.0.0

Do początku stronyDo początku strony

Konfiguracja środowiska klastrowego

Niezależnie od tego, czy przeprowadzany będzie upgrade, czy nowa instalacja SMS-a 2003, podstawą jest prawidłowo skonfigurowany klaster SQL 2005. Jego podstawowa konfiguracja, w przeciwieństwie do pozostałych opisanych tu działań, nie odbiega od standardów przedstawionych w dokumentacji Microsoft. Dlatego pozwolę sobie odnieść się do niej za pomocą odpowiednich linków.

Uwaga:

Jeżeli jesteśmy zainteresowani upgradem istniejącego środowiska SMS do klastra SQL, podstawowym elementem, który należy uwzględnić w trakcie instalacji środowiska SQL 2005, jest parametr collation (definiowany przez użytkownika w trakcie instalacji), który musi być identyczny z tym na bieżącej bazie wykorzystywanej przez SMS-a. W wypadku rozbieżności gwarantowane jest cykliczne pojawianie się błędów w statusie Site-a SMS.

Ażeby sprawdzić bieżącą collation na serwerze SQL 2000 należy:

Uruchomić SQL Enterprise Manager-a.

Rozwinąć grupę serwerów SQL i wybrać serwer hostujący bazę SMS.

We właściwościach serwera w zakładce General sprawdzić bieżące ustawienia collation.

Rys. 1. Uruchomienie SQL Enterprise Manager.

Rys. 1. Uruchomienie SQL Enterprise Manager.

Ażeby sprawdzić bieżącą collation na serwerze SQL 2005 należy:

Uruchomić SQL Server Management Studio.

Po uwierzytelnieniu się wejść we właściwości serwera SQL.

W zakładce General właściwości serwera odszukać wiersz Server Collation w celu sprawdzenia bieżących ustawień collation.

Rys. 2. Uruchomienie SQL Server Management Studio.

Rys. 2. Uruchomienie SQL Server Management Studio.

W sytuacji, gdy posiadamy już istniejący klaster SQL 2005, a jego parametr collation różni się od tego z bieżącej bazy systemu SMS, konieczna jest jego zmiana na serwerze klastrowym. Można tego dokonać za pomocą następującego polecenia, korzystając z nośnika instalacyjnego SQL 2005:

start /wait <nośnik_instalacyjny>\setup.exe /qn VS=<VSName> INSTANCENAME=<NazwaInstancji>_ 
REINSTALL=SQL_Engine REBUILDDATABASE=1 ADMINPASSWORD=<Hasło> SAPWD=<Hasło> SQLCOLLATION=<NowaCollation>_
SQLACCOUNT=<domena\użytkownik> SQLPASSWORD=< Hasło> AGTACCOUNT=< domena\użytkownik> > AGTPASSWORD=< Hasło> SKUUPGRADE=1

Gdzie:

VSName – nazwa wirtualnego serwera SQL (np. CLUSQL)

SQLCOLLATION – nazwa nowej collation (np. Latin1_General_CI_AS)

ADMINPASSWORD – hasło użytkownika na którym wykonujemy operację. Użytkownik ten musi posiadać uprawnienia administracyjne do wszystkich węzłów klastra.

SQLACCOUNT - konto serwisowe usługi SQL Server

SQLPASSWORD – hasło konta serwisowego usługi SQL Server

AGTACCOUNT - konto serwisowe usługi SQL Server Agent

AGTPASSWORD – hasło konta serwisowego usługi SQL Server Agent

Należy jednak wcześniej upewnić się, czy nie będzie miało to negatywnych skutków dla baz egzystujących na serwerze.

Opis instalacji standardowego klastra SQL 2005 znajduje się pod poniższym łączem:

http://technet.microsoft.com/en-us/library/ms179530.aspx

Niezbędne jest również poprawne skonfigurowanie na klastrze usługi MSDTC. Odpowiednie procedury znajdują się pod poniższymi łączami:

http://support.microsoft.com/kb/817064

http://support.microsoft.com/kb/301600

W wypadku wystąpienia jakichkolwiek problemów z łącznością konsoli administracyjnej SMS wynikających z posiadanej konfiguracji warto zapoznać się również z treścią poniższego artykułu:

http://support.microsoft.com/kb/317872

Konieczne jest również włączenie autentykacji Kerberos na zasobie klastrowym reprezentującym wirtualną nazwę serwera SQL.

Po wykonaniu tych operacji należy aktualizować bazę danych SQL 2005 do wersji Service Pack 2.

Do początku stronyDo początku strony

Upgrade do środowiska klastrowego

W wypadku posiadania istniejącej struktury SMS 2003, do przekierowania bazy danych na klaster SQL wykorzystywana będzie funkcja resetowania Site-u SMS.

Uwaga:

Opisany poniżej scenariusz zakłada, iż usługa SMS provider zainstalowana jest na serwerze hostującym bazę SMS (jest to typowa konfiguracja).

Do początku stronyDo początku strony

Przeniesienie bazy danych

W tym celu należy:

1.

Upewnić się, czy klienci nie korzystają z usług serwera SMS 2003, oraz czy na bieżącej bazie SQL nie są wykonywane zaplanowane zadania utrzymaniowe (takie jak backup, reindeksacja, itp.)

2.

Zatrzymać następujące usługi na serwerze SMS:

SMS_EXECUTIVE

SMS_SITE_COMPONENT_MANAGER

SMS Agent Host (jeżeli zainstalowany jest klient SMS)

3.

Zatrzymać następujące usługi na serwerze SQL hostującym bieżącą bazę SMS 2003

SMS Agent Host (jeżeli zainstalowany jest klient SMS)

SMS_SQL_MONITOR_NAZWASERWERASMS

4.

Wykonać kopię zapasową bazy danych SMS 2003 (nazwa bazy to SMS_sitecode)

5.

Odtworzyć bazę na klastrze SQL 2005.

Uwaga:

Na tym etapie nie wolno usuwać pierwotnej bazy danych – będzie ona jeszcze wykorzystywana w dalszym etapie migracji.

Do początku stronyDo początku strony

Niezbędna modyfikacja uprawnienień:

1.

Na poszczególnych węzłach klastra należy dodać do lokalnej grupy administratorów konto komputera będącego Site Server-em SMS. W moim wypadku jest to SMSSRV.

2.

Następnie należy utworzyć za pomocą SQL Server Management Studio security login dla konta komputera SMSSRV, oraz przypisać mu uprawnienia na poziomie Public do odtworzonej bazy danych SMS.

3.

Pozostałe uprawnienia zależą już od potrzeb bezpieczeństwa konkretnej implementacji systemu SMS. Ze względu na środowisko klastrowe dalsze uprawnienia powinny opierać się o ręcznie utworzone grupy domenowe, nie zaś lokalne. Grupy te powinny być odpowiednikami automatycznie tworzonych grup lokalnych SMSAdmins oraz SMS_SiteSystemToSQLConnection.

4.

Należy również zagwarantować docelowym użytkownikom korzystającym z konsoli administracyjnej SMS uprawnienia umożliwiające prawidłową łączność z usługą MSDTC pracującą na klastrze SQL. Najprostszym sposobem na osiągnięcie tego celu jest dodanie ich (jako np. grupy domenowej SMSAdmins) do grupy lokalnej Distributed COM Users na każdym z węzłów klastra SQL. W innym wypadku należy przypisać uprawnienia korzystając z konsoli dcomcnfg na każdym z węzłów klastra.

Kolejne czynności mają za zadanie przekierowanie lokalizacji bazy danych na adres wirtualnego serwera SQL oraz zainstalowanie na poszczególnych węzłach klastra providera WMI, a także usługi SMSSQLMON. Każdy z poniższych etapów ma określone wymagania, które są niezbędne do prawidłowego zakończenia operacji

Do początku stronyDo początku strony

Etap pierwszy migracji

Wymagania:

Wszystkie elementy usługi klastrowej aktywne na pierwszym węźle klastra (NODE1)

Drugi węzeł klastra (NODE2) całkowicie wyłączony

1.

Korzystając z instalatora SMS wykonać funkcję Reset Site i w polu nazwy serwera SQL wybrać nazwę wirtualnego serwera SQL (CLUSQL)

2.

Po zakończeniu funkcji Reset należy odczekać kilka minut. W tym czasie usługa zainstaluje usługę monitora, skonfigurowany zostanie również provider usługi WMI.

3.

Przed przystąpieniem do etapu drugiego należy sprawdzić:

czy na pierwszym węźle klastra uruchomiona jest usługa SMS_SQL_MONITOR_NAZWASERWERASMS

czy na partycji systemowej pierwszego węzła utworzone zostały katalogi SMSPROV, oraz SMS_ NAZWASERWERASMS

Do początku stronyDo początku strony

Etap drugi migracji

Wymagania:

Klaster SQL całkowicie niedostępny dla serwera SMS (co uzyskujemy poprzez jego wyłączenie, albo poprzez odcięcie komunikacji sieciowej)

1.

Korzystając z instalatora SMS wykonać funkcję Reset Site i w polu nazwy serwera SQL wybrać nazwę pierwotnego serwera (z którego migrowana była baza) na którym wciąż przechowywana jest baza SMS

2.

Zignorować błędy mówiące o niemożliwości skontaktowania się z serwerem SQL CLUSQL

3.

Po zakończeniu funkcji Reset należy odczekać kilka minut. W tym czasie usługa zainstaluje usługę monitora, skonfigurowany zostanie również provider usługi WMI.

Do początku stronyDo początku strony

Etap trzeci migracji

Wymagania:

Wszystkie elementy usługi klastrowej aktywne na drugim węźle klastra (NODE2)

Pierwszy węzeł klastra (NODE1) całkowicie wyłączony

1.

Korzystając z instalatora SMS wykonać funkcję Reset Site i w polu nazwy serwera SQL wybrać nazwę wirtualnego serwera SQL (CLUSQL)

2.

Po zakończeniu funkcji Reset należy odczekać kilka minut. W tym czasie usługa zainstaluje usługę monitora, skonfigurowany zostanie również provider usługi WMI.

3.

Przed przystąpieniem do etapu czwartego, należy sprawdzić:

czy na drugim węźle klastra uruchomiona jest usługa SMS_SQL_MONITOR_NAZWASERWERASMS

czy na partycji systemowej drugiego węzła utworzone zostały katalogi SMSPROV, oraz SMS_ NAZWASERWERASMS

O etapie czwartym migracji będzie można przeczytać w kolejnej części artykułu.

Do początku stronyDo początku strony

Przeczytaj pozostałe części tego artykułu

Instalacja bazy danych SMS 2003 na klastrze SQL 2005 cz.II


Maciej Bogucki

Maciej Bogucki (MCSE,MCSE+I,MCT)
Jest absolwentem Politechniki Gdańskiej. Projektowaniem i wdrażaniem rozwiązań opartych na produktach Microsoft zajmuje się od momentu pojawienia się technologii NT. Posiada certyfikaty MCSE oraz MCSE+I z rodzin produktów od NT4 do 2003. Główne obszary jego pracy to: Active Directory, systemy pocztowe, PKI oraz systemy kompleksowego zarządzania i monitorowania infrastruktury IT. Obecnie pracuje jako trener w Altkom Akademii S.A., gdzie nie ogranicza się tylko do prowadzenia szkoleń.


Do początku stronyDo początku strony