Sdílet prostřednictvím


Výběr správného přístupu k nasazení webu

od Jason Lee

Při práci s nástrojem pro nasazení webu internetové informační služby (IIS) (Nasazení webu) 2.0 nebo novějším můžete použít tři hlavní přístupy, které můžete použít k získání zabalených webových aplikací na webový server. Máte tyto možnosti:

  • Nasaďte aplikaci ze vzdáleného umístění tak, že cílíte na službu agenta nasazení webu (označovanou také jako "vzdálený agent") na cílovém serveru.
  • Nasaďte aplikaci ze vzdáleného umístění pomocí nástroje Web Deploy On Demand (označovaného také jako "dočasný agent").
  • Nasaďte aplikaci ze vzdáleného umístění cílením na IIS Web Deploy Handler na cílovém serveru.
  • Nasaďte aplikaci ručním zkopírováním webového balíčku na cílový server a jeho importem přes Správce služby IIS.

Způsob konfigurace cílových webových serverů bude záviset na tom, jaký přístup k nasazení chcete použít. Toto téma vám pomůže rozhodnout, který přístup k nasazení je pro vás nejvhodnější.

Tato tabulka ukazuje hlavní výhody a nevýhody jednotlivých přístupů nasazení společně se scénáři, které obvykle vyhovují jednotlivým přístupům.

Přístup Výhody Nevýhody Typické scénáře
Vzdálený agent Nastavení je snadné. Je vhodný pro pravidelné aktualizace webových aplikací a obsahu. Uživatel musí být správcem na cílovém serveru. uživatel nemůže zadat alternativní přihlašovací údaje. Vývojová prostředí. Testovací prostředí
Dočasný agent Na cílovém počítači není potřeba instalovat Web Deploy. Automaticky se používá nejnovější verze Web Deploy. Uživatel musí být správcem na cílovém serveru. Uživatel nemůže zadat alternativní přihlašovací údaje. Vývojová prostředí. Testovací prostředí
Obslužná rutina nasazení webových aplikací Uživatelé, kteří nejsou správci, můžou nasadit obsah. Je vhodný pro pravidelné aktualizace webových aplikací a obsahu. Nastavení je mnohem složitější. Přípravná prostředí. Produkční prostředí intranetu. Hostovaná prostředí.
Offline nasazení Je velmi snadné nastavit. Je vhodný pro izolovaná prostředí. Správce serveru musí pokaždé ručně zkopírovat a importovat webový balíček. Internetová produkční prostředí. Izolovaná síťová prostředí.

Použití vzdáleného agenta

Při instalaci Web Deploy pomocí výchozích nastavení na cílovém serveru se služba Web Deployment Agent Service ("vzdálený agent") automaticky nainstaluje a spustí. Ve výchozím nastavení vzdálený agent zveřejňuje koncový bod HTTP na této adrese:

http://[server]/MSDEPLOYAGENTSERVICE

Poznámka:

[server] můžete nahradit názvem počítače vašeho webového serveru, IP adresou vašeho webového serveru nebo názvem hostitele, který se přeloží na váš webový server.

Správci serveru můžou nasazovat webové balíčky ze vzdáleného umístění, jako je vývojářský počítač nebo buildovací server, zadáním této adresy koncového bodu. Předpokládejme například, že Matt Hink ve společnosti Fabrikam, Inc. vytvořil projekt webové aplikace ContactManager.Mvc na svém vývojářském počítači. Proces sestavení vygeneruje webový balíček společně se souborem .deploy.cmd , který obsahuje příkazy Nasazení webu potřebné k instalaci balíčku. Pokud je Matt správcem serveru na TESTWEB1 serveru, může webovou aplikaci nasadit na testovací webový server spuštěním tohoto příkazu na počítači pro vývojáře:

ContactManager.Mvc.deploy.cmd /y /m:http://TESTWEB1/MSDEPLOYAGENTSERVICE a/:NTLM

Ve skutečnosti může spustitelný soubor Nasazení webu odvodit adresu koncového bodu vzdáleného agenta, pokud zadáte název počítače, takže Matt musí zadat jenom toto:

ContactManager.Mvc.deploy.cmd /y /m:TESTWEB1 /a:NTLM

Poznámka:

Další informace o syntaxi příkazového řádku Nasazení webu a .deploy.cmd soubory naleznete v tématu Postupy: Instalace balíčku pro nasazení pomocí souboru deploy.cmd.

Vzdálený agent nabízí jednoduchý způsob nasazení obsahu ze vzdáleného umístění a tento přístup může dobře fungovat s jedním kliknutím nebo automatizovaným nasazením. Uživatel, který spouští příkaz nasazení, ale musí být také správcem domény nebo členem místní skupiny administrators na cílovém serveru. Vzdálený agent navíc nepodporuje základní ověřování, takže na příkazovém řádku nemůžete předat alternativní přihlašovací údaje.

Vzdálený agent poskytuje užitečný přístup k nasazení ve vývojových nebo testovacích scénářích, kdy není neobvyklé, aby vývojáři měli úplnou kontrolu nad testovacím serverovým prostředím a aplikace se obvykle znovu sestavují a nasazují velmi často. Tento přístup je ale obvykle méně přijatelný pro pracovní nebo produkční prostředí.

Kompletní příklad scénáře, který používá vzdálený přístup agenta, najdete v tématu Scénář: Konfigurace testovacího prostředí pro nasazení webu.

Použití dočasného agenta

Dočasný přístup agenta k nasazení se podobá přístupu vzdáleného agenta. Ale na rozdíl od přístupu vzdáleného agenta nemusíte instalovat Web Deploy na cílový webový server. Místo toho, když provedete nasazení, nainstaluje Web Deploy na cílový server dočasnou verzi služby agenta pro nasazování webu a použije ji k nasazení obsahu do služby IIS. Po dokončení nasazení se odeberou všechny dočasné soubory.

Pokud chcete použít nastavení zprostředkovatele dočasného agenta, přidejte do příkazu nasazení příznak /g :

ContactManager.Mvc.deploy.cmd /y /m:TESTWEB1 /g:true

Poznámka:

Dočasného agenta nemůžete použít, pokud je na cílovém počítači nainstalována služba agenta nasazení webu, i když služba není spuštěná.

Výhodou tohoto přístupu je, že na cílových serverech nemusíte udržovat instalaci Web Deploy. Kromě toho nemusíte mít jistotu, že zdrojové a cílové počítače používají stejnou verzi nasazení webu. Tento přístup však má stejná omezení zabezpečení jako vzdálený přístup agenta, a to, že musíte být místním správcem na cílovém serveru, aby bylo možné nasadit obsah, a je podporováno pouze ověřování NTLM. Přístup dočasného agenta také vyžaduje mnohem inicialnější konfiguraci cílového prostředí.

Další informace o používání dočasného agenta naleznete v tématu Postupy: Instalace balíčku pro nasazení pomocí souboru deploy.cmd a nasazení webu na vyžádání.

Použití systému nasazení webu

Pro IIS 7 a novější verze nabízí Web Deploy alternativní způsob nasazení pomocí obslužné rutiny Web Deploy pro službu IIS. Obslužná rutina nasazení webu je úzce integrovaná se službou WMSvc (IIS Web Management Service), která je navržená tak, aby uživatelům umožňovala spravovat weby služby IIS ze vzdálených umístění.

Ve výchozím nastavení vzdálený agent zveřejňuje koncový bod HTTP na této adrese:

https://[server]:8172/MSDeploy.axd

Poznámka:

[server] můžete nahradit názvem počítače vašeho webového serveru, IP adresou vašeho webového serveru nebo názvem hostitele, který se přeloží na váš webový server.

Velkou výhodou Web Deploy Handler oproti vzdálenému agentovi a dočasnému agentovi je, že můžete nakonfigurovat IIS tak, aby umožnil uživatelům, kteří nejsou správci, nasazovat aplikace a obsah na konkrétní weby IIS. Obslužná rutina nasazení webu také podporuje základní ověřování, takže můžete zadat alternativní přihlašovací údaje jako parametry v příkazech Nasazení webu. Hlavní nevýhodou je, že Web Deploy Handler je zpočátku mnohem složitější nastavit a nakonfigurovat.

V případě uživatelů, kteří nejsou správci, služba pro správu webu (WMSvc) povolí připojení ke službě IIS pouze pomocí připojení na úrovni webu, nikoli připojení na úrovni serveru. Pokud chcete získat přístup k určité lokalitě, můžete do adresy koncového bodu zahrnout řetězec dotazu specifický pro web:

https://[server]:8172/MSDeploy.axd?site=DemoSite

Předpokládejme například, že proces sestavení je nakonfigurovaný tak, aby po každém úspěšném sestavení automaticky nasadil webovou aplikaci do přípravného prostředí. Pokud jste použili přístup vzdáleného agenta, musíte nastavit identitu procesu sestavení jako správce na cílových serverech. Naproti tomu při použití přístupu prostřednictvím obslužné rutiny nasazení webu můžete udělit uživateli bez oprávnění správce – FABRIKAM\stagingdeployer v tomto případě – oprávnění pouze ke konkrétnímu webu služby IIS a proces sestavení může tyto přihlašovací údaje poskytnout pro nasazení webového balíčku. Všimněte si, že následující příklad používá %ContactManagerPublishPassword%, který načítá hodnotu hesla z proměnné prostředí. Chcete-li úspěšně spustit skript, %ContactManagerPublishPassword% musí být proměnná definována se správnou hodnotou.

msdeploy.exe 
  -source:package='…\ContactManager.Mvc.zip' 
  -dest:auto,
        computerName='https://STAGEWEB1:8172/MSDeploy.axd?site=DemoSite',
        userName='FABRIKAM\stagingdeployer',
        password=,
        authtype='Basic', 
  -verb:sync 
  -setParamFile:"…\ContactManager.Mvc.SetParameters.xml"   
  -allowUntrusted

Poznámka:

Další informace o operacích a syntaxi příkazového řádku nasazení webu najdete v tématu Odkaz na příkazový řádek nasazení webu. Další informace o použití souboru .deploy.cmd naleznete v tématu Postupy: Instalace balíčku pro nasazení pomocí souboru deploy.cmd.

Obslužná rutina nasazení webu poskytuje užitečný přístup k nasazení v přípravných prostředích, hostovaných prostředích a v produkčních prostředích založených na intranetu, kde je k dispozici vzdálený přístup k serveru, ale přihlašovací údaje správce nejsou.

Ze začátku do konce příklad scénáře, který používá přístup zprostředkovatele nasazení webu, viz Scénář: Konfigurace přípravného prostředí pro nasazení webu.

Použití offline nasazení

V některých případech není možné ani praktické nasazovat aplikace a obsah na web služby IIS ze vzdáleného umístění. Například zdrojové a cílové počítače můžou být v izolovaných sítích nebo síťových segmentech nebo zásady brány firewall nemusí povolovat vzdálený přístup.

V podobných scénářích můžete i nadále používat možnosti balení a publikování prostřednictvím Web Deploy; nemůžete je používat jenom ze vzdáleného umístění. Místo toho musí správce na cílovém serveru zkopírovat webový balíček na server a importovat ho přes Správce služby IIS.

Místo toho musí správce na cílovém serveru zkopírovat webový balíček na server a importovat ho přes Správce služby IIS.

Přístup k offline nasazení je obvykle užitečný v produkčních prostředích směřujících k internetu, kde servery v hraniční síti můžou mít omezené připojení k počítačům v interní síti.

Kompletní příklad scénáře, který používá přístup offline nasazení, najdete v tématu Scénář: Konfigurace produkčního prostředí pro nasazení webu.

Další čtení

Další informace o operacích a syntaxi příkazového řádku nasazení webu najdete v tématu Odkaz na příkazový řádek nasazení webu. Další informace o použití souboru .deploy.cmd naleznete v tématu Postupy: Instalace balíčku pro nasazení pomocí souboru deploy.cmd.

Obecnější pokyny k různým způsobům nasazení webových balíčků ze vzdáleného počítače najdete v tématu Použití vzdáleného nasazení webu. Další informace o použití nasazení webu na vyžádání najdete v tématu Nasazení webu na vyžádání.