Az IIS 7 szkriptelése: appcmd

AppCmd Webkiszolgálók üzemeltetésénél különösen fontos szempont a rendszergazdai feladatok automatizálhatósága, azaz a programozhatóság, melynek legegyszerűbb változata a parancssori szkriptelés. Az Internet Information Services 7 erre a problémára több megoldást is nyújt: programozottan WMI interfészen, a .NET-es Microsoft.Web.Administration névtéren vagy COM objektumokon keresztül kezelhetjük a kiszolgálót, parancssorból pedig PowerShellből vagy az AppCmd segédprogram segítségével.

Az AppCmd az IIS 7 parancssori felügyeleti eszköze, melyet alapértelmezés szerint megtalálunk a kiszolgálón. Az AppCmd az alábbi szintakszist használja:

  appcmd.exe <verb> <object> [identifier] [/parameter:value]

A támogatott objektumok és műveletek a következők:

Object Verb
Site List, Set, Add, Delete, Start, Stop
App List, Set, Add, Delete
Vdir List, Set, Add, Delete
AppPool List, Set, Add, Delete, Start, Stop, Recycle
Config List, Set, Search, Lock, Unlock, Clear, Reset, Migrate
Wp List
Request List
Module List, Set, Add, Delete, Install, Uninstall
Backup List, Add, Delete, Restore
Trace List, Configure, Inspect

Az AppCmd lekérdezések eredménye lekérhető XML formátumban is, amelyhez a /XML paramétert kell használnunk. Az XML formátumú eredmény segítségével két AppCmd parancs (például lekérdezés és beállítás) összecsövezhető a pipe (|) operátor és a /IN paraméter segítségével. Az alábbi példa elindítja az összes leállított alkalmazáskészletet:

  appcmd list apppool /state:Stopped /xml | appcmd start apppool /in

Lekérdezéseknél van lehetőségünk szűrő alkalmazására, például az összes olyan webhelyet, amely tartalmazza a site szót, így kérhetjük le:

  appcmd list site /name:”$*site*”

A lekérdezett értékeket fájlba is menthetjük és vissza is olvashatjuk onnan:

  appcmd list site "Default Web Site" /config /xml >defaultSite.xml
  appcmd add site /in <defaultSite.xml

Első lépések

Az AppCmd a %systemroot%\System32\inetsrv mappában található, amely mappa alapértelmezés szerint nem része a Path környezet változónak. Ezért vagy minden esetben kiírjuk a teljes elérési utat vagy inkább célszerű felvenni ezt a mappát a Path változóba.

Az egyes objektumokról és parancsokról az alábbi formában kérhetjük le a súgó fejezeteket:

  appcmd /?
  appcmd site /?
  appcmd list site /?

Jó tudni

Az AppCmd nem támogatja a kiszolgáló távoli felügyeletét és futtatásához mindenképp helyi rendszergazdai jogosultságokkal kell rendelkeznünk. Amennyiben távolról vagy csökkentett jogosultságokkal szeretnénk felügyelni a webszervert, használjuk az IIS Manager funkcióit vagy PowerShellt.

Demó

A demóban bemutatjuk az AppCmd használatát objektumok tulajdonságainak lekérdezésére, valamint műveletek tömeges végrehajtására.

AppCmd demó - A demó megtekintéséhez kattints a képre!
Lejátszáshoz kattints a képre!
Letöltés: AppCmd.wmv (12:14, 80.9 MB)

További információk


wmv 11_IIS7_AppCmd_(Balassy_Gyorgy).wmv (82901 kB) Lejátszás böngészőben »


Balássy György (MS RD, ASP.NET MVP, MCTS)

Balássy György (MS RD, ASP.NET MVP, MCTS) Villamosmérnök, a BME Automatizálási és Alkalmazott Informatikai Tanszékén webportálok fejlesztését oktatja. 2000 óta foglalkozik a Microsoft .NET platformjával, melynek meghonosításában jelentős szerepet vállalt előadóként, konzulensként és A .NET Framework és programozása című könyv társszerzőjeként. Az MSDN Kompetencia Központon belül a Portál Technológiák Csoport vezetője, szakterülete web alapú rendszerek fejlesztése és üzemeltetése. 2004-ben Magyarországon elsőként kapta meg a Most Valuable Professional címet, majd 2005 óta a Microsoft magyarországi regionális igazgatója. Publikációi a Technet Magazinban, az MSDN Kompetencia Központ honlapján és szakmai blogjában olvashatóak.

2009.12.10. 7:38:03 | Permalink | Hozzászólások: 0 | Tárgyszavak: , ,


  • MOSS blobcache

    Balássy György (MS RD, ASP.NET MVP, MCTS) Aki ismeri az ASP.NET cache szolgáltatásait és tudja, hogy a SharePoint az ASP.NET-re épül, annak számára nem újdonság, hogy a SharePoint is támogatja az output cachinget és az object cachinget. Amit viszont nem tud az ASP.NET, de a SharePoint igen, az a blob cache. Tovább »
  • Származtatott tartalomtípus oszlopok nélkül

    Balássy György (MS RD, ASP.NET MVP, MCTS) Amikor saját SharePointos tartalomtípust készítünk, az kötelezően származik egy szülő tartalomtípusból és örökli annak oszlopait. Hogyan lehet mégis olyan tartalomtípust létrehozni, amelynek egyetlen oszlopa sincs? Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások