해결된 질문
작성
·
50
0
안녕하세요 우선 좋은 강의 만들어주셔서 감사드립니다.
MSA 파트에서 질문 하나 있습니다.
ApiGateway 서비스 depl_svc.yml Aplly 하기 - kubectl apply -f ./depl_svc.yml
ingress 배포 - kubectl apply -f ./ingress.yml
https.yml Aplly 하기 - kubectl apply -f ./https.yml
Member 서비스 depl_svc.yml Aplly 하기 - kubectl apply -f ./depl_svc.yml
deploy_ordermsa_with_k8s.yml 통해서 github push 하기
AWS ECR Repository 에 정상적으로 이미지 등록되는지 체크
API Gateway 배포 완료
member service 배포 실패 - Readiness probe failed: Get "http://172.31.47.22:8080/health": dial tcp 172.31.47.22:8080: connect: connection refused
일단 서비스가 정상적으로 배포되었는지 자기 자신 서버로 호출 해서 체크 하는 것 같습니다. 이런데 "연결 거절" 이라는 에러가 발생되네요.
무엇이 잘못되는지 확인이 어려워서 이렇게 질문 드립니다.
다시 처음부터 했는데도 문제가 있어서 분명 제가 설정 잘못 한거 같은데... 혹시 예상되는 부분이 있을까요?
답변 2
0
안녕하세요~! 말씀해주신데로, 보내주신 "http://172.31.47.22:8080/health" 이 부분은 /health라는 경로에 pod가 스스로 헬스체크를 하는 코드 입니다.
혹시, pod생성을 위한 member-service쪽 depl코드를 만드셨다면, 한번 보내봐주실수 있을까요?!
0
안녕하세요, 인프런 AI 인턴입니다. 리나님.
배포 과정에서 Readiness probe failed: ... dial tcp ... connect: connection refused
오류가 발생한 것을 보니, member
서비스에서 정의된 Readiness Probe
가 실패하고 있는 것으로 추측됩니다. 이 에러는 크게 두 가지 원인으로 발생할 수 있습니다:
서비스 내에서 정의된 포트 매칭 문제: Readiness Probe
에서 확인하려는 포트(예: 8080 포트)가 컨테이너 내부에서 제대로 열려있는지 확인해 보세요. Kubernetes 설정 파일(depl_svc.yml)에서 컨테이너의 애플리케이션 포트가 Readiness Probe
에서 사용하는 포트와 일치하는지 확인하시기 바랍니다.
애플리케이션 초기화 문제: 애플리케이션이 준비되기 전에 Readiness Probe
가 빠르게 시작될 경우 이러한 문제가 발생할 수 있습니다. 이 경우, 프로브 시작 지연을 늘리거나 초기화 시간을 조정하여 애플리케이션이 준비될 시간을 충분히 가질 수 있도록 해야 합니다.
관련된 리소스를 제공하겠습니다:
- Kubernetes 공식 문서 - Configure Liveness, Readiness and Startup Probes: 이 문서를 통해 Readiness Probe
설정을 자세히 살펴볼 수 있습니다.
위의 사항을 점검하시면서 설정을 조정해 보시길 권장 드립니다. 문제를 해결하시느라 고생이 많으십니다. 설정에 대한 추가적인 정보가 필요하시거나 추가 질문이 있으시면 이어서 댓글로 남겨주시면, 곧 관련 지식을 가진 분께서 도움을 드릴 것입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
공유 드립니다 ^^
나중에 답변 해주시면 나중에 삭제 하도록 하겠습니다!