컨트롤러를 설치할쪽의 agent만 실행이 되네요

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

컨트롤러를 설치할쪽의 agent만 실행이 되네요

tainow
현재 controller를 설치한 쪽에 agent를 함께 설치하였고
외부 서버에 2개의 agent를 설치 하였습니다.

그런데 controller에서
agent 를 외부로 맞추고 테스트 하면 에러가 나고
controller 자체로 agent를 맞추면 에러가 나지 않네요.

외부 agent shell에서 출력된 에러입니다.

2013-08-27 08:13:51,240 INFO  agent controller: received a start agent message
2013-08-27 08:13:51,242 INFO  agent controller: starting agent... for test_83
2013-08-27 08:13:51,243 INFO  net.grinder.AgentDaemon: Agent Daemon Agent conntected to port : 12000 is started.
2013-08-27 08:13:51,243 INFO  agent controller: agent is started. waiting for agent controller signal
2013-08-27 08:13:51,244 INFO  net.grinder.AgentDaemon: The Grinder 3.9.1
2013-08-27 08:14:54,371 ERROR net.grinder.AgentDaemon: Failed to connect to '/172.27.210.111:12000'
2013-08-27 08:14:54,373 INFO  net.grinder.AgentDaemon: finished
2013-08-27 08:14:54,374 INFO  agent controller: send log for test_83

여기서 172.27.210.111는 controller가 설치된 서버의
사설(내부)아이피고, 공인 아이피는 아닙니다. (이상하게 controller 쪽 Agent Management 에서도 공인아이피로는 출력이 안되네요)


혹시 몰라
외부 agent의 agent.conf 파일 적어봅니다.

#start.mode=monitor
#monitor.listen.port=13243


start.mode=agent
agent.console.ip=controller가 설치된 곳의 공인아이피
#agent.console.port=16001
#agent.region=
#agent.hostid=
#agent.servermode=true
# set following false if you want to use more than 1G Xmx memory per a agent process.
#agent.useXmxLimit=true
#agent.same.console.host=true
# please uncomment the following option if you want to send all logs to the controller.
#agent.send.all.logs=true


어떻게 해야 좋을까요.. ㅜ.ㅜ
Reply | Threaded
Open this post in threaded view
|

RE: 컨트롤러를 설치할쪽의 agent만 실행이 되네요

junoyoon
Administrator

에이전트가 3.2 대 버젼이 아닌 것 같습니다. 맞나요?

 

Reply | Threaded
Open this post in threaded view
|

Re: 컨트롤러를 설치할쪽의 agent만 실행이 되네요

junoyoon
Administrator
In reply to this post by tainow
해당 문제는 과거 ngrinder 3.1.X 대 에이전트에서 발견된 문제 입니다.

ngrinder 컨트롤러는 agent 가 연결 된 다음에 테스트가 실행되는 시점에 agent 에게 준비된 콘솔중 하나로 재 접근하라고 명령을 내립니다. 이때 controller 에 IP가 여러개 있으면, 그중 선정된 아이피로 접근하라고 에이전트에 연결 요청을 내립니다.

이때 컨트롤러가 가진 IP중 외부에서 접근 불가능한 IP로 접근하도록 에이전트에게 요청하면, 에이전트는 그대로 그 아이피로 접근하려고 시도하다가 에러를 발생하는 케이스가 있었습니다.

ngrinder 3.2 대에는 재 접속시에도 초기에 연결한 IP 대를 사용하여 그대로 재접속합니다. 따라서 해당 문제가 발생하지 않을터이니 업그레이드 부탁드립니다.
Reply | Threaded
Open this post in threaded view
|

Re: 컨트롤러를 설치할쪽의 agent만 실행이 되네요

tainow
음..

테스트를 계속했는데요.
controller 에서 agent를 잡는 아이피가 공인이 아닌 사설로 계속 잡아서
결과가 controller쪽으로 return이 안되는거 같더라구요.

버전은 3.2.1 입니다.

그래서 저의 경우엔
controller와 같은 스위치를 사용하는 virtual machine에 모든 agent를 세팅하고
agent.conf에서 controller IP를 사설아이피로 세팅하였습니다. 그러니 되네요.

신경써주셔서 진심 감사드립니다. ^^
Reply | Threaded
Open this post in threaded view
|

Re: 컨트롤러를 설치할쪽의 agent만 실행이 되네요

junoyoon
Administrator
이 경우 system.conf 파일에
ngrinder.controller.ipaddress=공인아이피 를 설정하신후 리부팅 하신 다음..
모든 agent 에 공인 아이피에 접속하도록 처리하시면 됩니다.