Klonowanie maszyn wirtualnych za pośrednictwem sieci izolacji
Wirtualne laboratorium zarządzanie jest obszarem pojawiających się w cyklach rozwoju oprogramowania.Visual Studio Lab Management jest produktem w środowisku Visual Studio, że przynosi zarządzania wirtualne laboratorium do programistów i testerów.Za pomocą programu Visual Studio Lab Management, zespoły deweloperów można wykorzystać technologii wirtualizacji w ich rozwoju i przetestować labs do redagowania złożonych środowiskach wielowarstwowe z maszyn wirtualnych.Następnie można wdrożyć wersje aplikacji i uruchomić testy w tych środowiskach.
Jednym z powodów, dla producentów za pomocą wirtualizacji w laboratoriach programowania i testowania jest, że można tworzyć identyczne kopie lub klonów, wdrożonego maszyn wirtualnych przez kopiowanie kilku plików.Klonowanie jest przydatne w wielu scenariuszach.Na przykład deweloper, który wymaga kopię tester środowiska do odtworzenia problemu można utworzyć klonu tego środowiska.W zespole test indywidualne trybu można sklonować kopię środowisku i koordynować swoje badania wysiłki z reszty zespołu.Klonowanie oszczędza czas dla programistów i testerów, ponieważ nie mają wielokrotnie zainstalowania systemu operacyjnego i innych programów w każdym środowisku, które sami utworzą.
Wymagania
- Visual Studio Ultimate, Visual Studio Premium, Visual Studio Test Professional
Chociaż jest to łatwe sklonować środowisku wirtualnym, są konsekwencje klonowania, które należy wziąć pod uwagę.Maszyny w środowisku sklonowany mają takie same nazwy komputera, jak maszyny w oryginalne środowisko.W niektórych przypadkach może nawet mają tych samych adresów IP i adresy MAC.To może spowodować albo w jednym z klonów utracie połączeń sieciowych lub sieci ruch, który ma być celem jeden klon, osiągając drugiej zamiast.Ostatecznie niezamierzony skutek można wdrożyć aplikację w szczególności klon i przeprowadzania testów na kolejny klon.
[!UWAGA]
Izolacja sieci można używać tylko w środowiskach SCVMM.Ta funkcja nie jest dostępne dla standardowych środowisk.
Visual Studio Lab Management rozwiązuje te problemy i ułatwia bezpieczne klonowanie środowiska wirtualne za pomocą technologii o nazwie izolacji sieci.W tym temacie omówiono, jak izolacja sieci działa i porównuje klonowanie i bez izolacji sieci.Pierwszy przykład zawiera opis różnych form konfliktów, które mogą wystąpić między klonów, w przypadku braku izolacji sieci.Kolejnych przykładów zbadać wiele rozwiązań, aby zapobiec konfliktom przy użyciu programu Visual Studio Lab Management.
Konflikty sieci
Rysunek 1 pokazuje typowe środowisko wirtualne, którą można utworzyć za pomocą zarządzania laboratorium.To środowisko, o nazwie oryginalne środowisko ma dwie maszyny wirtualne: serwer WWW i serwera db.Maszyny te odpowiednio spełniają rolę serwerów sieci web i baz danych w aplikacji sieci web 3-warstwowej.W tym przykładzie Zakładamy, że członek zespołu rozwoju tworzenia to środowisko i wdrażania nowszej kompilacji aplikacją sieci web do niego.Zakładamy również, że migawki o nazwie nowszej kompilacji zostały podjęte na to środowisko po kompilacji został wdrożony.Migawki jest stan punktu w czasie środowiska.Można przywrócić i wznowić wykonywanie od ten zapisany stan w dowolnym momencie.Na rysunku przedstawiono nazwy komputerów, adresy IP i adresy MAC dwóch maszyn wirtualnych w oryginalne środowisko.
Oryginalne środowisko
Rysunek 2 przedstawia środowisku sklonowany poza oryginałem.Po klonowanie, rozpoczęcie obu środowiskach, następujące rodzaje sieci konflikty mogą wystąpić:
Występuje konflikt nazwy komputera
Konflikty adresów IP
Konfliktów adresów MAC
Oryginalne i sklonowany środowiskach wspólnej sieci
Dokładne wyniki każdego z tych konfliktów zależy od kilku czynników: system operacyjny w maszyn wirtualnych, infrastruktura sieciowa w laboratorium i tak dalej.Na rysunku 2 założyliśmy, czy statyczny adres IP i statyczny adres MAC zostały skonfigurowane w każdej maszyny wirtualnej, oryginalne środowiska.W związku z tym kiedy środowiska została sklonowana, sklonowany maszyn wirtualnych miał ten sam adresy IP i MAC.
Występuje konflikt nazwy komputera
Nazwa komputera jest przyjazna nazwa przypisana przez użytkownika w celu identyfikacji komputera w sieci.Dwa protokoły są zazwyczaj używane do rozpoznania nazwy komputera na adres IP: NetBIOS i serwera nazw domen (DNS, Domain Name System).Rozpoczęcie dwóch maszyn, które mają taką samą nazwę komputera w tym samym segmencie sieci NetBIOS wykrywa konflikt nazw i ostrzega użytkownika.Normalnie NetBIOS można wykrywać konflikty, tylko wtedy, gdy maszyny są w tym samym segmencie sieci.Jeśli maszyny nie znajdują się na tym samym segmencie sieci lub ostrzeżenia są ignorowane, następny poziom konfliktów występuje w systemie DNS.Usługa DNS jest centralne repozytorium dla maszyn rejestracji swoich nazw.Gdy dwa urządzenia, które mają taką samą nazwę próbują zarejestrować w usłudze DNS, druga maszyna może zastąpić wpisu utworzonego przez pierwszy komputer.W takim przypadku pierwsza maszyna, która rozpoczyna się nie jest osiągalny za pomocą rozpoznawania nazw.
Brak prostych sposobów w celu uniknięcia lub rozwiązania konfliktów nazw komputera.Zamiast tworzyć identyczne kopie środowisk, można dostosować każdy klon, podczas jej tworzenia za pomocą mechanizmu zwanego narzędzia sysprep.Narzędzie Sysprep jest częścią systemu operacyjnego Windows.Sklonować środowiska, w przypadku użycia narzędzia sysprep, każda maszyna wirtualna środowiska otrzymuje unikatową nazwę komputera, adres IP i adres MAC, które są inne niż oryginalne środowisko.Jednakże klonów nie są identyczne więcej.
Wpływ o unikatowej nazwy komputera w każdej klon, czy robi się to za pośrednictwem narzędzia sysprep lub ręcznej interwencji użytkownika, aby uniknąć konfliktów, zależy od oprogramowania instalowanego w maszynie wirtualnej.Aby zrozumieć, przyjrzyjmy się przykładowi.Gdy aplikacja została wdrożona na środowisko, web.config plik będzie tworzony na serwerze sieci web.W tym pliku bazodanowego nazwa komputera db-server jako część ciągu połączenia.Fragment tego pliku jest następujący:
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="ConnectionString"
value="Persist Security Info=True;User ID=dbuser;
Password=password;Initial Catalog=Store;Data Source=db-server"/>
</appSettings>
</configuration>
Gdy zmieniamy nazwę komputera serwera bazy danych w środowisku sklonowany również trzeba ręcznie zmienić web.config pliku poniżej, aby użyć nowej nazwy (db-server2 to nowa nazwa komputera, biorąc pod uwagę z maszyną wirtualną w środowisku sklonowany).
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="ConnectionString"
value="Persist Security Info=True;User ID=dbuser;
Password=password;Initial Catalog=Store;Data Source=db-server2"/>
</appSettings>
</configuration>
Ponadto program SQL Server dodatkowych kroków po zmianie nazwy komputera.Fragment kodu skryptów SQL, aby osiągnąć ten cel jest następujący:
sp_dropserver db-server
sp_addserver db-server2, local
GO
W poprzednim przykładzie przedstawiono, jak aplikacja ma być wymagana zmiana konfiguracji w przypadku zmiany nazwy komputerów.Zrozumiałe procedura ta jest zależna od aplikacji.Jeśli aplikacja zapisuje nazwę komputera do wpisów w bazie danych, zapisów wymaga zmiany w podobny sposób.W niektórych przypadkach być może trzeba ponownie instalować aplikacji, po zmianie nazwy komputera.Wykonywanie takie zmiany konfiguracji i reinstalacje się jasno, niezależność w celu uniknięcia w pierwszej kolejności przy użyciu klonowania.Wymaga to bardziej wydajnych rozwiązań niezależnych od aplikacji, który można bezpiecznie zezwolić na wiele klonów współistnienie bez konfliktów nazw komputera.
Konflikty adresów IP
Adres Internet Protocol (IP) jest używany do maszyn do komunikowania się ze sobą za pośrednictwem sieci TCP/IP.Adresy IP są przypisywane statycznie lub dynamicznie przez serwer DHCP w sieci.Każdy interfejs sieci połączonych w maszynie ma adres IP.Jeśli maszyny wirtualnej, na którym skonfigurowano statyczny adres IP jest sklonowana, a następnie umieszczone w tej samej sieci, co oryginalne maszyny wirtualnej, to istnieje konflikt adresów IP, oprócz konflikt nazw komputera.Można ręcznie usunąć konflikt, zmieniając adres IP jednego z klonów.Po raz kolejny wpływ zmiany adresu IP zależy jak statyczny adres IP jest używany przez aplikacje, które są zainstalowane na maszynach wirtualnych.
Po uruchomieniu sklonować maszyny wirtualnej, który jest skonfigurowany z dynamicznego adresu IP, występuje konflikt sieci przez krótki okres czasu.Wkrótce po sklonowany jest to pierwsza maszyna wirtualna, drugi maszynę wirtualną, aby połączyć się z siecią wykryje ten konflikt i koryguje się poprzez odnawianie adresu IP.Podobne pewien konflikt występuje za każdym razem, gdy sklonowany środowiska zostanie przywrócony do migawki, że została podjęta w oryginalne środowisko.Te okresy konfliktu zwykle nie są wystarczająco długi, aby wpływa na stosowanie.
Konfliktów adresów MAC
Adres hosta skryptów systemu Windows (MAC, Media Access Control) jest adres, który jest przypisany do każdego interfejsu sieciowego w maszynie.W przypadku przyrządów fizycznych jest przypisany do każdego interfejsu sieciowego przez producenta karty.W przypadku maszyn wirtualnych, istnieją dwa sposoby przypisywania adresów MAC: statyczne lub dynamiczne MAC.Można określić określonego adresu MAC, aby użyć dla interfejsu sieciowego maszyny wirtualnej.Jest to statyczne komputerów Macintosh.Można także pozwolić funkcji hypervisor dynamicznie przypisać adres MAC.Jest to dynamiczne komputerów Macintosh.Dynamiczne adresy MAC są przypisywane przez funkcji Hyper-V z puli adresów MAC, przy każdym uruchomieniu maszyny wirtualnej.Każdy host ma plan, aby wygenerować adresów MAC, tak aby nie wchodzą w konflikt z maszyn wirtualnych na innego hosta.
Jeśli statyczne adresy MAC są używane do maszyn wirtualnych w oryginalne środowisko, maszyn wirtualnych w środowisku sklonowany będzie miał ten sam adresów MAC.Powoduje to niezwłocznie MAC konflikty.Zduplikowane adresy MAC są trudniejsze do wykrycia, ponieważ nie zawsze były zgłaszane przez maszyny.Nawet wtedy, gdy są one zgłaszane, takie wiadomości są rejestrowane w Podglądzie zdarzeń systemu Windows.Dla użytkownika końcowego istnieją dwa możliwe konsekwencje zduplikowanych adresów MAC.Jedną z konsekwencji jest utrata połączenia sieciowego na jednej lub obu klonów.Innym skutkiem jest, że pakiety sieciowe adresowane do jednego stanowiska mogą zamiast tego dotrzeć do innego komputera.Gdy oryginalny komputer i jego imitacja mają ten sam adresów MAC, adresy IP są również takie same.Nawet kiedy używany jest protokół DHCP do uzyskiwania dynamicznych adresów IP, serwer DHCP będzie przypisywać im tych samych adresów IP ich adresy MAC są identyczne.
Do pewnego stopnia Aby uniknąć konfliktów MAC za pomocą dynamicznych adresów MAC.Jednak po przywróceniu środowiska sklonowane do migawki, że została podjęta w oryginalne środowisko całego Państwa tych maszyn wirtualnych jest wycofywany, łącznie z powrotem adresów MAC.Powoduje to po raz kolejny konflikty MAC i takie same problemy opisane wcześniej istnieje po ponownym uruchomieniu sklonowany maszyny wirtualnej.Ponowne uruchamianie środowiska sklonowany powoduje, że monitor maszyny wirtualnej zwolnić i odnowić adresy MAC z wartościami z własnego zakresu.
Wykrywanie i rozpoznawanie form konfliktów, które opisanym powyżej i Ręczne ustawianie sterowników w systemie OS/application, aby kontynuować pracę po rozdzielczość, jest znaczny, czasochłonne i podatna na częste użytkownikom zarządzanie wirtualne laboratorium.W wielu przypadkach zmiana dowolnego z tych parametrów zmienia środowiska wirtualnego wystarczająco spowodować utratę reprodukcji błąd lub podobny problem z środowiska produkcyjnego.Zasada instalacji aplikacji jeden raz w środowisku wirtualnym i bezproblemowe klonowanie środowisko, to aby utworzyć wiele identycznych kopii wymaga bardziej wyszukane metody niż zwykli użytkownicy mogą się spodziewać robić.
Izolacja sieci
Do tej pory zostały zidentyfikowane dwa wymogi.Pierwszym wymogiem jest, że maszyn wirtualnych w środowisku sklonowany muszą mieć takie same nazwy komputera, adresy IP i adresy MAC, jak te w oryginalne środowisko.Ale w tym samym czasie, klonów te muszą być niezależnie adresowalnych z poza środowiskiem.Jest to konieczne, na przykład, dla kogoś do ustanowienia połączenia z każdym klonów na komputerach stacjonarnych, dla aplikacji rozmieszczone na szczególne klon lub aby badanie było uruchamiać na szczególne klonu.Prowadzi to do drugiego wymagania, który jest, że maszyn wirtualnych w środowisku sklonowany również muszą mieć nazw, adresów IP i adresy MAC, które są inne niż oryginalne środowisko.Logiczny sposób, aby osiągnąć oba te wymagania jest dla każdej maszyny wirtualnej mieć dwa interfejsy: interfejs prywatny, dla którego nazwa komputera, adres IP i adres MAC są takie same w każdym klon; i interfejsu publicznego, dla których wartości te są unikatowe w każdej klonu.
Aby zapobiec konfliktom sieciowego na interfejsach prywatnych, muszą być podłączony do sieci prywatnej, w każdym klon.Sieć prywatna jest sieci wirtualnej, która jest ograniczona do tylko maszyn wirtualnych w środowisku.Ponieważ ta sieć nie jest ujawniona poza granice środowisku, nie było możliwości konfliktów, nawet jeśli takimi samymi nazwami komputerów, adresy IP i adresy MAC są używane w innym klonu.Ułatwienia dostępu z poza środowiskiem wszystkich interfejsów publicznych musi być podłączony do wspólnej sieci publicznej.Sieć publiczna lub sieci laboratorium jest sieci, na którym maszyn wirtualnych środowisk można odwoływać się do klientów i innych komputerów w laboratorium.
Na rysunku 3 przedstawiono jak prywatnych i publicznych interfejsów sieciowych konfliktów.
Izolacja sieci w Visual Studio Lab Management
Visual Studio Lab Management implementuje izolacji sieciowych dla środowisk SCVMM, wprowadzając dwa interfejsy sieciowe w każdej maszyny wirtualnej.Jeden z tych interfejsów sieciowych jest prywatny interfejs podłączony do prywatnej sieci, a druga jest publiczny interfejs podłączony do sieci publicznej.
Oprogramowanie do zarządzania laboratorium, łącznie z agentem, zainstalowany na wszystkich maszynach wirtualnych gwarantuje, że oryginalne środowisko i sklonowany środowiska mogą współistnieć bez konfliktów.
Interfejsach prywatnych w sieci prywatnej
Poniższy opis przedstawiono podsumowanie jak nazwy komputerów, adresy IP i adresy MAC są przypisywane do prywatnych interfejsów środowiska.
Nazwy komputerów: nazw komputerów w sieci prywatnej są rozpoznawane za pomocą systemu NetBIOS i nie wymagają żadnych dodatkowych czynności przez oprogramowanie do zarządzania laboratorium.Aplikacje, które są skonfigurowane do pracy z nazw NetBIOS komputerów będzie działać w oczekiwany sposób w każdym klon.W naszym przykładzie komputer serwera sieci web odwołuje się do komputera serwera db przy użyciu jego nazwy.Te nazwy są takie same, w środowiskach oryginalne i sklonowanym.W związku z tym plik web.config nie ma zostać zmieniony w środowisku sklonowanym.
Ponieważ nie ma żadnego serwera DNS w sieci prywatnej, potrzebujemy rozwiązania danej sytuacji, gdy w pełni kwalifikowane nazwy domeny (FQDN) są używane przez maszyny wirtualne do odwoływać się do siebie, a nie nazwy NetBIOS.Na przykład jeśli plik web.config wskazanej serwera db jako db-server.lab.contoso.com, następnie rozdzielczość tej nazwy na adres IP nie będzie możliwe bez DNS w sieci prywatnej.Aby rozwiązać ten problem, działa na maszynie wirtualnej agent lab Dodaje wpisy, które odnoszą się do innych maszyn wirtualnych tego samego środowiska w pliku hosts.Plik hosts to kolejny sposób wskazanie system operacyjny, nazwę, musi ona zostać zamieniona na określony adres IP.W naszym przykładzie plik hosts na serwerze sieci web będzie zawierał następujący wpis:
192.168.23.2 db-server.lab.contoso.com
Adresy IP: statycznego adresu IP z 192.168.23.1 - 255 zakresu jest przypisany do interfejsu każdej maszyny wirtualnej sieci prywatnej.Na przykład interfejs prywatny-serwera sieci web pobiera 192.168.23.1 i db-prywatnego interfejsu serwera dostaje 192.168.23.2.Zarządzanie Lab zapewnia, że serwer sieci web i serwery db się tym samym statycznych adresów IP w każdym klon.W związku z tym nawet jeśli plik web.config na serwerze sieci web jest skonfigurowany z db-adres IP serwera, nie ma być wymagana zmiana konfiguracji w środowisku sklonowanym.W każdym środowisku, który jest skonfigurowany z sieci izolacji prywatnych interfejsach uzyskać adresy IP z tego samego zakresu, począwszy od 192.168.23.1.Maksymalna liczba adresów potrzebne w tym zakresie jest taka sama, jak maksymalną liczbę maszyn wirtualnych w środowisku.Ponieważ ten zestaw adresów IP nie jest routingu z zewnątrz sieci prywatnej, bezpiecznie użyć wstępnie zdefiniowanych zakresu, tak długo, jak ten sam zakres nie jest używany w sieci publicznej.
Adresy MAC: losowe statyczny adres MAC jest przypisany do interfejsu sieci prywatnej każda maszyna wirtualna w izolowanym środowisku sieciowym.W naszym przykładzie interfejs prywatny w oryginalnego serwera sieci web podano adres MAC, takich jak 00-15-5D-07-57-01.Zarządzanie Lab zapewnia, że ten serwer sieci web pobiera tego samego adresu MAC w sklonowany środowiska oraz.Ponieważ ten zestaw adresów MAC nie routingu z zewnątrz sieci prywatnej, jest bezpieczne w użyciu losowy adres, tak długo, jak nie są one w zakresie funkcja hypervisor używa na tym hoście.
Interfejsy publiczne w sieci publicznej
Poniższy opis przedstawiono podsumowanie jak nazwy komputerów, adresy IP i adresy MAC są przypisywane do interfejsów publicznych otoczenia.
Nazwy komputerów: nie chcemy NetBIOS do rozpoznawania nazw komputerów w sieci publicznej, ponieważ takie postępowanie tak spowoduje konflikt nazw komputera.Aby temu zapobiec, zarządzania laboratorium wyłącza emisje NetBIOS na interfejsie publicznym każda maszyna wirtualna.Podobnie jak w NetBIOS, nie chcemy maszyn wirtualnych do rejestracji swoich nazw NetBIOS komputerów w usłudze DNS.Zarządzanie Lab wyłącza rejestrację DNS, jak i dla każdego interfejsu publicznego.W przypadku braku NetBIOS i domyślne rejestrację DNS chcemy nadal maszyny wirtualne na potrzeby mają unikatowe nazwy, które mogą być używane w sieci publicznej.Zarządzania laboratorium generuje nazwę unikatowego aliasu w imieniu każdej maszyny wirtualnej, a która rejestruje jako '' rekordu w systemie DNS.W naszym przykładzie serwer sieci web w oryginalne środowisko może być zarejestrowany przy użyciu nazwy unikatowego aliasu, podobne do VSLM-195ea870-34d87df83883add23-47ab86ff.lab.contoso.com.Tym samym serwerze sieci web w środowisku sklonowany jest zarejestrowany, używając innej nazwy, które mogą przypominać VSLM-87ead667a-8787adde877919aaa-2001874d0.lab.contoso.com.
Adresy IP: interfejsu sieci publicznej na każdej maszynie wirtualnej jest skonfigurowany do uzyskiwania dynamicznego adresu IP z serwera DHCP.Zapewnia to, że maszyny wirtualne w środowiskach oryginalnego i sklonowany mają unikatowych adresów IP.Na przykład serwer sieci web w oryginalne środowisko można uzyskać adres IP 172.52.20.140 i tym samym serwerze sieci web w środowisku sklonowany można uzyskać adres IP 172.52.20.205.
Adresy MAC: Aby zapobiec konfliktom MAC, interfejs sieci publicznej na każda maszyna wirtualna może być skonfigurowanego do pobierania dynamicznych adresów MAC funkcji hypervisor.Zapewni to, że maszyna serwer sieci web, w tym przykładzie zostanie inny adres MAC w środowiskach oryginalnego i sklonowanym.Jednak jak opisano wcześniej, po przywróceniu środowiska sklonowane do migawki w oryginalne środowisko, adres MAC i IP sklonowany maszyny wirtualnej udzielać takich samych wartościach jak oryginał.Na przykład, po przywróceniu środowiska sklonowany do najnowszej wersji migawka, adres IP serwera sieci web staje 10.86.51.61 (patrz rysunek 3), który ma tę samą wartość jak oryginalne środowisko.To samo dzieje się z adresem MAC, jak również.Konflikt adresów IP jest tymczasowe, dopóki nie zostanie odnowiona przez serwer DHCP, dopóki nie zostaną ponownie uruchomione maszyny wirtualne występowania tych konfliktów MAC.Ze względu na to ograniczenie przy użyciu dynamicznie przypisywany adresów MAC z funkcji hypervisor interfejsów publicznych nie jest możliwe rozwiązaniem.
Aby rozwiązać ten problem, zarządzania laboratorium używa własnej puli adresów MAC.Unikatowe adresy MAC z tej puli są przypisane do interfejsów publicznych maszyn wirtualnych.W każdym przypadku, gdy sklonowany środowiska zostanie przywrócona do migawki, zarządzania laboratorium zmiany adresów MAC automatycznie, aby zapobiec konfliktom.Aby zrozumieć, jak to działa, należy wziąć pod uwagę że adres MAC serwerze sieci web w oryginalne środowisko jest 1D-D8-B7-1C-00-05 i 1D-D8-B7-1C-00-07 to adres MAC serwera sieci web w środowisku sklonowanym.Po przywróceniu środowiska sklonowane do migawki w oryginalne środowisko MAC adres serwera sieci web staje się 1D-D8-B7-1C-00-05 chwilowo.Zarządzanie Lab zmienia ten powrót do 1D-D8-B7-1C-00-07 do zapobiegania konfliktom sieci.
Typowe interakcje z izolacją sieci
Następnie zajmiemy się, co się dzieje, gdy dwóch maszyn wirtualnych w środowisku komunikują się ze sobą:
Serwer sieci Web używa systemu NetBIOS lub pliku hosts do rozpoznania nazwy komputera "db-server" na adres IP db-serverw interfejsie prywatnym (192.168.23.2).
Serwer sieci Web, który komunikuje się z db-server pod tym adresem IP.
Gdy klient poza środowiskiem musi komunikować się z serwerem sieci web w środowisku sklonowany, jest następująca procedura:
Klient wysyła oprogramowanie do zarządzania laboratorium uzyskać unikatowego aliasu nazwy serwera sieci web w środowisku sklonowanym.
Oprogramowanie do zarządzania laboratorium odpowiada nazwę unikatowego aliasu.
Serwer DNS rozpoznaje nazwę aliasu unikatowy adres IP interfejsu publicznego w sieci web server (10.86.51.63).
Klient komunikuje się z serwerem sieci web pod tym adresem IP.
Alternatywne podejście do izolacji sieci
Używanie dwóch interfejsów nie jest to jedyne podejście do izolacji sieci.Bardzo podobne podejście jest użycie dwukierunkowego translatora adresów sieciowych.Translator adresów Sieciowych jest wspólne podejście do tworzenia sieci prywatnej, urządzeń, które muszą komunikować się z urządzeniami w sieci publicznej.Mimo, że komunikacja typowe Translator adresów sieciowych zawsze muszą pochodzić z sieci prywatnej, komunikacja dwukierunkowa translatora adresów Sieciowych (lub dwukierunkowy translatora adresów Sieciowych) ma to krok do przodu, co umożliwia komunikację zainicjowane przez komputery w sieci prywatnej lub przez osoby w sieci publicznej.
Do realizacji izolacji sieci przy użyciu tej metody, z serwera NAT dwukierunkowy musi wprowadzić w środowisku.Zazwyczaj odbywa się przez dodanie specjalnej maszynie wirtualnej dla środowiska, które po prostu będzie pełnić rolę serwera NAT dwukierunkowego.Po utworzeniu izolowanym środowisku sieci publicznych i prywatnych adresów IP maszyn wirtualnych są przypisywane w taki sam sposób jak podejście dwa interfejsy.Jednak zamiast przypisywania publiczny adres IP do interfejsu sieciowego w maszynie wirtualnej, mapowania są przechowywane w tabeli translacji adresów Sieciowych na serwerze NAT. dwukierunkowy.
Kroki dla dwóch maszyn wirtualnych w środowisku do komunikowania się ze sobą za pomocą podejścia NAT 2-kierunkowe są identyczne ponieważ są one w dwa podejścia interfejsów:
Serwer sieci Web używa systemu NetBIOS lub pliku hosts do rozpoznania nazwy komputera db-server na adres IP db-serverw interfejsie prywatnym (192.168.23.2).
Serwer sieci Web, który komunikuje się z db-server pod tym adresem IP.
Kroki, gdy klient poza środowiskiem posiada komunikować się z serwerem sieci web w środowisku sklonowany nieco się różnią i są następujące:
Implementując podejście translatora adresów Sieciowych, klient wysyła oprogramowanie do zarządzania laboratorium uzyskać unikatowego aliasu nazwy serwera sieci web w środowisku sklonowanym.(Visual Studio Lab Management nie implementuje podejście translatora adresów Sieciowych).
Oprogramowanie do zarządzania laboratorium odpowiada nazwę unikatowego aliasu.
Serwer DNS zamienia nazwę unikatowego aliasu na publiczny adres IP serwera sieci web (10.86.51.63).
Ten adres IP mapowany faktycznie interfejsu na serwerze NAT. dwukierunkowy.Klient komunikuje się z serwera NAT dwukierunkowy chwila, przy założeniu, że komunikuje się z serwerem sieci web.
Serwer NAT pobiera mapowania przechowywane w tabelach swojej konfiguracji i publiczny adres IP (10.86.51.63) na prywatny adres IP (192.168.23.1).
Serwer NAT przekazuje wiadomość od klienta w sieci prywatnej do 192.168.23.1, który jest adresem IP serwera sieci web.
Zaletą tego podejścia na podejście dwa interfejsy jest, że maszyn wirtualnych w środowisku nie trzeba modyfikować w jakikolwiek sposób.Nie ma potrzeby wprowadzenie dodatkowego interfejsu sieciowego w każdej maszyny wirtualnej.Wprowadzenie dodatkowego interfejsu sieciowego do maszyny wirtualnej może powodować niektóre aplikacje przerwać.
Inną zaletą tego podejścia jest, że cały logiki dla osiągnięcia izolacji sieci jest umieszczana wewnątrz dodatkowe maszyny wirtualnej.Nie ma potrzeby do dysponowania agentem w każdym z pozostałych maszyn wirtualnych.Routing wszystkich pakietów poprzez dodatkowe maszyny wirtualnej również można uzyskać dodatkową kontrolę do wspierania bardziej zaawansowanych funkcji izolacji sieci, takich jak:
Tylko do out ogrodzenia: nie zezwala na pakiety sieciowe inicjowane przez klientom poza środowiskiem uzyskanie dostępu do maszyn wirtualnych w środowisku.
Tylko z określonego portu wyjątkami out: nie zezwala na pakiety sieciowe inicjowane przez klientom poza środowiskiem uzyskanie dostępu do maszyn wirtualnych w środowisku, chyba że są one kierowane do określonego portu.
Funkcje te można łatwo zaimplementować w ujęciu od strony dwukierunkowy NAT poprzez wprowadzenie zapora na serwerze NAT..Podstawowy wadą dwukierunkowy podejście translatora adresów Sieciowych jest, że niektóre aplikacje nie działają przez translatora adresów sieciowych.Na przykład modelu DCOM i .NET remoting protokołów, które są powszechnie stosowane w aplikacjach systemu Windows, nie działają, gdy klient i serwer są oddzielone z serwera NAT.To z tego powodu, że Visual Studio Lab Management wykorzystuje podejście liczbą interfejsów.Inną wadą podejścia NAT dwukierunkowy jest wymaganie, aby dodatkowe maszyny wirtualnej w każdym środowisku, które wprowadza dodatkowe obciążenie podczas tworzenia lub innych operacji w środowiskach wirtualnych.
Inne konflikty
Opisaliśmy tak daleko, jak nazwa komputera, adres IP i konfliktów adresów MAC może być rozwiązany za pośrednictwem sieci izolacji.Gdy środowiska są sklonowany, istnieją inne rodzaje konfliktów w sytuacji jak również.W każdym przypadku, gdy istnieje zależność na składnik zewnętrzny, który mieści się w środowisku wirtualnym, istnieje możliwość pod kątem konfliktu podczas tego środowiska jest sklonowany.W tej części przyjrzymy dwóch typowych przypadkach, gdzie tego typu konflikty mogą wystąpić.
Konflikty Active Directory
To jest wspólne dla Windows maszyn i aplikacje polegać na Active Directory (AD), albo dla usług katalogowych, jak lub, dla uwierzytelniania i autoryzacji użytkowników.Centralnie zarządzanie komputerami systemu Windows przy użyciu zasad grupy AD jest bardzo powszechną praktyką.Za pomocą naszego przykładu, załóżmy że serwer WWW i serwera db w oryginalne środowisko są przyłączone do domeny zarządzane przez AD.Reklama znajduje się poza środowiskiem.Kiedy klon to środowisko, teraz mamy dwa identyczne klony serwera sieci web; Jednakże istnieje tylko jeden zapis w Reklamie.To jest wyraźnie niepożądane i może prowadzić do różnych problemów.Na przykład jeśli jeden z serwera sieci web jest odłączony od domeny przez akcję użytkownika, inne klon jest odłączony również.Zmiany dokonane w jednym środowisku nieumyślnie wpływają na inne środowiska.
Aby zapobiec konfliktom usługi Active Directory, serwera AD musi znajdować się na maszynie wirtualnej w środowisku.Serwer AD nie powinien mieć żadnych relacji zaufania z innych katalogów poza środowiskiem.
Istnieją dodatkowe informacje dotyczące konfigurowania AD w izolowanym środowisku sieciowym.Po pierwsze maszyna wirtualna AD nie powinien być podłączony do sieci publicznej.W ujęciu od strony dwa interfejsy oznacza to, że maszyna wirtualna AD nie powinny mieć interfejsu publicznego.W ujęciu od strony NAT 2-drogowy oznacza to, że w tabeli translacji adresów Sieciowych nie powinny mieć mapowanie dla maszyny wirtualnej AD.
Po drugie ponieważ reklamy w niezależnych lasu, musi istnieć w środowisku serwera DNS.Pozostałych maszyn wirtualnych w środowisku, należy użyć tego serwera DNS w sieci prywatnej kątem prawidłowej komunikacji z usługą Active Directory.Na przykład maszyny wirtualnej może okazać się niemożliwe do przyłączania do domeny w prywatnej reklamy, chyba że ustawienie serwera DNS jest poprawnie skonfigurowany na interfejsie prywatnym.
Podczas konfigurowania środowiska do obejmują maszyny wirtualnej do reklamy, Visual Studio Lab Management automatyzuje odłączenie reklamy z sieci publicznej i konfigurowanie interfejsach prywatnych maszyn wirtualnych przy użyciu ustawień systemu DNS.
Może to być sytuacje, w których nie jest możliwe do obsługi AD w środowisku.Na przykład to może się zdarzyć podczas aplikacja w fazie rozwoju musi użyć firmowej AD do integracji z innych istniejących aplikacji korporacyjnych.Nie ma żadnych znanych rozwiązania umożliwiające bezpieczne klonowanie środowisk, gdy maszyny są połączone z domeną, poza środowiskiem.
Konflikty bazy danych
Innym częstym użyciem wirtualnych środowisk polega na obsługującym bazę danych aplikacji poza środowiskiem.Zazwyczaj odbywa się, gdy baza danych jest wystarczająco duży, a gdy nie jest praktyczne sklonować bazy danych z każdym środowisku.Może to się zdarzyć, jeśli aplikacja opracowywana jest klient sieci web prostego, który współdziała z bazą danych, która jest obsługiwana w innym miejscu.W takim wypadku dwie identyczne klony interakcyjnie pracować z bazą danych, serwer bazy danych jest niezdolny do odróżnienia tożsamości dwóch klientów.
Podsumowanie
Możliwość tworzenia identycznych klonów wirtualnych środowisk jest istotne dla kilku scenariuszy w zarządzaniu wirtualne laboratorium.Po utworzeniu identycznych klonów, istnieją jednak nazwa komputera, adres IP i konfliktów adresów MAC.Proste techniki, takie jak zmiana nazwy komputerów lub adresów IP, aby rozwiązać te konflikty zwykle wymagają zmiany konfiguracji lub ponownej instalacji aplikacji i skutecznie pokonać chcą tworzyć identyczne klonów.Problem ten dotyczy w izolacji sieci umożliwia tworzenie i jednoczesne uruchamianie dwóch klonów.
Kolejne kroki
Plan środowiska SCVMM: więcej informacji o tym, kiedy użyć różnych opcji dla środowisk SCVMM, takie jak wykorzystanie uruchamianie maszyn wirtualnych, przechowywanej maszyn wirtualnych, szablony, składowana środowisk i sieci izolacji.Zobacz Wskazówki dotyczące tworzenia środowisk SCVMM i zarządzania nimi.
Tworzenie sieci izolowanym środowisku: tematu tego można użyć, jeśli jesteś gotowy do utworzenia sieci izolowanym środowisku.Zobacz Tworzenie środowiska izolowanego od sieci i korzystanie z niego.
Zobacz też
Koncepcje
Przy użyciu środowiska laboratoryjnego dla użytkownika cyklu życia aplikacji