ECS 클러스터에서 레디스와 express 연결할 때 질문이 있습니다!
강사님 안녕하세요!
이미지 관리 풀스택 강의부터 너무 잘 들어서 몽고DB랑 AWS 배포 완벽 가이드까지 너무너무 잘 듣고 있습니다.
AWS 배포 완벽 가이드 - 섹션 10: AWS Elastic Container Service (ECS) 자세히 알아보기!를 듣던 중,
아래와 같이
redis 태스크 정의를 하였습니다.

클러스터 내부에서 redis 서비스를 만들 때,
아래와 같이 서비스 연결을 활성화했습니다.

같은 클러스터 내부에서 express 서비스를 만들 때, 환경변수 설정시 REDIS_URL을 2번 서비스 연결 항목에서 tcp를 redis로 바꾸어서 설정하였습니다.

그런데, cloudWatch로 express 로그를 찍어보니 아래와 같이 redis 연결이 안 되더라구요 ㅠㅠ

그런데, 클러스터 내부 redis 보안 그룹의 인바운드 규칙에 아래와 같이 같은 보안 그룹을 가진 인바운드 트래픽은 6379 포트를 열게 설정했더니 갑자기 문제가 해결되었습니다..


강사님께서 강의를 찍으실 때 클러스터 내부에서 레디스 서비스 생성시 보안 그룹은 따로 설정을 안 해주신 걸로 아는데, 혹시 제가 놓친 부분이라든지 강의 이후에 달라진 게 있을까요??
문제를 당장 해결은 했는데,,, 원인을 모르겠습니다 ㅠㅠ
앞으로도 좋은 강의 많이 내주세요! 감사합니다!
답변 2
0
안녕하세요~ 답변이 늦어서 죄송합니다!같은 ECS 클러스터 안에 있고 service discovery를 해줘도 Security Group 설정을 해줘야 방어벽을 통과하실 수 있습니다! 6379를 오픈하면서 방화벽을 통과가 가능해졌고 그래서 정상 작동하는겁니다.강의에서는 아마 모든 포트를 허용했을거에요. 대신 설정하신것처럼 소스를 sg-188ba163/default로만 해주시면 됩니다. 그러면 같은 보안그룹을 사용하는 서비스들끼리는 서로 요청을 날릴 수 있도록 방화벽이 풀립니다!
0
섹션 8. Cloud Security에서 "방화벽 - Security groups" 강의에서 이 내용을 다루었던 것 같으니 다시 보시면 도움이 될듯합니다!
0
안녕하세요, 인프런 AI 인턴입니다.
클러스터 내에서 레디스 서비스와 Express 서비스 간의 연결 문제는 종종 발생할 수 있습니다. 로그에서 확인한 ‘Error: read ECONNRESET’ 오류는 TCP 연결이 상대방에 의해 갑자기 닫혀 발생한 것으로 보입니다. 이 경우, 클러스터 내부의 보안 그룹 설정을 확인하는 것은 문제 해결에 있어 중요한 접근 방법입니다.
본문에서 언급한 대로, 보안 그룹의 인바운드 규칙에 6379포트를 열어주는 설정을 통해 문제가 해결되었다면, 문제의 원인은 레디스 서비스에 접근하기 위한 네트워크 통신이 제대로 이루어지지 않았음을 의미합니다.
특히 클라우드 환경에서는 보안 그룹 및 네트워크 ACL 같은 네트워크 접근 제어 목록을 통해 서비스 간 통신 규칙을 미세하게 조절할 수 있습니다. 레디스 서비스를 생성할 때 별도의 보안 그룹 설정을 하지 않은 경우, 기본 보안 그룹 설정에 따라 외부 또는 내부 네트워크에서의 접근이 제한되었을 가능성이 높습니다.
결국, 보안 그룹 설정을 통해 해당 문제를 해결할 수 있었던 것은 클러스터 내부에서 실행되는 서비스 간의 네트워크 연결 규칙을 명시적으로 허용함으로써 상호 통신이 가능해졌기 때문입니다.
앞으로도 네트워크 연결 문제를 진단할 때는 서비스가 속한 보안 그룹의 인바운드 및 아웃바운드 규칙을 체크하는 것이 좋습니다. 이는 클라우드 환경에서 서비스의 안정적인 운영을 위한 중요한 사항 중 하나입니다.
강의 내용과 직접적인 연관성은 없지만, 클라우드 환경에서 서비스를 배포하고 운영할 때의 일반적인 팁으로 도움이 되셨기를 바랍니다. 좋은 강의에 대한 칭찬도 감사드립니다. 추가적인 질문이 있으시면 언제든지 문의해 주세요!
39강 배포용 workflow 만들기에서 main 브랜치에 merge 가 자꾸 실패합니다.
0
43
1
도메인 생성이 너무 오래 걸려요
0
43
2
loadbalancer로 vm 연결할때 궁금한 점
0
37
1
typescript 개발 환경 세팅해주기(nodemon) 질문
0
45
1
lightsail 가상서버에서 sudo npm start를 실행했을때 오류 질문드립니다.
0
62
1
ec2로 배포
0
57
1
올려주신 자료 다운로드 후 npm run test 오류
0
77
1
강의 학습시 애플리케이션 질문
0
63
1
네임스페이스
0
120
1
springboot
0
117
2
영상 중복
0
139
1
강의 영상 시청문의
1
168
1
WSL에 설치한 Redis에 연결이 안 됩니다.
0
322
1
실습시 비용 관련 질문드립니다.
0
392
2
secret manager 질문있습니다.
0
122
1
자동 유효성 검사 실패
0
154
1
프론트 백엔드간의 http 요청을 주고 받으려면
0
336
1
aws ecs + fargate 환경에서 aws elasticache 연동 이슈
1
517
1
docker volume
0
214
1
[AWS 배포 완벽가이드] artillery 버전
1
286
1
deploy.yml github action 성공 , 하지만 AWS
0
402
2
ECS ALB설정을 위한 vpc 설정
0
431
2
도커는 OS를 공유하지 않나요?
0
455
1
자바 스프링 개발자입니다.
1
389
1





