개발자
문제는 이렇습니다. prodRedisUrl = redis://:password@ec2프라이빗ip:6379/0로 url을 보냅니다. 그리고 ec2 내 redis bind를 ec2 프라이빗 Ip로 설정하고, 리스닝 하고 있는 상태입니다. 그러면 정상적이라면, 서버가 배포 됐을 때 prodRedisUrl로 redis와의 연결이 성공적으로 연결 됩니다. 근데 어이없는 문제가 발생합니다. 요청하지도 않은 localhost로 redis서버에 연결하려고 하는 것입니다. 그래서 시나리오를 세워서 반대로 테스트를 해봤습니다 !!!! prodRedisUrl = redis://:password@127.0.0.1:6379/0로 하고, 일부러 로컬호스트를 보내 봤습니다. 물론 ec2 내 redis.conf의 bind를 수정 했습니다. bind 127.0.0.1 테스트 해봤더니 127.0.0.1로 접속은 완료 됐지만 이제는 반대로 ec2 프라이빗 Ip로 연결을 요청해서 실패하네요 ㅋㅋㅋㅋㅋ ---- === 도대체 요청하지도 않은 ec2에서 그리고 알지도 못하는 프라이빗 ip로 redis서버에 접속하려는걸까요?????? ----------------------------------------- 즉, 정리하자면 요청하지도 않은 host로 Redis서버에 접속한다 !! 입니다. 로컬에서 테스트 할 때는 아무런 문제 없이 잘 작동하더니만 ec2에 배포하고 연결하려고 하니까 이 말썽입니다... 도저히 이해가 되지도 않고 원인 파악도 힘드네요,, 고수님들의 도움이 정말 필요합니다.. 부탁드립니다 ㅠㅠ

답변 1
질문이 좀 이해가 가지않아 답변이 안달리는거 같은데 url을 보낸다라는 표현부터 이해가잘가지않아서 답변을 드리기가 좀 어렵네요.. 하시고자하는게 무엇인지도 잘모르겠고 ec2서버에 레디스를 실행시켜 레디스 서버로 만들어서 외부에서 접근을 하시러는건지 in-memory로써 레디스를 같은 ec2에서 실행시키려고 하시는건지 모르겠습니다. 전자의 경우라면 그냥 레디스 실행시키고 레디스의 주소가 ec2의 public dns name이 호스트가 될것이며 후자의 경우에는 localhost가 redis의 호스트가 될겁니다. private ip?가 여기서 필요한게맞나싶네요. 조금 더 정돈되게 컨텍스트를 알려주시면 더 정확하게 도와드릴수있을거같아요.
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!