달력

1

« 2025/1 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2008. 11. 29. 09:08

프로세스 모니터 (개수 - 최소/최대) SystemCenter2008. 11. 29. 09:08

Monitor -> New -> Scripting -> Timed Script Two State Monitor

Parameters
[Process1.exe] [Lower value] [Upper value] [Process2.exe] [Lower value] [Upper value] ....

State Expression
For Unhealthy Expression Property[@Name='State'] Equals Good
For Healthy Expresion Property[@Name='State'] Equals Bad

Alert Description
$Data/Context/Property[@Name='Message']$

---------------------------------------------------------------------------------

ProcessCheck.vbs

Dim oAPI, oBag, oArgs, strProcess(), Lower(), Upper(), colProcess()
strMessage = " "

Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
Set oArgs = WScript.Arguments

ParamCount = oArgs.Count
State = 0

If ParamCount < 3 Then
Call oAPI.LogScriptEvent("ProcessCheck.vbs", 5009, 0, "Script aborted. Not enough parameters provided.")
WScript.Quit -1
End If

If (ParamCount Mod 3) <> 0 Then
Call oAPI.LogScriptEvent("ProcessCheck.vbs", 5010, 0, "Script aborted. The number of provided parameters is invalid.")
WScript.Quit -1
End If

ReDim Preserve strProcess(ParamCount), Lower(ParamCount), Upper(ParamCount), colProcess(ParamCount)

i = 0
Do While i <> ParamCount
strProcess(i) = oArgs(i)
Lower(i) = cInt(oArgs(i + 1))
Upper(i) = cInt(oArgs(i + 2))

If Lower(i) > Upper(i) Then
Call oAPI.LogScriptEvent("ProcessCheck.vbs", 5011, 0, "'" & strProcess(i) & " " & Lower(i) & " " & Upper(i) & "'" & " Lower value is bigger than upper value.")
WScript.Quit -1
End If

i = i + 3
Loop

i = 0
Do While i <> ParamCount
strComputer = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
Set colProcess(i) = objWMIService.ExecQuery ("Select * from Win32_Process Where Name = '" & strProcess(i) & "'")

If colProcess(i).Count => Lower(i) and colProcess(i).Count =< Upper(i) Then
Call oBag.Addvalue(strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ")" ,colProcess(i).Count & "ea (Normal)")
strMessage = strMessage & strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ") : " & colProcess(i).Count & "ea (Normal)" & " | "
End If

If colProcess(i).Count < Lower(i) Then
Call oBag.Addvalue(strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ")" ,colProcess(i).Count & "ea (Too few)")
strMessage = strMessage & strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ") : " & colProcess(i).Count & "ea (Too few)" & " | "
State = 1
End If

If colProcess(i).Count > Upper(i) Then
Call oBag.Addvalue(strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ")" ,colProcess(i).Count & "ea (Too many)")
strMessage = strMessage & strProcess(i) & " (" & Lower(i) & "~" & Upper(i) & ") : " & colProcess(i).Count & "ea (Too many)" & " | "
State = 1
End If

Set objWMIService = nothing
i = i + 3
Loop

If State = 0 Then
Call oBag.AddValue("State","Good")
Else
Call oBag.AddValue("State","Bad")
End If

Call oBag.AddValue("Message",strMessage)
Call oAPI.Return(oBag)

:
Posted by 커널64
2008. 11. 28. 00:35

MOM 2005에서 SMTP 전송 시 NTLM 인증 Disable SystemCenter2008. 11. 28. 00:35

Failed to send SMTP message. The message could not be sent to the SMTP server. The transport error code was 0x80040217. The server response was not available hr=-2147220975

MOM 2005에서 SMTP 메시지 전송 시 위와 같은 오류와 함께 알림 메시지가 가지 않는 경우

HKEY_LOCAL_MACHINE\Software\Mission Critical Software\OnePoint\Configurations\<Configuration group name>\Operations\Consolidator

'SendSmtpAnonymous'  DWORD 생성 => 값 : 1

KB885741

:
Posted by 커널64
2008. 11. 26. 12:21

SCDPM (Data Protection Manager) 2007의 백업 SystemCenter2008. 11. 26. 12:21

볼륨 필터
- 블록 수준의 변경 사항에 대한 추적
- 페이징 풀에 존재하며 보호된 볼륨의 각 블록을 1비트로 나타내는 비트맵으로 구성

전체 백업(VSS 스냅샷 또는 복제본)
1. 보호된 서버에서 VSS 복제본을 생성한 다음 변경된 데이터를 식별하기 위해 볼륨 필터와 오버레이 시킨다.
2. 변경된 데이터는 DPM 서버로 전송되고 복구 지점이 생성한다.
3. 보호된 서버에서 VSS 복제본이 제거되고 볼륨 필터가 재설정 된다.
4. 블록 수준 변경에 대한 추적이 계속된다.
- 전체 백업 제한 : 응용 프로그램 서버의 경우 512개, 파일 서버의 경우 64개

Express Full Backup
1. DPM Agent에 의해 응용 프로그램의 VSS Writer가 Snapshot을 생성한다.
2. 이 snapshot은 볼륨 필터에 의해 어떤 데이터가 백업되어야 하는지를 결정한다.
3. 볼륨 필터는 디스크의 블록 단위로 비교해 그 결과 변경이 발생한 부분이 있다면 순서대로 DPM 서버로 복사된다.
4. 백업이 끝나게 되면 정보저장소 또는 데이터베이스의 무결성을 검사하게 된다. (예: eseutil /k)
5. 무결성 검사에서 오류가 발견되지 않는다면 트렌젝션 로그는 잘려지고 백업 과정은 완료된다.
6. 만약 무결성 검사가 실패한다면 백업은 취소되고 트렌젝션 로그는 잘려지지 않는다.

Transaction Log Synchronization
1. 기본적으로 15분 마다 발생하며 VSS Incremental Synchronization을 사용한다.
2. VSS Writer는 데이터의 무결성과 메모리에 있던 커밋된 트렌젝션 로그가 디스크로 플러쉬 되었는지를 확인한다.
3. VSS Writer는 Incremental Snapshot을 생성한다.
4. 변경된 트렌젝션 로그는 DPM 서버의 복구 지점 볼륨으로 전달된다.
5. 무결성 검사에 오류가 발견되지 않으면 백업은 성공하고 트렌젝션 로그는 잘려지게 된다.

:
Posted by 커널64
2008. 11. 24. 11:22

SCDPM 2007 Known Issue SystemCenter2008. 11. 24. 11:22

:
Posted by 커널64

Agent Failover를 사용하기 위해서는 AD 통합이 되어야 하는데
AD 통합이 되어 있지 않은 상태에서 Agent Failover를 구성하기 위해서는 다음 스크립트를 사용한다.

param($agentComputerName,$failoverManagementServerName)
$agent = get-agent | where {$_.PrincipalName -eq $agentComputerName}
$primaryManagementServer  = $agent.GetPrimaryManagementServer();
if($primaryManagementServer -eq $null)
{
"Primary management server not found"
return
}
$failoverManagementServer = Get-ManagementServer | where {$_.PrincipalName -eq $failoverManagementServerName}
if($failoverManagementServer -eq $null)
{
"Failover management server not found"
return
}
if($failoverManagementServer.PrincipalName -eq $primaryManagementServer.PrincipalName)
{
"The failover management server cannot be the same as the primary management server"
return
}
$failoverServers = New-Object System.Collections.Generic.List``1"[[Microsoft.EnterpriseManagement.Administration.ManagementServer,Microsoft.EnterpriseManagement.OperationsManager,Version=6.0.4900.0,Culture=neutral,PublicKeyToken=31bf3856ad364e35]]"
$failoverServers.Add($failoverManagementServer)
$agent.SetManagementServers($primaryManagementServer,$failoverServers)

== 사용 방법 ==
1. 위 스크립트를 PS1 확장자로 저장
2. OpsMgr Command Shell 실행
3. 다음과 같이 Agent의 Failover 설정
<SavedFileName>.ps1 -agentComputerName:'agent1.contoso.com'  -failoverManagementServerName:'scommgmt.contoso.com'

:
Posted by 커널64
2008. 11. 16. 21:17

SCCM 2007 클라이언트 기준의 포트 정리 SystemCenter2008. 11. 16. 21:17

Client -> Software Update Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80 or 8530
Secure Hypertext Transfer Protocol (HTTPS)   443 or 8531
Client -> State Migration Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80
Secure Hypertext Transfer Protocol (HTTPS)   443
Server Message Block (SMB)   445
Client -> PXE Service Point
Description  UDP  TCP 
Dynamic Host Configuration Protocol (DHCP) 67 and 68  
Trivial File Transfer Protocol (TFTP)  69  
Boot Information Negotiation Layer (BINL) 4011  
Client -> System Health Validator
NAP 적용 클라이언트에 따라 다름.
예를 들어 DHCP는 UDP 67과 68, IPSec은 HRA로 TCP 80 또는 443, IPSec 협상을 위한 UDP 500(Filter 설정에 따라 변함)
Client -> Fallback Status Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80
Client -> Distribution Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80
Secure Hypertext Transfer Protocol (HTTPS)   443
Server Message Block (SMB)   445
Multicast Protocol 63000-64000  
Client -> Branch Distribution Point
Description  UDP  TCP 
Server Message Block (SMB)   445
Client -> Management Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80
Secure Hypertext Transfer Protocol (HTTPS)   443
Client -> Server Locator Point
Description  UDP  TCP 
Hypertext Transfer Protocol (HTTP)   80
Configuration Manager Console -> Client
Description  UDP  TCP 
Remote Control (control) 2701 2701
Remote Control (data) 2702 2702
Remote Control (RPC Endpoint Mapper)   135
Remote Assistance (RDP and RTC)   3389
Site Server -> Client
Description  UDP  TCP 
Wake on LAN 9  

Configuration Manager client -> Global Catalog Domain Controller
Description  UDP  TCP 
Global Catalog LDAP   3268
Global Catalog LDAP SSL   3269
Configuration Manager 클라이언트가  WORKGROUP 머신이거나 Internet-Only 통신으로 설정되어 있다면 GC와 통신하지 않는다.
:
Posted by 커널64
2008. 11. 16. 18:10

SCOM 2007의 포트 요구 사항 SystemCenter2008. 11. 16. 18:10

사용자 삽입 이미지



Operations Manager 2007 SP1 Component A  Port Number and
Direction 
Operations Manager 2007 SP1 Component B 
Root Management Server  1433 ---> Operations Manager database
Management server  1433 ---> Operations Manager database
Management server 5723, 5724 ---> Root Management Server 
Gateway server 5723, 5724 ---> Root Management Server 
Root Management Server 1433 ---> Reporting Data Warehouse
Reporting server 5723, 5724 ---> Root Management Server 
Operations Console  5724 ---> Root Management Server
Connector framework source  51905 ---> Root Management Server
Web Console server  5724 ---> Root Management Server
Connected Root Management Server (Local) 5724 ---> Connected Root Management Server (Connected)
Agent installed using MOMAgent.msi 5723 ---> Root Management Server 
Agent installed using MOMAgent.msi 5723 ---> Management server 
Agent installed using MOMAgent.msi 5723 ---> Gateway server 
Gateway server 5723 ---> Management server 
Agent (Audit Collection Services forwarder) 51909 ---> Management server Audit Collection Services collector
Agentless Exception Monitoring data from client  51906 ---> Management server Agentless Exception Monitoring file share
Customer Experience Improvement Program data from client  51907 ---> Management server (Customer Experience Improvement Program End) Point
Operations Console (reports) 80 ---> SQL Reporting Services
Reporting server  1433 ---> Reporting Data Warehouse 
Management server (Audit Collection Services collector) 1433 ---> Audit Collection Services database 
Web Console browser  51908 ---> Web Console server

1. MOM의 동작을 위해서는 RMS와 MOM DB와의 연결은 끊김이 없어야 한다.
2. 고가용성을 위해서는 MOM DB/RMS를 Clustering하는 것이 좋다.
3. Discover 동작 시 ‘Verify discovered computers’ 옵션이 켜져 있다면 대상 장비 135(RPC), 137(NETBIOS Name), 139(NETBIOS Session), 445(SMB), 5723 포트로의 접근이 가능해야 한다.
:
Posted by 커널64

l  작업을 위해서는 MOM 2005 Management Server가 필요하다.

l  기본적으로 MOM 2005 MP의 확장자는 akm 이다. (Binary)

l  Binary 파일인 akm 파일을 먼저 xml 형식으로 변환한 후 SCOM 2007 xml로 변환하게 된다.

 

여기서는 Windows Media Services MP Converting하는 것을 예로 한다.

 

<사전 준비 사항>

1.     MOM 2005 Management Server에 로그온 한다.

2.     다음 경로에서 MOM 2005 Resource Kit을 다운받아 설치한다.
MOM 2005 Resource Kit

3.     아래의 링크를 통해 MOM 2005 WMS MP를 다운 받아 설치한다.
Windows Media Services Management Pack for MOM

 

<Converting Process>

1.     MOM 2005 Management Server에 로그온 한다.

2.     Command 창을 열고 다음 위치로 이동한다.
Drive:\Program Files\Microsoft Operations Manager Resource Kit\Tools\Convert Management Packs to XML>

3.     MP2XML.exe 명령을 이용해 위에서 설치(압축을 푼) WMS MP xml 파일로 변환한다.
명령어 사용법 : MP2XML [원본 akm 파일] [대상 xml 파일]

4.     정상적으로 Converting이 완료되면 다음과 같은 메시지와 함께 xml 파일이 생성된다.

사용자 삽입 이미지

5.     이제 생성된 xml 파일을 SCOM 2007이 설치된 Server에 복사한다.

6.      SCOM 2007 설치 미디어에서 MPConvert.exe 파일을 복사하거나 Command 창에서 설치 미디어의 SupportTools 디렉터리로 이동한다.

7.     Command 창에서 다음과 같이 MPConvert.exe 명령을 이용해 MOM 2005 xml 파일을 SCOM 2007 용으로 변환한다.
MPConvert [MOM 2005
xml 파일] [SCOM 2007 xml 파일]


[
참고]
-
결과 파일의 이름(SCOM 2007 xml 파일)은 공백을 포함할 수 없다
.
-
변환이 완료되면 기본적으로 MP의 버전은 1.0.0.1이 된다. (/version 값을 주지 않는 경우
)
-
변환된 xml 파일을 SCOM 2007에서 Import 하면 이름 뒤에 ‘(Converted)’라고 표시된다.

:
Posted by 커널64
2008. 11. 16. 12:11

SCOM 2007 Active Directory Integration SystemCenter2008. 11. 16. 12:11

AD 통합
Operations Manager 2007의 새로운 기능으로 Agent의 구성 정보를 AD에 게시하는 것이다.
OpsMgr Agent는 시작 시 DC에 LDAP 쿼리를 수행함으로서 Agent가 속하는 Management Group 정보와 통신하게 될 Management Server를 정보를 가져오게 된다. AD 통합이 실제로 Agent를 배포하는 것은 아니다.

참고: Operations Manager 2007의 AD 통합을 이용하기 위한 도메인 기능 수준은 Windows 2000 또는 Windows 2003 Native Mode여야 한다.

*조직이 매우 크지 않은 이상 AD 통합을 권장하지는 않는다.


Operations Manager 2007 AD 통합의 전체적인 순서는 다음과 같다.
1. AD 개체 생성
2. Operations Console 설정
3. 관리 서버의 레지스트리 키 설정


AD 개체 생성
1. Domain Admins 그룹의 계정으로 로그인
2. Operations Manager 2007 설치 미디어의 SupportTools 폴더의 MomADAdmin.exe 명령줄 도구를 이용해 AD에 개체 생성
MomADAdmin.exe <management group name> <OpsMgr Admins Security Group> <RMS name> <AD Domain>
3. 위 명령은 다음과 같은 일을 수행한다.
Operations Manager > (Management Group name) > HealthServiceSCP 컨테이너 생성
(Management Group name)에 HealthServiceSCP 컨테이너에 대한 읽기 권한이 있는 보안 그룹이 위치
RMS 컴퓨터 계정을 이 보안 그룹에 추가

참고: Agent Managed Machine이 SCP를 사용하고 있는지 확인하는 방법

관리 대상 머신의 다음 레지스트리 값이 1인 경우
HKLM\SYSTEM\CurrentControlSet\Services\HealthService\Parameters\management groups\<Management Group name>\IsSourcedFromAD
이벤트 로그에 원본이 OpsMgr Connector인 20062, 20013 이벤트 확인


Operations Console 설정
1. AD 통합 마법사 실행 (Administration -> Device Management -> Management Servers)
2. LDAP 쿼리를 설정해 자동 할당을 적용 받을 컴퓨터를 지정한다.
3. 장애 복구 수행 방법 지정
Automatically manage failover - Agent는 자동으로 다른 관리 서버와 통신한다.
Manually configure failover — 장애 복구를 수행할 관리 서버를 수동으로 지정한다.
4. 마법사를 완료한다.


관리 서버의 레지스트리 키 설정
1. 각 관리 서버에서 다음 레지스트리 키를 찾아 수정한다.
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HealthService\Parameters\ConnectorManager
EnableADIntegration 값을 1로 설정한다.

*도메인 컨트롤러의 경우 관리 그룹이 여러 개이면 기본적으로 도메인 컨트롤러의 시스템 계정은 모든 SCP 폴더에 대해 접근이 가능하기 때문에 모든 관리 그룹에 참가하려고 하게 된다.
Workaround: 도메인 컨트롤러에 대해서는 AD 통합을 사용하지 않는다.



AD 통합 제거
MomADAdmin.exe -d <management group name> <AD Domain>

:
Posted by 커널64

System Management 컨테이너 생성
1. 도메인 관리자 권한으로 로그인
2. Support Tools 설치
3. ADSIEDIT 실행
4. Domain > Domain Name > CN=System
5. CN=System에 우클릭 -> New > Object
6. Class는 Container > Value는 System Management -> 생성

사용자 삽입 이미지



























생성한 컨테이너의 권한 할당
1. ADCU 실행
2. 보기 -> 고급 기능
3. Expand -> Domain Name > System
4. System Management 컨테이너 > 속성 -> 보안
5. 사이트 서버의 컴퓨터 계정에 Full 권한 부여 -> 고급 > 현재 및 하위까지 권한 부여

:
Posted by 커널64