CLI는 명령 창 모드에서 MCCS 서비스에 명령을 전달 할 수 있는 기능을 말합니다.
MCCS 가 제공하는 CLI 종류로는 로그에 임의의 로그를 추가 할 수 있는 mclog, 그룹에 명령을 내릴 수 있는 mcgroup, 리소스에 명령을 내릴 수 있는 mcres가 있습니다.
일반적으로 CLI는 스크립트(*.bat, *.cmd) 파일을 작성하여 다양한 명령을 MCCS 서비스에 전달하는 용도로 사용합니다.
CLI는 %MCCS_HOME%\bin에 존재합니다.
이 페이지의 주요 내용
CLI 사용 (mccluster 명령)
MCCS 클러스터의 속성 값을 수정할 때 사용합니다. CLI를 사용하여 사용자가 원하는 속성 값을 수정할 수 있습니다.
MCCS 는 설치 시 최초 사용자 계정으로 id 가 'admin' 암호가 'password'인 계정을 생성합니다.
CLI 명령을 실행 시 id 와 password를 입력하지 않으면 , 위의 최초 사용자 계정의 id와 암호로 실행됩니다.
따라서 최초 사용자의 패스워드 변경 시, 필수적으로 CLI 명령에 id와 password를 옵션으로 입력해야하만 합니다.
Syntax
mccluster [-u userid -pw password] [-c clusterName] [-a attribute] attribute_value
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 ID를 지정합니다. |
-pw | -u 옵션의 사용자 비밀번호를 지정합니다. |
-c | 명령을 실행하기 위해 접근할 클러스터를 지정합니다. |
-a | 수정하기 위한 속성값 이름을 지정합니다. |
Example
modify
testCluster의 클러스터 속성을 수정합니다.
mccluster -u admin -pw password -modify -c testCluster -a attribute attribute_value
list
클러스터 상태를 출력합니다.
mccluster -u admin -pw password -list
CLI 사용(mcnode 명령)
노드에 관한 명령을 전달합니다. 노드에 대해 속성 조회, 속성 값 변경, 라이선스 입력, 서포트 파일 다운로드 명령을 내릴 수 있습니다.
MCCS 는 설치시 최초 사용자 계정으로 id 가 'admin' 암호가 'password'인 계정을 생성합니다.
CLI 명령을 실행시 id 와 password를 입력하지 않으면 , 위의 최초 사용자 계정의 id와 암호로 실행됩니다.
따라서 최초 사용자의 패스워드 변경시, 필수적으로 CLI 명령에 id와 password를 옵션으로 입력해야만 합니다.
Syntax
mcnode [-u userid -pw password] [-ip node_ip_address] -command [-a attribute] [-l license] [-path download_path]
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 계정을 지정합니다. |
-pw | 사용자 Password를 지정합니다. |
-ip | 명령을 실행하기 위해 접근할 IP를 지정합니다. |
-a | [modify] 명령일 경우 변경할 속성과 속성 값을 지정합니다. |
-path | 서포트 파일 다운 받을 경로를 지정합니다. 경로 지정을 생략하면 user.home에 다운로드 됩니다. |
-l | 지정한 노드의 입력할 라이선스 값을 지정합니다. |
Example
modify
testNode-1 노드의 속성 값을 수정합니다.
mcnode -u admin -pw password -modify -n TestNode-1 -a attribute attribute_value
license
testNode-1 노드의 라이선스를 입력합니다.
mcnode -u admin -pw password -license -n TestNode-1 license_value
support
testNode-1 노드의 서포트 파일을 c:\에 다운로드 받습니다.
(-all 입력 시 노드 전체에 대하여 서포트 파일을 생성한 후 다운로드 합니다.)
mcnode -u admin -pw password -support -n TestNode-1 [ -all ] -path c:\
list
노드의 속성 리스트를 보여줍니다.
(NodeName 입력 시 입력한 해당 노드에 대한 속성 값만 출력합니다.)
mcnode -u admin -pw password -list [-n nodename]
CLI 사용(mcgroup 명령)
그룹에 관한 명령을 전달합니다. 그룹에 대해 추가, 삭제, 온라인, 오프라인, 속성 편집 등의 명령을 내릴 수 있습니다.
MCCS는 설치 시 최초 사용자 계정으로 ID는 'admin', 비밀번호는 'password'인 계정이 생성됩니다.
CLI 명령을 실행 시 ID 와 비밀번호를 입력하지 않으면, 위의 최초 사용자 계정의 ID와 비밀번호로 실행됩니다.
따라서 최초 사용자의 비밀번호 변경 시, 필수적으로 CLI 명령에 ID와 비밀번호를 옵션으로 입력해야 합니다.
Syntax
mcgroup [-u userid -pw password] [-ip node_ip_address] [-p port] -command [ group ] [-a attribute] [-r resource] [-n node] |
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 ID를 지정합니다. |
-pw | 사용자 비밀번호를 지정합니다. |
-ip | 명령을 실행하기 위해 접근할 IP를 지정합니다. |
-p | 명령을 실행하기 위해 접근할 포트를 지정합니다. |
-groupcommand | 그룹에 내릴 명령을 지정합니다. |
group | 작업의 대상이 되는 그룹을 지정합니다. |
-a | [list] 명령일 경우 속성값을 나열할 속성을 지정합니다. |
-r | 작업 할 리소스를 지정합니다. |
-n | 작업 할 노드명을 지정합니다. |
-t | 시간주기를 지정합니다. |
-dep | 그룹이나 리소스의 의존성을 표시합니다. |
Example
add
그룹 testGroup을 생성합니다.
mcgroup -u admin -pw password -add testGroup |
delete
그룹 testGroup을 삭제합니다.
mcgroup -u admin -pw password -delete testGroup |
online
testNode에서 testGroup을 온라인 시킵니다.
mcgroup -u admin -pw password -online testGroup [-n testNode] |
offline
testNode에서 testGroup을 오프라인 시킵니다.
mcgroup -u admin -pw password -offline testGroup [-n testNode] |
move
testNode로 testGroup을 페일오버 시킵니다.
mcgroup -u admin -pw password -move testGroup [-n testNode] |
clear
testNode에서 testGroup의 장애 표시를 제거합니다.
mcgroup -u admin -pw password -clear testGroup [-n testNode] |
flush
testNode의 testGroup을 초기화 시킵니다.
mcgroup -u admin -pw password -flush testGroup -n testNode |
modify
testNode의 testGroup 속성을 수정합니다.
mcgroup -u admin -pw password -modify test -a attribute attribute_value -n testNode |
testNode의 testGroup 속성인 AutoStart를 true로 변경합니다.
mcgroup -u admin -pw password -modify testGroup -a AutoStart true -n testNode |
list
그룹 상태를 출력합니다.
mcgroup -u admin -pw password -list [group [-all] | [-dep [-r resource]] | [-a attribute] [-n testNode]] |
그룹의 모든 속성값을 출력합니다.
mcgroup -u admin -pw password [-ip node_ipaddress] [-p port] -list [group [ -all]] |
그룹에 속한 리소스의 의존성을 보여줍니다.
mcgroup -u admin -pw password [-ip node_ipaddress] [-p port] -list [-dep [-r resource]] |
그룹의 속성값을 확인합니다.
mcgroup -u admin -pw password [-ip node_ipaddress] [-p port] -list [-a attribute] [-n testNode]] |
link
리소스 간의 의존 관계를 생성합니다.
resource1을 부모로 resource2를 자식으로 의존 관계를 생성합니다.
|
unlink
리소스 의존 관계를 삭제합니다.
|
lock
testGroup을 임시 잠금 상태로 합니다.
mcgroup -u admin -pw password -lock testGroup |
testGroup을 영구 잠금 상태로 합니다.
mcgroup -u admin -pw password -lock testGroup -p |
unlock
testGroup의 잠금 상태를 해제합니다.
mcgroup -u admin -pw password -unlock testGroup |
state
test Node의 testGroup 상태를 출력합니다.
mcgroup -u admin -pw password -state testGroup [-n testNode] |
monitor
testGroup 상태를 interval 간격으로 모니터링 합니다.
mcgroup -u admin -pw password -monitor testGroup [-t interval(seconds)] |
CLI 사용(mctype 명령)
리소스 타입에 관한 명령을 전달합니다. 리소스 타입에 대해 속성 조회, 속성 값 변경 명령을 내릴 수 있습니다.
MCCS는 설치 시 최초 사용자 계정으로 ID는 'admin' 비밀번호는 'password'인 계정이 생성됩니다.
CLI 명령을 실행 시 ID 와 비밀번호를 입력하지 않으면, 위의 최초 사용자 계정의 ID와 비밀번호로 실행됩니다.
따라서 최초 사용자의 비밀번호 변경 시, 필수적으로 CLI 명령에 ID와 비밀번호를 옵션으로 입력해야 합니다.
Syntax
mctype -u admin -pw password -t resoruceType -a attribute |
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 ID를 지정합니다. |
-pw | -u 옵션의 사용자 비밀번호를 지정합니다. |
- r | 수정할 리소스 타입 이름을 지정합니다. |
- a | 수정할 리소스 타입의 속성 이름을 지정합니다. |
- list | 리소스 타입 리스트가 나열됩니다. |
Example
modify
MirrorDisk의 MonitorInterval 속성 값을 수정합니다.
mctype -u admin -pw password -modify -t resoruceType -a attribute attribute_value |
list
모든 리소스 타입에 대한 속성 값을 출력합니다.
(-t resourceType 입력 시 지정한 리소스 타입에 대한 속성 값이 출력됩니다.)
mctype -u admin -pw password -list [-t resourceType] |
CLI 사용(mcres 명령)
리소스에 관한 명령을 전달 합니다. 리소스에 대해 추가, 삭제, 온라인, 오프라인, 속성 편집 등의 명령을 내릴 수 있습니다.
MCCS 는 설치시 최초 사용자 계정으로 id 가 'admin' 암호가 'password'인 계정을 생성합니다.
CLI 명령을 실행시 id 와 password를 입력하지 않으면 , 위의 최초 사용자 계정의 id와 암호로 실행됩니다.
따라서 최초 사용자의 패스워드 변경시, 필수적으로 CLI 명령에 id와 password를 옵션으로 입력해야만 합니다.
Syntax
mcres [-u userid -pw password] [-ip node_ip_address] [-p port] -command [ resource ] [ -g group ] [ -n node] mcres [-u userid -pw password] [-ip node_ip_address] [-p port] -add [ resource ] [ -t resource_type ] [ -g group ] mcres [-u userid -pw password] [-ip node_ip_address] [-p port] -monitor [ group_name ] [ -t interval(seconds)] mcres [-u userid -pw password] [-ip node_ip_address] [-p port] -modify [ resource ] [-a attribute attribute_value] [ -g group ] [ -n node] |
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 ID를 지정합니다. |
-pw | -u 옵션의 사용자 비밀번호를 지정합니다. |
-ip | 명령을 실행하기 위해 접근할 IP를 지정합니다. |
-p | 명령을 실행하기 위해 접근할 포트를 지정합니다. 생략시 기본 포트로 접근하며, 핫빗 포트가 변경이 되면 명령실행시 포트를 지정해 주어야 합니다. |
-resourcecommand | 리소스에 내릴 명령을 지정합니다. (add, delete, enable, disable, monitor, modify, link, unlink, local, Global, Online, Offline, Offlineprop, Probe, clear, list) |
resource | 작업할 리소스명을 입력합니다. |
-a | [list] 명령일 경우 나열할 속성값을 지정합니다. [modify] 명령일 경우 변경할 속성과 속성값을 나열해 줍니다. |
-t | [-add] 명령일 경우 리소스 타입을 지정합니다. [-monitor] 명령일 경우 시간 주기를 지정합니다. |
-g | 작업할 그룹을 지정합니다. |
-n | 작업할 노드를 지정합니다. |
Example
add
testGroup그룹에 복합 응용 타입으로 testResource 를 생성합니다.
-g testGroup |
delete
testResource 리소스를 삭제합니다.
mcres -u admin -pw password -delete testResource |
enable
testResource 리소스를 활성화시킵니다.
mcres -u admin -pw password -enable testResource |
disable
testResource 리소스를 비활성화 시킵니다.
mcres -u admin -pw password -disable testResource |
monitor
testGroup 에 속한 모든 리소스를 interval 간격으로 모니터링 합니다. 주기가 지정되지 않은 경우에는 3초가 기본값으로 지정됩니다.
mcres -u admin -pw password -monitor [testGroup] [-t interval(seconds)] |
testGroup을 10초 간격으로 모니터링 합니다.
mcres -u admin -pw password -monitor testGroup -t 10 |
modify
testResource 리소스의 attribute를 value 값으로 수정합니다.
mcres -u admin -pw password -modify testResource -a attribute attribute_value [ -n node ] |
testGroup의 testResource 리소스의 User속성 값을 administrator로 수정합니다.
mcres -u admin -pw password -modify testResource -a User administrator -n testGroup |
local
testResource 속성 값을 모든 노드들의 속성값에 대하여 서로 다른 값을 입력할 수 있도록 지역화 합니다.
(실제 속성 값 수정은 modify 명령을 통해 수정해 주어야 합니다.)
mcres -u admin -pw password -local -r testResource -a attribute |
global
testResource 의 속성을 모든 노드들의 속성값에 대하여 공통된 값을 입력할 수 있도록 공용화 합니다.
mcres -u admin -pw password -global -r testResource -a attribute [value] |
testResource 의 속성 User를 전체 속성으로 값을 administrator로 설정합니다.
mcres -u admin -pw password -global -r testResource -a User administrator |
online
testNode에 있는 testResource 리소스를 온라인 시킵니다.
mcres -u admin -pw password -online testResource -n testNode |
offline
testNode의 testResource 리소스를 오프라인 시킵니다.
mcres -u admin -pw password -offline testResource -n testNode |
offlineprop
testNode의 testResource 리소스의 자식 리소스를 오프라인 시킵니다.
mcres -u admin -pw password -offlineprop testResource -n testNode |
probe
testNode의 testResource 리소스를 탐색합니다.
mcres -u admin -pw password -probe testResource -n testNode |
clear
testNode의 testResource 리소스의 에러를 제거합니다.
mcres -u admin -pw password -clear testResource [ -n testNode ] |
list
현재 리소스 상태를 출력합니다.
mcres -u admin -pw password -list [resource [ -a attribute]] | [-g group [-a attribute]] |
CLI 사용(mchb 명령)
mchb 명령
핫빗에 관한 명령을 전달합니다. 핫빗 구성 리스트, 핫빗 구성 , 핫빗 수정, 클러스터명 수정, 핫빗 포트 수정 명령을 내릴 수 있습니다.
MCCS 는 설치 시 최초 사용자 계정으로 ID는 'admin' 비밀번호는 'password'인 계정이 생성됩니다.
CLI 명령을 실행 시 ID 와 비밀번호를 입력하지 않으면, 위의 최초 사용자 계정의 ID와 비밀번호로 실행됩니다.
따라서 최초 사용자의 비밀번호 변경 시, 필수적으로 CLI 명령에 ID와 비밀번호를 옵션으로 입력해야 합니다.
Syntax
mchb [-u userid] [-pw password] -options [-c newClustername ] [ -hbport port ] [ -node nodeName] |
Options
옵션 | 설명 |
-h | 도움말을 출력합니다. |
-u | 사용자 ID를 지정합니다. |
-pw | -u 옵션의 사용자 비밀번호를 지정합니다. |
-show | 현재 구성된 핫빗 내용을 보여줍니다. |
-clustermodify | 변경하기 위한 새로운 클러스터 명을 입력합니다. |
-hbport | 변경할 새로운 핫빗 포트를 입력합니다. |
-hbmodify | 핫빗 구성을 변경합니다 |
-newconfig | 최초 핫빗 구성 시 사용합니다. |
Example
show
구성되어 있는 핫빗 정보를 볼 수 있습니다.
mchb -u admin -pw password -show |
clustermodify
testCluster 클러스터를 이름을 newCluster로 변경합니다.
mchb -u admin -pw password -clustermodify -c newCluster |
hbport
핫빗 포트를 12345로 변경합니다.
mchb -u admin -pw password -hbport 12345 |
hbmodify
구성되어 있는 핫빗 라인중에 Primary1 핫빗을 200.200.200.1 과 200.200.200.2 로 변경합니다.
mchb -u admin -pw password -hbmodify -node Active 200.200.200.1,100.100.100.1,10.10.7.71 -node -StandBy 200.200.200.2,100.100.100.2,10.10.7.72 |
newcofig
핫빗을 구성합니다.
클러스터 이름 : MCCS_Cluster
핫빗 포트 : 14321 , 상대방 노드 네트워크 주소 : 10.10.7.72
노드 이름 : Active , StandBy
mchb -u admin -pw password -newcofig -clustername MCCS_Cluster -hbport 14321 -remote 10.10.7.72 -node Active 100.100.100.1,200.200.200.1,10.10.7.71 -node StandBy 100.100.100.2,200.200.200.2,10.10.7.72 |
CLI를 이용한 script (CLI 활용 예)
그룹 CLITestGroup 생성
@echo on @echo ### CLITestGroup 그룹이 없다면 신규 그룹을 생성합니다. set mclog="%MCCS_HOME%\bin\mclog.exe" set mcgroup="%MCCS_HOME%\bin\mcgroup.exe" %mclog% -n 192.168.100.2 -p 4321 -s CLITestGroup -l INFO -m "CLI 테스트 코드를 실행합니다." %mcgroup% -state CLITestGroup if not errorlevel 1 goto end @echo ### CLITestGroup을 생성합니다. %mclog% -n 192.168.100.2 -p 4321 -s CLITestGroup -l INFO -m "CLITestGroup이 존재 하지 않아 그룹을 생성합니다." %mcgroup% -u admin -pw password -add CLITestGroup %mcgroup% -u admin -pw password -modify CLITestGroup -a TargetNodeList Beta,Alpha %mclog% -n 192.168.100.2 -p 4321 -s CLITestGroup -l INFO -m "CLITestGroup을 생성했습니다." :end %mclog% -n 192.168.100.2 -p 4321 -s CLITestGroup -l INFO -m "CLI 테스트 코드를 종료합니다."
그룹 CLITestGroup에 프로세스 CLITestProcess 생성 및 온라인
@echo on @echo ### CLITestProcess를 시작합니다. set mclog="%MCCS_HOME%\bin\mclog.exe" set mcres="%MCCS_HOME%\bin\mcres.exe" %mclog% -n 192.168.100.2 -p 4321 -s CLITestProcess -l INFO -m "CLI 테스트 코드를 실행합니다." @echo ### CLITestProcess가 있는지 검사합니다. %mcres% -u admin -pw password -list CLITestProcess if not errorlevel 3 goto end :cliTestProcessCreat @echo ### CLITestProcess 리소스를 생성한 후에 활성화 시킵니다. %mclog% -n 192.168.100.2 -p 4321 -s CLITestProcess -l INFO -m " CLITestProcess 리소스를 생성하고 온라인 시킵니다." %mcres% -u admin -pw password -add CLITestProcess -t Process -g CLITestGroup %mcres% -u admin -pw password -modify CLITestProcess -a Path c:\wordpad01.exe %mcres% -u admin -pw password -modify CLITestProcess -a InteractWithDesktop true %mcres% -u admin -pw password -enable CLITestProcess %mcres% -u admin -pw password -online CLITestProcess -n Beta :end @echo ### 그룹 상태를 모니터링 합니다. %mclog% -n 192.168.100.2 -p 4321 -s CLITestGroup -l INFO -m "CLI 테스트 코드를 종료합니다." mclog -n 192.168.100.2 -p 4321 -s cli -l ERROR -m "mclog test message"