メインコンテンツまでスキップ

리모트 브라우저 사용 시 502 bad gateway 가 발생하는 현상

일반적으로 rb-app 이 사용하는 port (ex : 30110 ~ 30xxx) 와 통신이 안되는 경우 발생함

예상되는 케이스

가능성이 높은거지 무조건 아래 케이스에 해당하는건 아닙니다

  • rb-app 이 30xxx port를 점유하지 못하는 문제
  • rb-app 이 30xxx port를 점유하기는 했으나, k8s Service 에서 pod와 통신이 불가능한 문제
  • rb-app pod가 Running 상태가 아닌 문제

점검 방법

점검 방법 : rb-app 이 30xxx port를 점유하지 못하는 문제

  1. rb-app pod가 동작중인 host에(별일 없으면 대부분 workerNode일 것) ssh 접속
  2. sudo lsof -iTCP:30100-30199 -sTCP:LISTEN 또는 ss -tuln | grep -E ':(301[0-9][0-9])\b' 으로 현재 사용중인 포트 목록 확인 (단 lsof 사용시 sudo 필수!! sudo 권한 없이 하면 포트 안나옴)
iadmin@dev-kubernetes-worker-5:~$ ss -tuln | grep -E ':(301[0-9][0-9])\b'
tcp LISTEN 0 511 *:30110 *:*
tcp LISTEN 0 511 *:30112 *:*
tcp LISTEN 0 511 *:30113 *:*
  1. 30xxx 포트들이 사용중(LISTEN)인지 확인
  2. 혹시나 해당 포트를 점유하고 있는 프로세스가 rb-app 이 아닐 가능성도 있으니 추가적으로 rb-app 로그파일도 확인하면 더 좋음
  3. rb-app pod에 ssh로 접속
  4. logs 폴더로 이동
  5. rb-svc-*.log 형식의 로그파일 중에 가장 최근 날짜의 파일 열람 (cat을 사용하든 tail을 쓰든 방법은 자유)
nobody@dev-kubernetes-master-2:~/logs$ tail -f rb-svc-2025-08-07.log 
2025-08-07T05:46:14.951Z [info] js-flags : --turbo-fast-api-calls --sparkplug --concurrent-recompilation --turbo-inline-array-builtins --turbo-load-elimination --use-osr
2025-08-07T05:46:16.885Z [info] Server is listening on port 30115
  1. [info] Server is listening on port 30xxx 로그가 찍혀있는지 확인
  2. 만약 already port 와 같이 이미 사용중인 포트라는 로그가 찍혀있으면 rb-app이 아닌 다른 프로세스가 해당 port 를 이미 점유하고 있어서 발생하는 문제, rb-manager configmap 수정으로 포트 범위 변경 필요
  3. [info] Server is listening on port 30xxx 로그도 안보이고 already port 로그도 안보이면 다른 문제가 발생했을 수 있으니 rb-app log 레벨을 debugtrace 등으로 변경 후 로그 재확인 필요

점검 방법 : rb-app 이 30xxx port를 점유하기는 했으나, k8s Service 에서 pod와 통신이 불가능한 문제

rb-svc 가 정상적으로 30xxx port 를 listen 중인데 통신이 안되면 k8s service에서 pod와 통신이 불가능한 문제일 가능성이 있음

  1. rancher 접속
  2. service discovery -> services 페이지로 이동
  3. filter 에 rb-app 으로 검색
  4. rb-app-service-* 이름의 service가 active 상태가 맞는지 확인
  5. rb-app-service-*edit config 또는 edit yaml 을 선택하여 ports 정보들이 정상적인지 확인
  ports:
- port: 80
protocol: TCP
targetPort: 30110
  1. 다 정상인데 접속 안되면 다른 문제니까 추가적인 에러 분석 필요

점검 방법 : rb-app pod가 Running 상태가 아닌 문제

  1. rancher 접속
  2. workload -> pods 페이지 접속
  3. filter에 rb-app 으로 검색
  4. 우측 더보기(점 세개) 버튼 클릭해서 view logs 확인
  5. 로그 분석을 통한 원인 파악 필요