Udostępnij za pośrednictwem


Wykonaj suchy przebieg uaktualnienia w środowisku przedprodukcyjnym

Azure DevOps Server 2022 r. | Azure DevOps Server 2020 r. | Azure DevOps Server 2019 r.

Czy muszę przeszkadzać?

Wykonywanie suchego przebiegu uaktualnienia w środowisku przedprodukcyjnym jest zdecydowanie zalecane, ale nie zawsze ma to sens. Jeśli zastanawiasz się, czy przeprowadzić uaktualnienie przedprodukcyjne, należy rozważyć koszty tego działania w stosunku do kosztów, które nie robią tego. W szczególności w przypadku wystąpienia problemu z uaktualnieniem produkcyjnym koszt podstawowy będzie związany z przestojem podczas wycofywania do starej wersji serwera TFS. W zależności od specyfiki uaktualnienia może to być szybki i prosty proces lub może to potrwać bardzo długo i obejmować wiele ruchomych części. Podobnie jak w przypadku uaktualniania złożoność wycofywania będzie zależeć od elementów, takich jak rozmiar baz danych, liczba zaangażowanych maszyn itp.

Podstawy

Jeśli zdecydujesz się przejść do przodu z uaktualnieniem przedprodukcyjnym, ogólny proces składa się z następujących elementów:

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

Tworzenie środowiska

W idealnym świecie środowisko przedprodukcyjne będzie wyglądało dokładnie tak samo jak w środowisku produkcyjnym — w ten sposób można uzyskać możliwie dokładny obraz czasu uaktualnienia, czy po drodze napotkasz jakiekolwiek problemy itp. W świecie rzeczywistym nie zawsze jest to jednak możliwe ani pożądane. Koszty aprowizowania drugiego zestawu identycznych maszyn do testowania przedprodukcyjnego mogą być zbyt uciążliwe. Nie pozwól, aby te rozbieżności cię zniechęcały, jednak prawie każde środowisko przedprodukcyjne jest lepsze niż nic.

Ochrona środowiska produkcyjnego

Bazy danych TFS zawierają wiele ustawień, które wskazują na różne zasoby w ich ś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 rezultacie środowisko przedprodukcyjne może powodować problemy w środowisku produkcyjnym i jest to najlepsze rozwiązanie podczas tworzenia środowiska przedprodukcyjnego w celu uniknięcia tego problemu.

Najważniejszym krokiem, który można wykonać, 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 programie SQL, w udziałach sieciowych itp. Opcje obejmują usługę sieciową (przy założeniu, że konto maszyny przedprodukcyjnej nie wymaga uprawnień w środowisku produkcyjnym) lub dedykowane konto domeny przedprodukcyjnej, jak w poniższym przykładzie.

Przykładowe konto usługi przedprodukcyjnej

Innym opcjonalnym krokiem jest dodanie wpisów do plików hostów przedprodukcyjnej w celu zamapowania nazw maszyn produkcyjnych na nieprawidłowe adresy IP. Zobacz tutaj wpis w Wikipedii, jeśli nie masz pewności, czym jest plik hostów. Może to uniemożliwić komunikację wychodzącą z maszyn produkcyjnych z maszyn przedprodukcyjnych.

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

Przywracanie baz danych

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

Wykonywanie uaktualnienia

Zainstaluj nową wersję serwera TFS na maszynach warstwy aplikacji. Przed uruchomieniem kreatora uaktualniania uruchom polecenie ChangeServerId. Zapewni to, że nie wystąpią problemy, jeśli uzyskujesz dostęp zarówno do środowisk produkcyjnych, jak i przedprodukcyjnych z tych samych klientów i należy wykonać je w dowolnym momencie klonowania kolekcji lub kompletnego wdrożenia.

Gdy wszystko będzie gotowe, uaktualnij środowisko przedprodukcyjne, wykonując te same kroki, których użyjesz do uaktualnienia środowiska produkcyjnego. Pamiętaj, aby użyć konta usługi, które nie ma uprawnień w środowisku produkcyjnym.

Konfigurowanie nowych funkcji

W niektórych uaktualnieniach wprowadzono nowe funkcje, które podejmują dodatkowe kroki do skonfigurowania, ponieważ obejmują one zmiany procesów w istniejących projektach. W zależności od specyfiki projektów i wersji programu TFS, z której uaktualniasz, może to być bardziej lub mniej skomplikowane. Zobacz tutaj , aby uzyskać szczegółowe informacje.

Wypróbuj rzeczy

Weź serwer przedprodukcyjny na spin! Poke około trochę, wypróbuj niektóre z nowych funkcji... Należy pamiętać, że niektóre elementy, takie jak uruchamianie kompilacji, wymagają dodatkowej konfiguracji.

Jeśli wykryjesz jakiekolwiek problemy, spróbuj wykonać je tutaj, aby uniknąć ponownego trafienia ich w środowisku produkcyjnym. Jeśli jesteś zadowolony, wywołaj go dzień i przejdź do uaktualnienia produkcyjnego.