ssh 2

Autossh로 SSH 연결 유지하기

이전 글에서 ssh 포트 포워딩을 통해 웹 서버와 모델 추론 서버간의 연결을 구축한 내용을 작성했었다. SSH 포트 포워딩으로 컨테이너에서 실행되는 서버를 외부와 연결하기 현재 진행중인 법률 상담 챗봇 프로젝트에서 서버를 구성하는데 가장 큰 문제는 제공받은 V100 서버가 컨테이너에서 실행된다는 점이었다. ssh 연결을 담당하는 22번 포트만 외부에 열려있었기 있 sangwonyoon.tistory.com 그런데 만약 이 상황에서 V100 서버와 router가 위치한 서버간의 ssh 연결이 끊어진다면, 아무런 알림도 받지 못한 채 서비스가 먹통이 될 것이다. 따라서 ssh 연결이 끊어지면 자동으로 다시 연결하는 기능이 필요했고, 여러 방법을 시도한 결과 Autossh를 사용하여 문제를 해결할 수 있었다...

Backend/기타 2023.07.17

SSH 포트 포워딩

서버에서 FastAPI로 구현한 모델 추론 API를 테스트하다가 신기한 현상을 겪었다. 원격 서버와 로컬은 VSCode의 Remote - SSH라는 익스텐션을 활용해 ssh 연결을 한 상태였다. 이 상태에서 평범하게 uvicorn을 통해 8000번 포트를 열어 API 서버를 실행시켰다. 그런데 로컬 환경의 8000번 포트에 접근을 하면 원격 서버의 8000번 포트로 접근이 되는 것이었다! 분명 원격 서버에서 API 서버를 실행시켰는데 로컬의 8000번 포트에서 이 API 서버에 접근할 수 있는 이 상황이 이해가 되지 않아 주변 지인들에게 도움을 구한 끝에 원인을 찾을 수 있었다. 바로 VSCode의 Remote - SSH 익스텐션이 ssh 포트 포워딩(ssh 터널링이라고도 불린다.)을 지원해주기 때문이었..

Backend/기타 2023.07.11