IT Pro2008. 5. 29. 13:05

마이크로소프트는 가상화에 대해 포괄적인 포트폴리오를 가지고 있죠. 하나씩 사용될 수도, 함꼐 사용될 수도 있습니다.

표 1. 마이크로소프트 가상화 기술

Microsoft Capability

Virtualization Type

Windows Server 2008 Hyper-V™

Server Hardware Virtualization

Virtual Server 2005 R2

Server Software Virtualization

Terminal Services

Presentation Virtualization

SoftGrid Application Virtualization

Application Virtualization

Virtual PC

Desktop Virtualization

Windows Vista Enterprise Centralized Desktop (VECD)

Desktop Virtualization

1. Windows Server 2008 Hyper-V
    하드웨어 가상화, Hyper-V는 Type1 Hypervisor 기반의 가상화를 사용하는데, 하드웨어 위에서 바로
    구동된다.   따라서, 가상화하기 어려운 프로세서 Call을 직접 접근할 수 있다.
     - 32비트, 64비트 가상머신을 동시에 구동 가능
     - 가상머신이 최대 4개까지 CPU를 가질 수 있음
     - 대용량 메모리 지원
     - Virtual LAN 지원
     ※ 64비트 기반의 프로세서를 가진 하드웨어가 필요함, DEP(Data Execution Protection)이 사용되어야 함

      더 자세한 내용, 여기 참조

2. Virtual Server 2005 R2 SP1
    x86 기반의 운영체제에서 모두 구동된다. 가상머신을 구동하기 위한 소프트웨어로 이해하면 됨.
    - 서버 통합
    - 리거시 운영체제 및 어플리케이션을 구동하기 위해 적합
    - 소프트웨어 테스트 및 개발환경 자동화
    - 재해 복구 단순화
    Windows Server 2003, 2008에 구동가능하고, 관리 기능도 지원됨
    Virtual Server는 Windows XP, Vista 등에서도 구현가능한데 테스트 및 개발 목적으로만 사용이 적합

     다운로드는 여기 참조

3. Windows 터미널서비스
    프리젠테이션 가상화를 의미한다. 터미널서비스는 Windows 2000, 2003, 2008 플랫폼에 내장된 기능임
    모든 프로세싱은 터미널서비스가 구동되고 있는 중앙 컴퓨터, 즉 서버에서 이루어짐

    자세한 정보는 여기 참조

4. 마이크로소프트 소프트그리드(SoftGrid) 가상화
   어플리케이션이 최종 사용자의 컴퓨터에서 구동되면서, 격리된 환경을 만들 수 있습니다. 어플리케이션이
   캐시 시스템에 캐시되고, 로컬에서 실행되는 방식을 취하고 있습니다. 클라이언트의 어떤 설정도 변경하지
   않습니다. (레지스트리, 프로그램 매핑 등)
   버전이 다른 어플리케이션이 함께 구동될 수 있고, 어플리케이션을 배포하는 프로세스를 설정하거나 관리를
   쉽게 합니다. 다음의 두가지 방식으로 배포될 수 있습니다.
   - 설치: 전통적인 소프트웨어 방식과 마찬가지로 클라이언트 시스템이 캐시되어 존재합니다.
   - 스트리밍: 온디맨드 형태로 요청될 때 클라이언트 시스템으로 보내지고, 향후 재사용을 위해 캐시됩니다.
   마이크로소프트 데스크탑 최적화 팩으로 사용 가능합니다.

    자세한 정보는 여기 참조

5. Virtual PC
    데스크탑 가상화를 위해 Microsoft Virtual PC 2007을 사용할 수 있습니다. Windows Vista, XP를 한 대의 PC
    에서 함께 사용하고자 할 때 활용 가능합니다. 아주 간단하게 설정하고 사용할 수 있는 방식을 제공합니다.

    자세한 정보는 여기 참조

6. Windows Vista Enterprise Centralized Desktops (VECD)
   엔터프라이즈 사용자들에게 부여하는 혜택으로 중앙에 Windows Vista Enterprise의 복사본을 Virtual Server
   2005 R2 SP1 환경에 만들어 놓는 것을 의미합니다. 각 사용자들이 리모트 데스크탑 등을 통해 접근하여 본인의
   PC 외에 원하는 작업을 할 수 있도록 해주는 것이지요.

   자세한 정보는 여기 참조

자, 이제 가상화에 대한 개념은 아시겠죠. 이제 의사결정 프로세스를 살펴보시지요.
1. 가상화가 적합한지 여부 결정
2. 어플리케이션 분류
3. 서버 가상화, 소프트웨어 가상화 중에서 선택
4. 클라이언트 커넥션 상태에 대해 결정
5. 어플리케이션의 위치 결정
6. 데스크탑 가상화, 프리젠테이션 가상화 중에서 선택
7. 어플리케이션 가상화, 데스크탑 가상화 중에서 선택

사용자 삽입 이미지
   (클릭하시면 확대 됩니다)
 

Posted by 조이트리
IT Pro2008. 5. 29. 11:32
내게 맞는 가상화 기술 선택하기에 대해 알려드립니다.
인프라스트럭처를 계획하고, 디자인할 때 어떤 구체적인 방법론을 사용하는 것이 아니고, 경험에 의해 이루어지는 경우가 참 많습니다. "잘되면 좋고, 안되면 다시 하지 뭐"라는 생각이 깔려 있는 것 같습니다.

좀 더 체계적으로 하면 좋겠죠. Infrastructure Planning & Design (IPD)는 그래서 생겼죠.
 . 플래닝 프로세스 동안 활용할 수 있는 의사결정 플로우를 활용할 수 있습니다.
 . 의사결정에 필요한 옵션을 제공하고, 결정된 내용에 대해 확인합니다.
 . 비용과 복잡도를 고려하여 비즈니스와 연계한 결정을 합니다
 . 비즈니스에 관계된 다양한 질문을 통해, 비즈니스에 핵심적인 내용을 포괄적으로 이해합니다.

비즈니스가 요구하는 사항을 충족하기 위해, IT가 구현을 하게 되는데 각 시나리오별로 어떤 가상화가 최적인지를 생각해보는 건 굉장히 중요합니다.

사용자 삽입 이미지
1. 서버 하드웨어 가상화
    - Hypervisor로 알려져 있습니다. 아주 가벼운 코어 OS라고 생각해도 됩니다. 가상화가 내장된 기능을 가진
      하드웨어면 됩니다.
2. 서버 소프트웨어 가상화
    - Windows Server 2003, 2008 같은 운영체제가 가상머신(VM)을 호스팅 할 수 있는 어플리케이션을 사용하여
      구현됩니다. 각 가상 머신들은 완전히 별도로 구분되어 운영체제와 어플리케이션을 운영할 수 있습니다.
3. 프리젠테이션 가상화
    - 많은 사용자 세션 유지, 모든 프로세싱이 중앙 호스트 시스템에서 이루어집니다. 사용자 세션은 각각 독립되
       어 있지요. 키보드, 마우스 입력, 비디오 정보 등만이 클라이언트와 중앙 시스템 사이에 전달됩니다.
4. 어플리케이션 가상화
    - 감싸주는 소프트웨어(Wrapper)가 어플리케이션을 격리시키는 역할을 합니다. 예를들면, 오피스 2003,
      오피스 2007을 한 대의 PC에서 모두 구동하려면 DLL(Dynamic Link Libraries) 충돌로 인해 사용하기 어렵겠
      죠. 또한, 호환성 부분에서도 문제가 생길 수 있습니다. 이런 경우 각 어플리케이션이 서로에 영향을 주지
      않도록 해주는 역할을 합니다.
5.  데스크탑 가상화
     - 서버 소프트웨어 가상화와 유사합니다. 다만, PC나 노트북에 가상화를 구현한다는 것이 다르지요.  
       Windows Vista를 사용하면서, WIndows XP에서만 구동되는 특화된 어플리케이션이 있다면 데스크탑
       가상화를 이용하여 2개의 운영체를 한대의 PC에서 사용할 수 있겠죠

각 가상화에 대한 자세한 내용은 다음 글에서 올리겠습니다.
Posted by 조이트리
IT Pro2008. 5. 28. 13:39

바로 여기를 찾아주세요. Technet에서 최신 기술을 스크린과 설명을 동시에 하는 형태, Product를 직접 개발하는 매니저가 설명하는 웹 캐스트 형태로 제공되며 데모가 곁들어져 이해가 상당히 쉽습니다.

IE8, Hyper-V 가상화 기술, System Center, MOF(Microsoft Operation Framework), SQL Server 2008, 그린 데이터센터 등 최신 기술 동향에 대해 데모와 함께 다양한 정보를 얻으실 수 있습니다.
저도 자주 찾아가는데, 정말 강추합니다.
Virtualization for MAP(Microsoft Assessment & Planning) Tool에 대해 들어보신 적 있으신가요? 보유하고 있는 윈도우 장비들의 성능, 사양 등을 파악하여 어떤 서버가 가상화에 적합한지 여부와 호환성 부분까지 점검해주는 Tool 입니다. 또한, 다양한 가상화 중 어떤 가상화를 사용할 것인지에 대해 잘 알지 못할 때 IPD(Infrastructure Planning & Design) 가이드를 참고하면 베스트 프랙티스를 통해 현명한 의사결정을 내릴 수 있게 됩니다. IPD에 대해서는 시리즈로 연재해볼 까 합니다.

Posted by 조이트리
IT Pro2008. 5. 19. 17:14
오픈소스 개발 및 기술을 생각해보면, 몇 가지 장점이 있죠.

1. 모둘화 아키텍처
Apache HTTP 서버 등이 좋은 예 입니다. 모듈화의 장점으로 인해 참여하는 개발자의 수가 굉장히 많은 것이 특징입니다.

2. 다양한 프로그래밍 언어 활용
언어에 대한 제약이 적습니다. 이로 인해 많은 개발자들이 참여를 하게 되고, PHP/Perl/Python/Java 등의 다양한 언어로 인해 Linux 같은 많은 프로젝트가 생겨나고 있습니다.

3. 피드백에 의한 개발
소프트웨어를 개발하고, 튜닝하는데 프로젝트 매니저는 큰 영향을 주게 됩니다. 비록 코드를 수정하지는 않더라도 여러 결점들에 대해서는 피드백을 주고, 결과적으로 최종 사용자는 보다 높은 품질의 제품을 사용하게 됩니다.

4. 필요한 부분이 개발되는 시스템
리눅스에서 가장 자주 보여지는 어플리케이션들은 특정한 역할이 필요하기에 개발된 것입니다.
(Gentoo, BusyBox 등)

5. 시스템 어드민이 직접 코드를 작성
숙련된 시스템 어드민이 최종 코드를 작성하는 능력이 있다는 것은 기술이 특정 환경에 효과적으로 작동하고, 개발자들에게 좋은 피드백을 제공할 수 있다는 것을 의미합니다. 대부분의 Linux, Unix 환경에서 대부분의 시스템 어드민은 유능한 프로그래머 이기도 합니다. (Shell)

6. 표준 기반의 통신
표준이 IETF, W3C 이든 아니면 코드 구현 자체이든지, 표준에 기반한 통신을 하기에 성공할 가능성이 크고, 더 규모가 큰 소프트웨어 생태계를 만드는 경향이 있습니다.

위와 같은 6가지의 아이디어가 Windows Server 2008에 적용되었습니다.

1. 모둘화 아키텍처
IIS7
이 가장 대표적입니다. IIS7은 40개의 개별 모듈로 아키텍처가 구성되었고, 커뮤니티 개발자에 의해 재작성거나 추가될 수 있도록 설계되었습니다. 결과적으로 성능이 향상되었고, 개별적인 추가로 인해 지속적인 기능 향상이 이루어지고 있습니다.

2. 다양한 프로그래밍 언어 활용
PHP를 IIS7
에 지원하고 있고, FastCGI로 인해 성능 및 안정성이 대폭 향상되었습니다. PHP는 WS2008에서의 구동이 인증되었습니다. 또한, .NET 언어 이외의 다른 언어에 대한 런타임, 보안, 관리를 지속적으로 추가 및 확대하고 있습니다. 기존에 PHP 기반의 모든 어플리케이션이 윈도우 서버, IIS, SQL Server에서 구동될 수 있도록 테스트를 계속하고 있습니다. 제로보드가 IIS7에 최적화 되어 구동될 수 있는 방안을 고려중에 있습니다.

3. 피드백에 의한 개발
개발자, 고객 피드백에 의해 특정 기능을 개발하는 것이 지속적으로 이루어지고 있습니다. RODC(Read Only Domain Controller) 등이 대표적인 예입니다.

4. 필요한 부분이 개발되는 시스템
Windows Server Core
같은 경우는 보안 공격 영역을 최소화하고, 하드웨어 상의 메모리 FootPrint를 적게 사용하도록 만들어져 있습니다. 또한, 윈도우 어드민들이 운영체제의 Low Level 구조에 대해 훨씬 더 많이 알 수 있는 기회를 제공하고 있습니다.

5. 시스템 어드민이 직접 코드를 작성
파워쉘
을 통해 WMI의 완전한 영역을 마스터할 수 있고, 재사용 가능한 Low Level 스크립트를 사용할 수 있게 되었습니다.

6. 표준 기반의 통신
카드스페이스 (X.509, SAML, Kerberos 토큰), 웹 서비스 스택 (Open Specification Promise의 38개 웹 서비스 뿐 아니라, Apache의 Axis 웹 서비스 스택과 상호운영 가능한 구현 포함), Xen 가상화 같은 신규 표준과도 베타로 지원을 하고 있습니다.

지속적으로 오픈소스 개발 원칙들로부터 배우고 있습니다. 마이크로소프트가 오픈소스로부터 배우는 것과 동일하게 오픈소스 진영 역시 마이크로소프트로 배우고 있다고 밝혔습니다. "What Open Source can learn from Microsoft"라는 Linux Foundation의 Jim Zemlin의 글을 참고하세요. (OSBC, 3/25) 서로 다른 환경의 IT를 사용하는 조직들이 진화하면서, 서로의 베스트프랙티스를 배워나가고, 더 좋은 소프트웨어를 만들고 있는 것입니다. 결과적으로 우리 모두가 앞서 나가게 하는 계기가 되는 것이지요.

(Sam Ramji의 글을 인용합니다)
Posted by 조이트리
IT Pro2008. 5. 16. 11:36

SQL Injection은 SQL의 쿼리/Command를 웹페이지를 통해 삽입하는 하나의 해킹 기법을 의미합니다. 웹페이지는 기본적으로 사용자들의 패러미터(아이디, 패스워드, 생년월일, 전화번호 등)을 입력받아 데이터베이스에 대한 정보를 조회,삽입,수정,삭제 등의 작업을 하게 됩니다.
바로 이러한 기본적인 SQL 쿼리문을 통해 조작된 사용자명과 패스워드를 보내는 것이 가능하고, 정보를 변조하거나 삭제하는 등의 작업이 가능해지는 것입니다.

서버상에 80포트만 오픈되어 있기 때문에 안전할 것이라고 생각하는 것은 잘못된 생각입니다. 웹 페이지는 80 포트를 통해 구동되기 때문이고, 웹페이지를 통한 해킹이 가능하기 때문이죠. SQL Injection을 솔루션으로 해결하는 방법은 웹 방화벽이 있습니다. 미리 등록된 페이지 및 작업을 제외한 어떠한 작업도 해킹시도로 간주하여 모두 블로킹 시켜버리기 때문이죠. 물론 비용이 발행합니다.

오늘은 기본적으로 할 수 있는 몇가지만 설명하려고 합니다.
Single quote('), double quote("), slash(/), back slash(\), semi colon(;), NULL, carriage return, new line 등의 모든 특수문자를 필터링 해버립니다.
 - 사용자로부터의 입력, URL을 통한 패러미터, 쿠키값 등
 - 낮은 권한을 사용하여 SQL Server를 시작하고 구동합니다
 - 사용하지 않는 Stored Procedure는 제거합니다.
    . "Xp_cmdshell, Xp_startmail, Xp_sendmail, Sp_makewebtask"

감사합니다.

Posted by 조이트리
IT Pro2008. 5. 7. 13:32
Robin Schmacher는 MySQL Product Management 팀의 Director 입니다.

그의 "MySQL on Windows? Absolutely!" 라는 글을 참고하여 MySQL의 Windows에서의 성능에 대해 적어보려고 합니다. 그의 기사를 번역한 것임을 밝혀 둡니다. 글을 적기에 앞서, 그는 이 글을 적으면 많은 오픈소스 진영의 사람들로 부터 욕을 먹겠지만, 정직하고 싶다고, 자기는 Windows 를 사랑한다고 밝히며 글을 시작하고 있습니다. 아래의 설명에서 나는, 글을 적는 제가 아닌 Robin을 의미함을 밝혀 둡니다.

2가지 이유 때문에 나는 여러 종류의 Database를 Windows에서 운영하는 것을 좋아합니다.
첫째, Unix에서 구동되는 비싼 Oracle 데이터베이스를 Quad core CPU의 Windows 장비로 바꿨을 때 25%의 비용만으로 구성이 가능했다는 것이죠. 25%의 비용으로 Unix/Oracle 조합의 98% 이상의 성능을 얻을 수 있었으니 엄청 만족스러운 결과를 얻게 된거죠. 가장 재밌는 내용은 Unix 영업대표가 찾아와 Windows에서 Oracle을 구동하면 매일 장애가 날 수 있고 성능이 제대로 동작되지 않을거라고 지속적으로 위협(?)을 가했지만 실제로 그런일은 벌어지지 않았다는 것이죠.

"저의 경우도 전 직장에서 Windows 서버에 Oracle을 구동한 경험이 있는데 전혀 문제없이 잘 사용했던 경험 이 있습니다. 순전히 Perception 이라고 할 수 있습니다."

둘째, Microsoft SQL Server를 많이 사용하고 난 후, 가장 선호하는 Database가 바로 Microsoft의 SQL Server가 되었다는 것입니다. 만약 그때 선택권이 있었다면 나는 새로 시작하는 어떤 시스템도 SQL Server를 선택했을 거고, 그 이유는 Oracle보다 훨씬 더 관리하기 쉽고 필요로 하는 기능 측면에서 강력하며 매우 안정적이기 때문입니다. Windows / MS SQL Server 조합보다 더 쉽고 좋은 조합은 찾아보지 못했습니다.

MySQL을 사용하는 다른 사용자 처럼, 나는 Linux를 플랫폼으로 시작했고 Linux에서 사용되는 다른 Database 같이 그렇게 어렵지 않았던 것, 즉 복잡한 스크립팅 및패치등을 하지 않아도 되어 너무 기뻤습니다. 그렇지만 내가 처음 MySQL을 Linux 설치 했을 때 10분 이상 프롬프트를 쳐다보고 있어야 했습니다.

바로 그때 MySQL을 Windows에서 사용하기 시작했고, 나는 완전히 Windows에 꽂혔습니다. 나는 솔직히, 이후로 계속 Windows에서 MySQL을 사용하고 있고 내가 가장 좋아하는 Database, Platform 조합입니다.
이 조합은 Windows/Web 어플리케이션이 요구하는 것의 90% 이상을 만족시킨다고 생각합니다. 자원을 적게 사용하며 안정적이기 까지 합니다.

내가 왜 이렇게 생각하는지 이유와 사례를 보여드리도록 하겠습니다. 분명히 제 이야기에 공감할 것입니다.

첫째, 놀라운 통계 자료

특정한 달에 MySQL database가 어떤 플랫폼에 가장 많이 다운로드 되었을 것 같으세요? Red hat? Fedora? SuSe Linux?

다시 한번 맞춰보세요. 2007년 4월 1일부터 5월 1일까지의 MySQL 5.0의 다운로드 숫자를 한 번 보시죠.
이 데이터는 전세계의 다운로드 리포팅 툴에서 가져온 자료입니다.

MySQL 5.0 Downloads
잘 보셨죠? 지금까지 MySQL이 Windows에서 인기가 있을거라고 한 번도 생각해보지 않으셨다면, 이 숫자는 여러분에게 다시 생각해볼 것을 제안합니다. 30일만에 거의 60만개의 Windows version MySQL이 다운로드 되었고, 25만 다운로드의 Linux와 비교하여 2배 이상 높은 수치입니다. 물론, 이 다운로드가 Windows에서 개발되어 실제 운영장비로 포팅되었거나, Windows에서 개발되어 Linux 같은 다른 플랫폼으로 옮겨 갔을 수도 있기 때문에 숫자 자체만으로 모든 것을 판단할 수는 없습니다. 또한, MySQL은 Linux 배포판을 통해 사용되기도 하므로 이러한 사실도 고려되어야 합니다. 그렇지만, 2006년 말의 설문에 의하면 MySQL Community의 52%가 Windows 플랫폼에서 운영 업무를 돌리고 있고 (1위), 42%의 엔터프라이즈 고객이 Windows 플랫폼에서 운영 업무를 구동하고 있으며 (Redhat에 이어 2위), 66%의 OEM/Embedded 데이터베이스 고객들이 운영어플리케이션을 위해 Windows 플랫폼을 사용하고 있었습니다. (1위)

확실한 것은 Windows와 MySQL 플랫폼 조합은 개발 및 운영 시스템에서 엄청 인기가 있다는 사실입니다.

Windows에서 MySQL 설치 및 설정

정말 쉽습니다. 윈도우를 위한 아주 간단하고 유연한 비쥬얼 설치 및 셋업 프로그램이 제공됩니다. Windows는 MySQL 확산을 위한 주요한 창구 이므로 MySQL은 모든 Windows 버전을 지원하고 설치 및 셋업 역시 아주 식은죽 먹기 입니다. 또한, MySQL Enterprise 에디션은 (월 비용을 지불하며 사용하는 엔터프라이즐 위한 버전) 서비스 팩, 월별 빠른 업데이트 등을 제공합니다. 아주 쉬운 GUI 설치 프로그램이 제공됩니다.

마지막으로 윈도우에서의 제한사항만 설명드리도록 하겠습니다.
MySQL Cluster product는 Windows에서 아직 지원되지 않습니다. (리눅스만 지원됨) 또한, Windows에서 front concerning storage engine 제한을 제외하고는 별도로 언급할 내용이 없습니다. http://dev.mysql.com/doc/refman/5.0/en/windows-vs-unix.html (자세한 내용은 참고하세요)

지금까지 살펴본 바와 같이 Windows, MySQL 조합은 아주 현명한 선택입니다. 감사합니다.

참고)
설치 및 셋업에 대해서는 다음 글에 제가 직접 설명을 드리도록 하겠습니다.
정말 쉽습니다. 물론 저는 오라클 7.3, 오라클 8i, MSSQL Server 2000의 DBA 경험이 있기 때문이기도 하지만, 그렇지 않더라도 정말 쉽게 이해하고 따라하실 수 있습니다.
Windows, MSSQL 조합이 가장 최선이고 Windows, MySQL 조합이 차선입니다. MySQL은 Linux에서 가장 안정적으로 구동된다는 것은 순수한 Perception 입니다.
Posted by 조이트리
IT Pro2008. 5. 7. 13:31

다음과 같은 방식으로 SSMS에서 자신의 데이터베이스만 SSMS에 나타나도록 설정할 수 있습니다. 
SQL Leader.com에서 가져왔습니다.


-- 테스트용 사용자 데이터베이스 생성

CREATE DATABASE User1DB

GO

CREATE DATABASE User2DB

GO

 

-- 데이터베이스에 해당하는 사용자 계정 생성

CREATE LOGIN User1 WITH PASSWORD='AAA', DEFAULT_DATABASE=User1DB

GO

CREATE LOGIN User2 WITH PASSWORD='AAA', DEFAULT_DATABASE=User2DB

GO

 

--public 대해 DATABASE VIEW 권한 취소

REVOKE VIEW ANY DATABASE FROM public

GO

 

-- DB 대해 Owner 설정

USE USER1DB

GO

sp_changedbowner 'User1'

GO

 

USE USER2DB

GO

sp_changedbowner 'User2'

GO


 

 



 

Posted by 조이트리
IT Pro2008. 5. 7. 13:03

1. IIS7을 Windows Server 2003에 설치 가능한가요?
   - 아니오, IIS7은 Windows Server 2008에서만 구동됩니다. 물론, Windows Vista SP1 버전에서 IIS7의 개발
     자 버전이 구동되긴 합니다. 개발은 Vista의 IIS7에서 하고, 실제 운영은 Windows Server 2008의 운영서버에서 진행하는 형태가 가장 추천되는 시나리오 입니다.

2. IIS7을 커맨드를 이용해서 관리할 수 있나요?
   - 물론 입니다. Appcmd.exe 라고 하는 "맥가이버 칼" 같은 도구로 IIS 관리자에서 수행 가능한 모든 작업을
   커맨드라인으로도 수행할 수 있습니다.

3. IIS6에서 사용하던 ADSI, WMI를 IIS7에서도 사용할 수 있나요?
   - 물론입니다. IIS6.0 관리 호환성을 설치하면 사용 가능합니다.

4. IIS7을 설치하기 위해 모든 기능 서비스, 모듈, 종속성(Dependency)에 대해 알아야만 하나요?
    - 아는 것이 좋습니다. IIS 관리자(GUI) 방식을 사용하면 몰라도 설정이 일부 가능하긴 하지만, pkgmgr를 사용하여 설치하는 경우라면 정확히 알고 있어야, 혹시 발생할 지 모를 오류를 방지할 수 있습니다.

5. 모든 Feature를 인스톨하면 무슨 문제가 있습니까?
    - 사실 문제가 있는 건 아니지만, IIS7.0의 사용하지 않는 기능을 메모리에 올라가게 하므로 메모리 Footprint가 증가되어 성능에 지장이 있고, 해킹 및 보안 위협에 대한 가능성을 높이며, 불필요한 패치 빈도를 높이는 결과를 초래할 수 있습니다.

6. 메타베이스가 사라졌다고 하는데, 왜 FTP 배포 서비스는 메타베이스를 찾는지 궁금합니다.
   - 더 이상 메타베이스가 중심 저장소는 아니지만, FTP 배포 서비스는 IIS6.0과 달라지지 않았으므로 메타베이스가 존재하고 있다고 생각을 합니다. 하지만 IIS7은 모든 요청을 Applicationhost.config로 번역을 해주게 됩니다. 결국 메타베이스는 사용되지 않는 것이고, 리거시 어플리케이션과 Feature는 있다고 생각만 하는 것입니다.

7. 매니지드코드와 네이티브코드가 요청 파이프라인에 동일한 접근 권한을 가지는데, 왜 네이티브 코드를 사용하는 거죠?
   - 성능 이슈 때문에 그렇습니다. 네이티브 코드(C++)는 오버헤드가 적습니다. 매니지드 모듈은 특정 어플리케이션에 맞도록 사용하는 목적, 네이티브 모듈은 글로벌하게 사용하는데 적절합니다.

8. ApplicationHost.config 파일은 서버 정보, Web.config 파일은 어플리케이션 정보를 담고 있습니다.

9. ApplicationHost.config 파일은 아무나 수정 가능합니까?
    - 아닙니다. 윈도우 관리자만 수정 가능합니다.

10. Section Group이 뭐죠?
    - 관련 섹션의 모음 입니다. 계층 구조로 이루어져 있습니다.

11. Location tag은 어떨 때 사용하는 것입니까?
    - Locking 과 Unlocking 용도로 사용합니다. 관리 위임할 때

12. Appcmd.exe가 클라이언트에서 리모트 IIS7을 관리할 수 있습니까?
    - 안됩니다. 리모트 관리(원격)를 위해서는 WMI를 사용하셔야 합니다.

13. 호스팅 업체에서 고객이 Trace 셋팅을 사용하고 싶습니다. 가능한가요?
    - 네, 가능합니다. 하지만, 서버 내의 모든 고객이 Trace가 가능하도록 설정하는 것과 동일함을 고려해야 합니다.

14. Error 모듈을 교체 가능한가요?
   - 네. 가능합니다. 사이트 레벨로 Error 모듈을 교체할 수 있고 IIS7의 확장성이 갖는 장점중의 하나입니다.

Posted by 조이트리