Ask Your Question
0

패키징 시 MANIFEST 설정 문의

asked 2018-11-19 18:14:28 +0900

ksh gravatar image

동일 한 서버를 n개를 띄울 시 port 설정에 관련 하여 질문 드립니다.

session, api, rpc 에서 사용되는 port 번호를 설정 할때 n개의 manifest 를 만들어 복사 하여 사용하고 있습니다.

manifest를 복사하여 덮어 씌우지 않고, manifest 의 port 번호와 같은 설정을 변경 할 수 있는 방법이 있나요??

edit retag flag offensive close merge delete

2 answers

Sort by » oldest newest most voted
0

answered 2018-11-20 20:52:01 +0900

Jinuk gravatar image

external_ip_resolversnat:... 부분을 쓸 때 IP 주소만 지정한 경우 -- 예를 들어 "external_ip_resolvers": "nat:147.46.123.45" 처럼 지정한 경우 -- 포트는 tcp_protobuf_... 등에서 지정한 값을 외부에 노출된 값으로 인식하고 사용합니다.

edit flag offensive delete link more
0

answered 2018-11-19 18:20:43 +0900

Seunghyun gravatar image

안녕하세요. 아이펀팩토리입니다.

서비스가 아니라 생성되는 런처 스크립트를 이용하여 실행하신다면 "{ProjectName}-local -api_service_port=1234" 와 같이 실행 인자로도 지정하실 수 있습니다.

감사합니다.

edit flag offensive delete link more

Comments

그럼 실행 될 때 MANIFEST의 포트나 ip 정보를 얻어와 사용 할 수 있는 방법도 있나요?

ksh gravatar imageksh ( 2018-11-19 18:58:00 +0900 )edit

MANIFEST 의 인자가 Json Object 또는 Array 가 아닌 Primitvie 타입(bool, int, double 등) 인 경우 아래와 같이 읽을 수 있습니다.

DECLARE_uint64(api_service_port);

void Example() {
  LOG(INFO) << "ApiService Port=" << FLAGS_api_service_port;
}
Seunghyun gravatar imageSeunghyun ( 2018-11-20 10:49:25 +0900 )edit

manifest.json SessionService : tcp_protobuf_port 를 8012 로 셋팅하고 HardwareInfo : external_ip_resolvers 를 tcp+pbuf=8012 로 입력해야만 Redirect 가 사용가능한가요? 2군데에서 셋팅하기 번거로운데 한곳에 셋팅한 값을 참조하여 셋팅하게 할 수는 없나요?

ksh gravatar imageksh ( 2018-11-20 15:49:51 +0900 )edit

후자는 NAT 환경에서만 필요한 설정입니다. external_ip_resolvers: aws,nic:eth0,nat:192.0.2.113:tcp+pbuf=8012:http+json=8018 에서 아래와 같은 방법으로 할 수 있습니다.

  • AWS인 경우 aws만 지정
  • nic:eth0 혹은 사용할 외부 인터페이스로 지정. (해당 인터페이스가 public IP를 받는 경우에만 유효)
  • nat:{IP}: {IP} 값으로 실제 public IP 지정.
Jinuk gravatar imageJinuk ( 2018-11-20 15:52:44 +0900 )edit

external_ip_resolvers: aws,nic:eth0,nat:192.0.2.113:tcp+pbuf=8012:http+json=8018 이 부분의 tcp+pbuf=8012 포트와 SessionService : tcp_protobuf_port 이 곳에 설정된 두개의 포트를 하나의 설정만 으로 통일 해서 사용 할수 없나요? 만약 9090 이란 포트를 쓰고 싶을 때 두 곳 포트 모두 변경해서 사용 해야 되나요? GetPeersWithTag() 함수를 사용할때 두개의 포트가 일치해야 합니다.

ksh gravatar imageksh ( 2018-11-20 18:50:09 +0900 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

Stats

Asked: 2018-11-19 18:14:28 +0900

Seen: 19 times

Last updated: Nov 19