2007~2011/IIS2010. 12. 8. 01:01

Chapter 5 에서는 IIS 7 관리 도구에 대해서 소개 드리고자 합니다. IIS 7 에서 알아야 할 기본적인 관리도구는 IIS 관리자, 구성 정보 설정, 커맨드 라인 툴(Appcmd.exe) 등이 있습니다만 일반적으로 가장 많이 사용하는 IIS 관리자는 앞서 Chapter 1 에서 인터페이스를 간략히 소개 드렸고 이번에는 IIS 구성 정보를 설정하는 방법, 커맨드 라인 툴 Appcmd.exe 를 활용하는 방법 그리고 원격 관리에 대해서 살펴볼 예정입니다. 

이번 포스팅에서는 새로워진 IIS 7 구성 정보에 대해서 아래와 같이 정리하였습니다. 

IIS 7 에서는 구성 정보의 저장소와 웹 서버 관리를 위한 도구(Tools)에도 변화가 있습니다. IIS 7 구성 정보는 이전 버전과 비교해서 개선된 새로운 XML 기반의 계층 구조로 된 구성 저장소(Configuration Store)에 저장되어 있습니다. 물론 이전 버전의 IIS 구성 저장소 Metabase 또한 XML 기반이었습니다만 IIS 7에서는 이보다 가독성, 확장성, 유연성, 이식성 등이 개선된 .config 파일을 사용하게 됩니다. IIS7 의 XML 기반 Configuration Files은 아래와 같이 구성되어 있습니다. 


1. 파일의 구성
 가. ApplicationHost.config
      IIS 웹 서버 전체 전역 구성 설정이 포함되며 %systemroot%\system32\inetsrv\config 폴더에 저장됩니다.

 나. Web.config
      개별 웹 사이트, 응용프로그램, 가상 디렉터리 영역에 분산된 Web.config 를 배치하고 고유한 설정을 적용할 수 있습니다.

 다. Machine.config
    
.NET Framework 를 사용하는 환경에서는 Machine.config 설정 파일을 사용할 수 있습니다. 


그렇다면 실제 Configuration File 은 어떻게 구성되어 있는지 ApplicationHost.config 파일을 메모장으로 열어서 확인해 보았습니다. 간
단히 테스트 하기 위해 기본 문서 설정에서 최상위에 "index.php" 문서를 삽입한 후 저장합니다. 

<defaultDocument enabled="true">
<files>
  
<add value="index.php" /> 
   <add value="Default.htm" />
  
<add value="Default.asp" />
  
<add value="index.htm" /> 
   
<add value="index.html" /> 
   
<add value="iisstart.htm" />
</files>
</defaultDocument> 


IIS 관리자를 실행하여 기본 문서를 확인해 보면 아래와 같이 설정이 변경된 것을 확인할 수 있습니다. 


쉽네요….;; 메모장 외 다른 방법으로 구성 파일을 변경할 수 있는 방법이 있을까요?

물론 있습니다. 앞서 소개하였듯이 각각의 설정 파일은 XML 문서로 구성되어 있으며 이 설정 값을 구성, 변경하기 위해 아래와 같이 다양한 방법을 통해 관리할 수 있습니다. 


2. IIS 7 에서 제공하는 다양한 관리 도구 
 
가. 인터넷 정보 서비스 관리자 (IIS Manager)
      새로운 그래픽 관리 인터페이스로 직관적으로 구성 정보 변경이 용이합니다. 

 나. PowerShell 
      파워쉘을 사용하여 IIS7 을 관리할 수 있으며 WMI 공급자를 사용할 수 있습니다. 

 다. Appcmd
     
웹 서버의 개체를 생성, 구성하고 쿼리를 Text, XML 로 내보내기 할 수 있으며 서비스 제어, 구성 정보 백업과 복원, 현재 실행 요청 정보 조회 등의 기능을 가진 새로운 Command-line 툴입니다. 

 라. 텍스트 편집
    메모장 등의 텍스트 편집기를 사용하여 XML Configuration 직접 변경할 수 있습니다. 


PowerShell, Appcmd 과 같이 Command-line 스크립트를 사용하면 작업 시간과 오류를 줄일 수 있고 Microsoft.Web.Administration APIs와 새로운 WMI(Windows Management Instrumentation) 공급자를 통해 자동화 관리에 이점이 있으므로 관리자들은 필요한 명령을 알아둬야 할 필요가 있습니다. PowerShell 에 대해서는 자동화 관리 기능을 소개할 때, 좀 더 자세히 살펴보도록 하겠습니다. 

동일한 구성의 웹 사이트를 추가로 구성하거나 개발 서버에서 운영 서버로 이전할 때 사이트, 응용 프로그램 구성 파일, 데이터를 xcopy 를 사용하여 콘텐츠와 구성 정보를 배포, 마이그레이션 하는데 수월합니다. 위의 .config 파일과 현재 구성되어 있는 모듈을 같이 설치함으로써 이식을 할 수 있습니다. 물론 .config 파일에 설정된 IP Address, Driver Letter 등과 같은 시스템 별 차이가 있을 수 있는 정보가 있다면 변경이 필요합니다. 

다음 포스팅에서는 Appcmd.exe 명령을 통해 IIS 7 설정을 관리하는 방법에 대해서 소개해 드리겠습니다.


작성자 : Lai Go / 작성일자 : 2010.12.07

Posted by Lai Go