Wykonaj suchy przebieg uaktualnienia w środowisku przedprodukcyjnym

Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018 — TFS 2015

Uwaga

Azure DevOps Server wcześniej nosiła nazwę Visual Studio Team Foundation Server.

Czy muszę się tym zawęczać?

Wykonanie suchego uruchomienia uaktualnienia w środowisku przedprodukcyjnym jest zdecydowanie zalecane, ale nie zawsze ma to sens. Jeśli zastanawiasz się, czy wykonać uaktualnienie przedprodukcyjne, należy rozważyć koszty związane z jego nieuważne wykonanie. W szczególności jeśli coś pójdzie nie tak z uaktualnieniem produkcyjnym, podstawowym kosztem będzie przestój związany z powrotem do starej wersji serwera TFS. W zależności od specyfiki uaktualnienia może to być szybki i prosty proces lub może zająć bardzo dużo czasu i obejmować wiele ruchomych części. Podobnie jak w przypadku uaktualniania, złożoność wycofywania będzie zależeć od takich czynników, jak rozmiar baz danych, liczba zaangażowanych maszyn itp.

Podstawy

Jeśli zdecydujesz się przejść naprzód za pomocą uaktualnienia przedprodukcyjnego, ogólny proces składa się z:

  1. Stanie w środowisku przedprodukcyjnym, które jest podobne do środowiska produkcyjnego.
  2. Ochrona środowiska produkcyjnego.
  3. Przywracanie baz danych z kopii zapasowych.
  4. Wykonanie uaktualnienia.

Stałe środowisko

W idealnym świecie środowisko przedprodukcyjne będzie wyglądać dokładnie tak samo jak środowisko produkcyjne — w ten sposób można uzyskać jak najdokładniejszy obraz tego, jak długo będzie trwać uaktualnianie, czy napotkasz jakiekolwiek problemy w drodze itp. Jednak w świecie rzeczywistym nie zawsze jest to możliwe ani pożądane. Produkt nie obsługuje na przykład klonowania SharePoint integracji. Koszty aprowizowania drugiego zestawu identycznych maszyn do testowania przedproduktywnego mogą być zaporowe. Nie pozwól jednak, aby te rozbieżności cię odiedliły — prawie każde środowisko przedprodukcyjne jest lepsze niż nic.

Ochrona środowiska produkcyjnego

Bazy danych serwera TFS zawierają wiele ustawień, które wskazują różne zasoby w środowisku wdrażania. Na przykład parametry połączenia bazy danych kolekcji są przechowywane w bazie danych konfiguracji, podobnie jak udział sieciowy używany przez funkcję zaplanowanych kopii zapasowych. W związku z tym w środowisku przedprodukcyjnym można powodować problemy w środowisku produkcyjnym. Najlepszym rozwiązaniem podczas stałego działania środowiska przedprodukcyjnie jest podjęcia kroków, aby temu zapobiec.

Najważniejszym krokiem, jaki można podjąć, jest użycie konta usługi w środowisku przedprodukcyjnym, które nie ma żadnych uprawnień do środowiska produkcyjnego. W idealnym przypadku nie powinien mieć żadnych uprawnień w programie TFS, w SQL, w udziałach sieciowych itp. Dostępne opcje obejmują usługę sieciową (przy założeniu, że konto komputera w środowisku przedprodukcyjną nie wymaga uprawnień w środowisku produkcyjnym) lub dedykowane przedprodukcyjnie konto domeny, jak w poniższym przykładzie.

Przykładowe konto usługi przedprodukcyjnej

Innym opcjonalnym krokiem jest dodanie wpisów do plików hostów maszyn przedproduktywnych w celu mapowania nazw maszyn produkcyjnych na nieprawidłowe adresy IP. Jeśli nie masz pewności, co to jest plik hosts, zapoznaj się z wpisem w Wikipedii. Może to uniemożliwić komunikację wychodzącą do maszyn produkcyjnych z maszyn przedprodukcyjnych.

Przykładowe przekierowywanie plików AT i DT hostów

Przywracanie baz danych

Jeśli używasz kreatora zaplanowanych kopii zapasowych do generowania kopii zapasowych bazy danych z wdrożenia produkcyjnego, możesz go również użyć do przywrócenia kopii zapasowych we wdrożeniu przedprodukcyjną. Jeśli nie, możesz oczywiście postępować zgodnie ze standardowymi SQL procedurami przywracania kopii zapasowych. Lista baz danych do tworzenia kopii zapasowych i przywracania powinna zawsze obejmować bazę danych konfiguracji i wszystkie bazy danych kolekcji. Jeśli środowisko przedprodukcyjnych będzie zawierać funkcje raportowania, należy również uwzględnić bazy danych magazynu i serwera raportów.

Wykonanie uaktualnienia

Zainstaluj nową wersję serwera TFS na maszynach warstwy aplikacji. Przed uruchomieniem kreatora uaktualniania uruchom polecenie ChangeServerId. Dzięki temu nie będziesz mieć problemów, jeśli uzyskujesz dostęp zarówno do środowiska produkcyjnego, jak i przedprodukcyjnie z tych samych klientów i należy to zrobić za każdym razem, gdy klonujesz kolekcję lub pełne wdrożenie.

Gdy wszystko będzie gotowe, uaktualnij środowisko przedprodukcyjne, korzystając z tych samych kroków, które będą wymagane do uaktualnienia środowiska produkcyjnego. Pamiętaj, aby użyć konta usługi, które nie ma uprawnień w środowisku produkcyjnym.

Konfigurowanie nowych funkcji

Niektóre uaktualnienia wprowadzają nowe funkcje, które wymagają dodatkowych czynności konfiguracyjnych, ponieważ obejmują one zmiany procesów w istniejących projektach. W zależności od specyfiki projektów i wersji serwera TFS, z których jest uaktualnianie, może to być bardziej lub mniej skomplikowane. Szczegółowe informacje można znaleźć tutaj.

Wypróbuj

Sprawdź, jak poświęć serwer przedprodukcyjny. Poświęć trochę czasu, wypróbuj niektóre z nowych funkcji... Należy pamiętać, że niektóre rzeczy, takie jak uruchamianie kompilacji, będą wymagały dodatkowej konfiguracji.

Jeśli odkryjesz jakiekolwiek problemy, spróbuj je rozwiązać w tym miejscu, aby uniknąć ich powtórzenia w środowisku produkcyjnym. Gdy wszystko będzie zadowalało, zadzwoń na ten dzień i przejdź do uaktualnienia produkcyjnego.