원격 셸에 대한 할당량 관리
할당량 관리를 통해 사용자는 시스템 리소스를 보다 효율적으로 관리할 수 있습니다. WinRM(Windows 원격 관리)에는 더 나은 서비스 품질을 제공하고, 서비스 거부 문제를 방지하고, 동시 사용자에게 서버 리소스를 할당하는 특정 할당량 집합이 추가되었습니다. WinRM 할당량 집합은 IIS(인터넷 정보 서비스) 서비스에 대해 구현되는 할당량 인프라를 기반으로 합니다.
할당량을 구현하면 다음을 수행하여 성능 저하 및 서비스 거부 문제를 방지하는 데 도움이 됩니다.
- 사용자가 만들 수 있는 셸 및 셸 프로세스 수 제한
- 최대 동시 사용자 수 제한
- 셸에 할당된 메모리 양 관리
- 비활성 셸에 대한 제한 시간 설정
원격 셸 관리를 위해 다음 할당량을 적용해야 합니다. 이러한 할당량은 winrm 유틸리티 또는 그룹 정책 설정을 통해 구성할 수 있습니다. 그룹 정책 구성된 설정은 winrm 유틸리티에서 설정한 할당량을 대체합니다. WinRM에 대한 그룹 정책을 설정하는 방법에 대한 자세한 내용은 Windows 원격 관리를 위한 설치 및 구성을 참조하세요.
-
Idletimeout
-
비활성 원격 셸이 삭제되기 전까지의 최대 시간(밀리초)입니다. 기본값은 180000밀리초입니다. 최소 시간은 1000밀리초입니다.
-
MaxProcessesPerShell
-
셸의 자식 프로세스를 포함하여 셸당 허용되는 최대 프로세스 수입니다. 기본값은 25입니다.
-
MaxMemoryPerShellMB
-
셸의 자식 프로세스를 포함하여 셸당 할당된 최대 메모리 양입니다. 기본값은 1024MB입니다.
참고
MaxMemoryPerShellMB가 기본값보다 작은 값으로 설정된 경우 동작은 지원되지 않습니다.
-
MaxShellsPerUser
-
사용자당 최대 셸 수입니다. 기본값은 30입니다.
-
MaxConcurrentUsers
-
셸을 열 수 있는 최대 동시 사용자 수입니다. 기본값은 10입니다.
WinRM 2.0은 MaxShellRunTime 할당량을 읽기 전용으로 설정합니다. 이 할당량의 값을 변경해도 원격 셸에는 영향을 주지 않습니다.
할당량 구성 설정을 검사 winrm get winrm/config를 입력합니다.
다음 코드 조각은 기본 할당량 설정을 사용하는 WinRM 구성의 텍스트 기반 예제입니다.
Config
...
Winrs
AllowRemoteShellAccess = true
IdleTimeout = 7200000
MaxConcurrentUsers = 10
MaxProcessesPerShell = 25
MaxMemoryPerShellMB = 1024
MaxShellsPerUser = 30
할당량은 그룹 정책 설정을 통해 또는 수동으로 설정할 수 있습니다. 특정 구성 설정에 대한 자세한 내용은 Windows 원격 관리를 위한 설치 및 구성을 참조하세요.
그룹 정책 사용하여 할당량을 설정하려면
- 관리자로 명령 프롬프트 창을 엽니다.
- 명령 프롬프트에서 gpedit.msc를 입력합니다. 그룹 정책 개체 편집기 창이 열립니다.
- 컴퓨터 구성\관리 템플릿\Windows 구성 요소에서 Windows 원격 관리 및 Windows 원격 셸 그룹 정책 개체(GPO)를 찾습니다.
- 확장 탭에서 설정을 선택하여 설명을 확인합니다. 설정을 두 번 클릭하여 편집합니다.
할당량을 수동으로 설정하려면
- 관리자로 명령 프롬프트 창을 엽니다.
- 명령 프롬프트에서 winrm set winrm/config/winrs '@{<Quota>="<Value>"}'를 입력합니다.
예를 들어 사용자당 최대 셸 수를 5개에서 7개로 늘리려면 winrm set winrm/config/winrs '@{MaxShellsPerUser="7"}'을 입력합니다.