Megosztás a következőn keresztül:


A webes üzembe helyezés megfelelő megközelítésének kiválasztása

által Jason Lee

Ha az Internet Information Services (IIS) Web Deployment Tool (Web Deploy) 2.0 vagy újabb verziójával dolgozik, három fő módszert használhat a csomagolt webalkalmazások webkiszolgálóra való beolvasásához. A következő lehetőségek közül választhat:

  • Helyezze üzembe az alkalmazást egy távoli helyről a webterjesztési ügynök szolgáltatás (más néven "távoli ügynök") célkiszolgálón való megcélzásával.
  • Helyezze üzembe az alkalmazást egy távoli helyről a Web Deploy On Demand (más néven "temp agent") használatával.
  • Helyezze üzembe az alkalmazást egy távoli helyről az IIS Web Deploy Handler célkiszolgálón való megcélzásával.
  • Telepítse az alkalmazást úgy, hogy manuálisan másolja a webcsomagot a célkiszolgálóra, és importálja az IIS Manageren keresztül.

A cél webkiszolgálók konfigurálása attól függ, hogy melyik üzembe helyezési módszert szeretné használni. Ez a témakör segít eldönteni, hogy az üzembe helyezés melyik megközelítése megfelelő önnek.

Ez a táblázat az egyes üzembehelyezési megközelítések fő előnyeit és hátrányait mutatja be, valamint azokat a forgatókönyveket, amelyek a leginkább megfelelnek az egyes megközelítéseknek.

Megközelítés Előnyök Hátrányok Tipikus forgatókönyvek
Távoli ügynök Egyszerűen beállítható. Alkalmas a webalkalmazások és tartalmak rendszeres frissítésére. A felhasználónak rendszergazdaként kell lennie a célkiszolgálón. a felhasználó nem tud alternatív hitelesítő adatokat megadni. Fejlesztési környezetek. Tesztkörnyezetek.
Ideiglenes ügynök Nincs szükség a Web Deploy telepítésére a célszámítógépen. A rendszer automatikusan a Web Deploy legújabb verzióját használja. A felhasználónak rendszergazdaként kell lennie a célkiszolgálón. A felhasználó nem tud alternatív hitelesítő adatokat megadni. Fejlesztési környezetek. Tesztkörnyezetek.
Web telepítési kezelő A nem rendszergazdai felhasználók tartalmakat helyezhetnek üzembe. Alkalmas a webalkalmazások és tartalmak rendszeres frissítésére. Sokkal összetettebb a beállítás. Tesztkörnyezetek. Intranet-gyártási környezetek. Üzemeltetett környezetek.
Offline üzembe helyezés Nagyon könnyű beállítani. Izolált környezetekhez alkalmas. A kiszolgáló rendszergazdájának minden alkalommal manuálisan kell másolnia és importálnia a webcsomagot. Internetkapcsolattal rendelkező éles környezetek. Izolált hálózati környezetek.

A távoli ügynök használata

Amikor a webtelepítést a célkiszolgáló alapértelmezett beállításaival telepíti, a webterjesztési ügynök szolgáltatás (a "távoli ügynök") automatikusan települ és elindul. A távoli ügynök alapértelmezés szerint egy HTTP-végpontot tesz elérhetővé ezen a címen:

http://[server]/MSDEPLOYAGENTSERVICE

Megjegyzés:

A(z) [kiszolgáló] helyére a webkiszolgáló gépnevét, IP-címét vagy a webkiszolgálóra mutató gazdagépnevet írhatja.

A kiszolgálói rendszergazdák ennek a végpontcímnek a megadásával távoli helyről, például fejlesztői gépről vagy buildkiszolgálóról helyezhetnek üzembe webcsomagokat. Tegyük fel például, hogy Matt Hink a Fabrikam, Inc. cégnél létrehozta a ContactManager.Mvc webalkalmazás-projektet a fejlesztői gépén. A buildelési folyamat létrehoz egy webcsomagot, valamint egy .deploy.cmd fájlt, amely tartalmazza a csomag telepítéséhez szükséges Web Deploy parancsokat. Ha Matt kiszolgálói rendszergazda a TESTWEB1 kiszolgálón, a webalkalmazást a teszt webkiszolgálón a következő parancs futtatásával telepítheti a fejlesztői gépen:

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

Valójában a Web Deploy végrehajtható képes a távoli ügynök végpontcímére következtetni, ha megadja a gép nevét, ezért Mattnek csak a következőt kell beírnia:

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

Megjegyzés:

A Web Deploy parancssori szintaxisával és .deploy.cmd fájljaival kapcsolatos további információkért lásd: Üzembehelyezési csomag telepítése a deploy.cmd fájl használatával.

A távoli ügynök egyszerű módot kínál a tartalom távoli helyről való üzembe helyezésére, és ez a megközelítés jól használható egy kattintásos vagy automatizált üzembe helyezéssel. Az üzembe helyezési parancsot futtató felhasználónak azonban tartományadminisztrátornak vagy a célkiszolgáló helyi rendszergazdák csoportjának tagjának is kell lennie. Emellett a távoli ügynök nem támogatja az alapszintű hitelesítést, így nem adhat át alternatív hitelesítő adatokat a parancssorban.

A távoli ügynök hasznos megoldást kínál az üzembe helyezéshez fejlesztési vagy tesztelési forgatókönyvekben, ahol nem ritka, hogy a fejlesztők teljes rendszergazdai jogosultságokkal rendelkeznek a tesztkiszolgálói környezet felett, és az alkalmazásokat általában gyakran újraépítik és újra üzembe helyezik. Ez a megközelítés azonban általában kevésbé elfogadható tesztelői vagy éles környezetekben.

A távoli ügynök módszerét alkalmazó forgatókönyv végpontok közötti példájáért tekintse meg a Forgatókönyv: Tesztkörnyezet konfigurálása webes üzembe helyezéshez című részt.

A Temp-ügynök használata

Az ideiglenes ügynök megközelítése az üzembe helyezésben hasonló a távoli ügynök megközelítéséhez. A távoli ügynökkel ellentétben azonban nem kell telepítenie a Web Deploy szolgáltatást a cél webkiszolgálón. Ehelyett az üzembe helyezés végrehajtásakor a Web Deploy telepíti a webterjesztési ügynök szolgáltatás ideiglenes verzióját a célkiszolgálóra, és ezzel telepíti a tartalmat az IIS-ben. Ha az üzembe helyezés befejeződött, az összes ideiglenes fájl el lesz távolítva.

Ha az ideiglenes ügynök szolgáltatói beállítását szeretné használni, adja hozzá a /g jelzőt az üzembehelyezési parancshoz:

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

Megjegyzés:

Nem használhatja az ideiglenes ügynököt, ha a webterjesztési ügynök szolgáltatás telepítve van a célszámítógépen, még akkor sem, ha a szolgáltatás nem fut.

Ennek a megközelítésnek az az előnye, hogy nem kell fenntartania a webtelepítés telepítését a célkiszolgálókon. Emellett nem kell meggyőződnie arról, hogy a forrás- és célszámítógépek a Web Deploy ugyanazon verzióját futtatják. Ennek a megközelítésnek azonban ugyanazok a fő korlátai vannak, mint a távoli ügynök megközelítésének, nevezetesen, hogy a tartalom üzembe helyezéséhez helyi rendszergazdának kell lennie a célkiszolgálón, és csak az NTLM-hitelesítés támogatott. A temp agent megközelítéshez sokkal több kezdeti konfigurációra van szükség a célkörnyezethez.

Az ideiglenes ügynök használatával kapcsolatos további információkért lásd: Üzembehelyezési csomag telepítése a deploy.cmd fájl és a webes igény szerinti üzembe helyezés használatával.

A Web Deploy Handler használata

Az IIS 7-től kezdődően a Web Deploy alternatív üzembe helyezési megközelítést kínál az IIS Web Deploy Handler használatával. A Web Deploy Handler szorosan integrálva van az IIS webfelügyeleti szolgáltatással (WMSvc), amely lehetővé teszi a felhasználók számára az IIS-webhelyek távoli helyekről történő kezelését.

A távoli ügynök alapértelmezés szerint egy HTTP-végpontot tesz elérhetővé ezen a címen:

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

Megjegyzés:

A(z) [kiszolgáló] helyére a webkiszolgáló gépnevét, IP-címét vagy a webkiszolgálóra mutató gazdagépnevet írhatja.

A Web Deploy Handler nagy előnye a távoli ügynökkel és az ideiglenes ügynökkel szemben, hogy konfigurálhatja az IIS-t, hogy lehetővé tegye a nem rendszergazda felhasználók számára, hogy alkalmazásokat és tartalmakat helyezzenek üzembe adott IIS-webhelyeken. A Web Deploy Handler az alapszintű hitelesítést is támogatja, így a Web Deploy parancsai paraméterként alternatív hitelesítő adatokat is megadhatnak. A fő hátránya, hogy a Web Deploy Handler kezdetben sokkal bonyolultabb a beállításhoz és konfiguráláshoz.

Nem rendszergazdai felhasználók esetén a webfelügyeleti szolgáltatás (WMSvc) csak helyszintű kapcsolat használatával engedélyezi a felhasználónak az IIS-hez való csatlakozást kiszolgálószintű kapcsolat helyett. Egy adott hely eléréséhez egy helyspecifikus lekérdezési sztringet is hozzáadhat a végpontcímhez:

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

Javaslat Például tegyük fel, hogy egy buildelési folyamat úgy van konfigurálva, hogy minden sikeres build után automatikusan üzembe helyezzen egy webalkalmazást egy átmeneti környezetben. Ha a távoli ügynök megközelítést használná, az építési folyamatot úgy kell beállítani, hogy rendszergazdaként működjön a cél szervereken. Ezzel szemben a Web Deploy Handler megközelítéssel csak egy adott IIS-webhelyre adhat engedélyt egy nem rendszergazdai felhasználónak – ebben az esetben a FABRIKAM\stagingdeployernek –, és a buildelési folyamat képes biztosítani ezeket a hitelesítő adatokat a webcsomag üzembe helyezéséhez. Vegye észre, hogy az alábbi példa a %ContactManagerPublishPassword% használatával húzza be a jelszóértéket egy környezeti változóból. A szkript %ContactManagerPublishPassword% sikeres végrehajtásához a változót a megfelelő értékkel kell definiálni.

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

Megjegyzés:

További információ a Web Deploy parancssori műveleteiről és szintaxisáról: Web Deploy Parancssori referencia. A .deploy.cmd fájl használatával kapcsolatos további információkért lásd: Üzembehelyezési csomag telepítése a deploy.cmd fájl használatával.

A Web Deploy Handler hasznos módszert kínál az előkészítési környezetekben, az üzemeltetett környezetekben és az intranetalapú éles környezetekben való üzembe helyezéshez, ahol elérhető a kiszolgálóhoz való távoli hozzáférés, de a rendszergazdai hitelesítő adatok nem.

A Web Deploy Handler megközelítést használó forgatókönyvek végpontok közötti példáját lásd : Forgatókönyv: Átmeneti környezet konfigurálása webes üzembe helyezéshez.

Offline üzembe helyezés használata

Bizonyos esetekben nem lehetséges vagy praktikus alkalmazásokat és tartalmakat telepíteni egy IIS-webhelyen távoli helyről. Előfordulhat például, hogy a forrás- és célszámítógépek elszigetelt hálózatokban vagy hálózati szegmensekben vannak, vagy a tűzfalszabályzat nem teszi lehetővé a távelérést.

Az ilyen helyzetekben továbbra is használhatja a Web Deploy csomagolási és közzétételi képességeit; csak nem használhatja őket távoli helyről. Ehelyett a célkiszolgáló rendszergazdájának át kell másolnia a webcsomagot a kiszolgálóra, és az IIS Manageren keresztül kell importálnia.

Ehelyett a célkiszolgáló rendszergazdájának át kell másolnia a webcsomagot a kiszolgálóra, és az IIS Manageren keresztül kell importálnia.

Az offline üzembe helyezési módszer általában az internetre néző éles környezetekben hasznos, ahol a peremhálózat kiszolgálói korlátozott kapcsolatot létesíthetnek a belső hálózaton lévő számítógépekkel.

Az offline üzembe helyezési módszert használó forgatókönyv végponttól végpontig tartó példája megtekinthető itt: Forgatókönyv: Éles környezet konfigurálása webes telepítéshez.

További olvasás

További információ a Web Deploy parancssori műveleteiről és szintaxisáról: Web Deploy Parancssori referencia. A .deploy.cmd fájl használatával kapcsolatos további információkért lásd: Üzembehelyezési csomag telepítése a deploy.cmd fájl használatával.

A webcsomagok távoli számítógépről való üzembe helyezésének különböző módjairól általánosabb útmutatást a Távoli webes telepítés használata című témakörben talál. Az igény szerinti webes üzembe helyezés használatáról további információt a Webes üzembe helyezés igény szerint című témakörben talál.