Konfiguracja środowiska testowego i produkcyjnego na jednym serwerze aplikacyjnym
AMODIT składa się z trzech części:
- Baza danych
- Usługa asynchroniczna
- Aplikacja webowa
Dla utworzenia dwóch niezależnych środowisk: produkcyjnego i testowego, musimy mieć dwie niezależne instancje każdego z tych elementów. W przypadku gdy te środowiska mają być uruchomione na jednym serwerze aplikacyjnym, wymaga to odpowiedniej konfiguracji każdego z tych składników. Poniższy dokument opisuje założenia oraz niezbędne czynności konfiguracyjne aby możliwa była praca dwóch instancji AMODIT na tym samym serwerze. Należy pamiętać, że taka konfiguracja środowisk testowego i produkcyjnego nie umożliwia testowania sytuacji związanych z aktualizacją systemu operacyjnego Windows Server. Aktualizacja systemu operacyjnego lub innych komponentów Windows Server będzie miała oczywiście wpływ na obie zainstalowane na tym serwerze instancje AMODIT (produkcyjną i testową).
Założenia wstępne
Dział zatytułowany „Założenia wstępne”- Jako pierwsze, domyślne, instalujemy i konfigurujemy środowisko testowe. To może uchronić nas w przyszłości przed nieumyślnym zaktualizowaniem środowiska produkcyjnego zamiast, w pierwszej kolejności testowego. Zobacz instalacja Platformy AMODIT 2016
Podczas instalacji tworzymy bazę danych o nazwie np. AMODIT_TEST, aby w przyszłości nie zachodziła pomyłka, która baza obsługuje które środowisko.
- W wyniku powyższych czynności mamy zainstalowaną i działającą Platformę AMODIT. Tę instalację uznajemy za środowisko testowe. Należy zadbać również aby adres URL wyraźnie wskazywał, że jest to wersja testowa.
Przygotowujemy teraz środowisko produkcyjne.
Pierwszy element AMODIT – baza danych
Dział zatytułowany „Pierwszy element AMODIT – baza danych”- W managerze bazy danych kopiujemy bazę AMODIT (lub AMODIT_TEST w zależności jak nazwaliśmy naszą bazę testową) pod inną nazwę np. AMODIT_PRODUKCJA
Drugi element AMODIT – usługa asynchroniczna
Dział zatytułowany „Drugi element AMODIT – usługa asynchroniczna”Konfiguracja odrębnej instancji usługi AMODITAsynchronousService na potrzeby środowiska produkcyjnego (zobacz również uwagę odnośnie konta usługi w artykule Synchronizacja z Active Directory):
- Kopiujemy katalog, który powstał podczas instalacji wersji testowej (domyślna instalacja AMODIT). Jeżeli podczas instalacji nie zmieniliśmy domyślnego katalogu, to będzie to:
C:\Program Files\AstraFox sp. z o.o\AMODITAppsKopiujemy go i jego zawartość np. do katalogu:
C:\Program Files\AstraFox sp. z o.o\AMODITAppsProdukcja- W nowo powstałym katalogu AMODITAppsProdukcja odszukujemy pliki
- amodit.config(przykładowy plik amodit.config jest w aplikacji webowej z dodanym rozszerzeniem txt)
- Wykonujemy poniższe czynności:
- Otwieramy plik do edycji w notatniku
- Ustawiamy odpowiedni connectionString
<add key="DatabaseType" value="MSSQL">
<add name="AMODDB" connectionString="{connectionString}" />Odpowiednio zmieniamy miejsca oznaczone na żółto zgodnie z naszym środowiskiem:
- DatabaseType ustawiamy na MSSQL lub MySQL zgodnie z typem używanego serwera baz danych.
- Konstruujemy prawidłowy connectionsstrings w zależności od typu bazy danych
- Dla MySQL
Server=myServerAddress; Database=myDataBase; Uid=myUsername; Pwd=<hasło>;- Dla MSSQL
Data Source=myServerAddress; Initial Catalog=myDataBase; User Id=myUsername; Password=<hasło>;Aktualny connectionstring do bazy testowej (domyślnie zainstalowanej) można odczytać z DatabaseAdmin albo z rejestru z HKLM/Software/Datacom Software/AMOD. Dla środowiska produkcyjnego należy zmienić parametr connectionstring dla MySQL (Database), a dla MSSQL (Initial Catalog) aby wskazywał na bazę produkcyjną np. AMODIT_PRODUKCJA
Tworzenie nowej usługi
Dział zatytułowany „Tworzenie nowej usługi”-
Uruchamiamy Wiersz polecenia (Command line) w trybie Administratora
-
W oknie Wiersz polecenia rejestrujemy usługę Windows przy pomocy poleceń:
sc delete AMODAsync // AMODAsync to przykładowa nazwa drugiej usługisc create AMODAsync binPath= "\"C:...\AMODAsynchronousService.exe\"" //Podajemy odpowiednią scieżkęsc failure AMODAsync reset= 86400 actions= restart/10000sc start AMODAsyncpause
- Uruchomić powyższy skrypt.
Trzeci element AMODIT – aplikacja webowa
Dział zatytułowany „Trzeci element AMODIT – aplikacja webowa”- Odszukujemy katalog, w którym zainstalowana została aplikacja webowa AMODIT. Prawdopodobnie będzie to c:/inetpub/amodit
- Kopiujemy katalog z całą zawartością do innego katalogu np. do c:/inetpub/amodit_produkcja
- Uruchamiamy Menedżera usług IIS
- Tworzymy witrynę IIS z produkcyjną wersją AMODIT na innym adresie IP, nazwie hosta lub porcie wskazując skopiowany katalog.
- Wykonujemy czynności opisane tutaj (konwersja na aplikację)
- W katalogu c:/inetpub/amodit_produkcja dodać plik amodit.config ,taki sam wpis jak aplikacji AMODITApps
Czynności poinstalacyjne – usługi mailowe, powiadomienia, OCR itp.
Dział zatytułowany „Czynności poinstalacyjne – usługi mailowe, powiadomienia, OCR itp.”Mając dwa środowiska produkcyjne i testowe należy zadbać o następujące elementy
- Utworzyć odrębne katalogi dla indeksowania wyszukiwania pełnotekstowego. Niech będzie to:
- dla środowiska testowego c:\test_temp
- dla środowiska produkcyjnego c:\prod_temp
- Każdy z tych katalogów zarejestrować w odpowiedniej instancji AMODIT (testowej i produkcyjnej) w Ustawieniach systemowych->Usługi->Wyszukiwanie pełnotekstowe parametr TmpSearchDir
- Utworzyć odrębne katalogi dla usługi Lucene (nowa usługa wyszukiwania pełnotekstowego). Niech będzie to:
- Dla środowiska testowego c:\test_Lucene
- Dla środowiska produkcyjnego c:\prod_Lucene
- Każdy z tych katalogów zarejestrować w odpowiedniej instancji AMODIT (testowej i produkcyjnej) w Ustawieniach systemowych->Usługi->Wyszukiwanie pełnotekstowe parametr LuceneDir
- Jeżeli wykorzystywana jest usługa skanowania do folderu, to powinny być to odrębne foldery dla środowiska testowego i produkcyjnego. Niech będzie to:
- Dla środowiska testowego c:\test_skany
- Dla środowiska produkcyjnego c:\prod_skany
- Każdy z tych katalogów zarejestrować w odpowiedniej instancji AMODIT (testowej i produkcyjnej) w Ustawieniach systemowych->Usługi->Skany parametr FileLoaderPath
- Jeżeli wykorzystywana jest usługa tworzenia spraw na podstawie maila lub załączania dokumentów na podstawie maila, to należy odpowiednio skonfigurować odrębne skrzynki mailowe dla środowiska testowego i produkcyjnego oraz odpowiednio zmodyfikować ustawienia w procedurach korzystających z tych skrzynek.
- Zalecamy wyłączeniu usługi wysyłania powiadomień ze środowiska testowego, aby użytkownicy nie otrzymywali maili podczas testów, chyba że testowane jest wysyłanie maili na środowisku testowym.
- Zalecamy zmienić kolorystykę wersji testowej i produkcyjnej aby użytkownicy nie mylili się, w której instancji aktualnie pracują.
- Jeżeli używane są słowniki zewnętrzne należy zadbać o odpowiednią konfigurację aby nie doprowadzić do konfliktów pomiędzy środowiskami
- Jeżeli wykonane zostały integracje z systemami zewnętrznymi należy zadbać o odpowiednią konfigurację lub odłączenie integracji w wersji testowej aby nie doprowadzić do konfliktów danych
- Jeżeli wykorzystywana jest synchronizacja z AD należy przemyśleć i zadbać ewentualnie o wyłączenie synchronizacji na wersji testowej.
- Jeżeli na produkcji wykorzystywane jest SSO, to zaleca się w środowisku testowym ustawić normalne logowanie, aby użytkownicy świadomie logowali się i byli świadomi że pracują na środowisku testowym.
Po tych czynnościach AMODIT będzie dostępny pod dwoma różnymi adresami URL jeden dla produkcji, drugi dla testów. Jednocześnie oba środowiska będą korzystały z odrębnych usług AMODAsynchronousService oraz odrębnych baz danych.
Aktualizacja Platformy AMODIT w środowisku, w którym na jednym serwerze aplikacyjnym uruchomiono środowisko testowe i produkcyjne.
Dział zatytułowany „Aktualizacja Platformy AMODIT w środowisku, w którym na jednym serwerze aplikacyjnym uruchomiono środowisko testowe i produkcyjne.”Aktualizacja środowiska testowego.
Dział zatytułowany „Aktualizacja środowiska testowego.”- Z dostępnej paczki instalacyjnej przeprowadzić aktualizację AMODIT zgodnie z instrukcja aktualizacji Platformy AMODIT. W ten sposób zaktualizowany zostanie AMODIT na środowisku testowym i nie będzie to miało wpływu na środowisko produkcyjne.
Aktualizacja środowiska produkcyjnego na podstawie środowiska testowego.
Dział zatytułowany „Aktualizacja środowiska produkcyjnego na podstawie środowiska testowego.”- W managerze IIS zatrzymać witrynę aplikacji produkcyjnej.
- Wykonać kopie zapasową produkcyjnej bazy danych (prawdopodobnie AMODIT_PRODUKCJA)
- Wykonać kopię zapasową plików produkcyjnej aplikacji webowej (prawdopodobnie c:\inetpub\amodit_produkcja
- Zatrzymać usługę AMODAsynchronousServiceProdukcja,
- Wykonać kopię zapasową plików z katalogu C:\Program Files\AstraFox sp. z o.o\AMODITAppsProdukcja
- Z katalogu C:\Program Files\AstraFox sp. z o.o\AMODITApps skopiować do katalogu C:\Program Files\AstraFox sp. z o.o\AMODITAppsProdukcja Wszystkie pliki z pominięciem obydwu plików config (AMODAsynchronousService.exe.config, AMODDatabaseAdmin.exe.config)
- Przejść do katalogu C:\Program Files\AstraFox sp. z o.o\AMODITAppsProdukcja uruchomić AMODDatabaseAdmin.exe. Zaktualizować produkcyjną bazę danych wskazując ją w lewym oknie aplikacji AMODDatabaseAdmin. Uwaga: To jest aktualizacja tylko struktur tabel produkcyjnej bazy danych, a nie danych.
- Skopiować z katalogu testowej aplikacji webowej (prawdopodobnie c:\inetpub\amodit lub c:\inetpub\amodit_test) do katalogu produkcyjnej aplikacji webowej (prawdopodobnie c:\inetpub\amodit_produkcja wszystkie pliki
- Uruchomić usługe AMODAsynchronousServiceProdukcja
- W managerze IIS uruchomić witrynę aplikacji produkcyjnej.
Obie bazy danych działają na tej samej aplikacji, więc obie bazy powinny posidac tą samą wersję!!