비싼 돈을 주고 컴퓨터를 구입했는데,, 쌀도 캐야되고 개발도 하고싶다면 어떻게 해야 할까?
밖에서는 노트북으로만 코딩하고 집에 와서 돌려볼 것인가?
2마리의 토끼를 잡고 싶은 당신에게 내가 했던 WSL로 만드는 딥러닝, LLM 개발 서버 구축 방법과
그의 기본이 되는 여러가지 잡지식을 소개한다.
구축하는 방법만 볼 거면 다른 글을 보는게 훨씬 컴팩트 할 것이라 믿는다.
다만 이 글을 읽으면 다음에 비슷한걸 해야 될 때, 뭘 해야하는지 감을 잡을 수 있게 될 것이다.
우선 중요한 개념부터 짚고 넘어가보자.
식당으로 비유하자면, 숍인숍. 점포 안에 점포가 있는 형태이다.
이해가 쏚쏚되는가?
AI를 하고싶어서 이 글을 읽는 사람의 대부분은 네트워크나 인프라에 별 관심이 없을태니
알기쉽게 말하자면, 당신의 컴퓨터 안에 저장장치를 공유하는 리눅스 컴퓨터가 하나 있는거라고 생각하면 된다.
나는 윈도우에서 개발하고 싶은데, 학교과제는 무리없었는데 WSL 굳이 깔아야 하나요?
넹
일단 코딩을 더 하면 할수록 많은 프로그램들이 리눅스에서 설치가 더 편해진다. 미리 익숙해지는게 낫다.
특히 AI쪽 리서치를 한다면
저러한 생태가 나중에 취업을 하든~ 랩을 가든~ 일반적일 것이다.
그러니 지금부터 리눅스와 친구가 되도록 하고, WSL 설치 가이드는 다른분들이 써준 좋은 글 많으니 한번 보고 오시라.
충분히 최신컴과 윈도우를 쓰고 있다면(Win11 >), 걍 BIOS에서 가상화 키고 스토어 들어가서 우분투 다운받으면 된다.
뭐라는지 모르겠다면 GPT한테 물어봐라. 난 강하게 키운다.
일단 당신이 리눅스 서버를 써본적이 있을지 없을지 모르겠으나, 컴퓨터를 서버로 만들어본적은 없을 것이다.
보통은 없을거라고 생각한다. 우리학교 졸업한 애들 중에도 안해보고 졸업한애 많을껄?
그럼 일단 해야 할 것을 정리해보자
네트워크에 대한 기본은 알아두면 나중에도 도움이 될 태니, 잘 기억해 놓도록 하자
참고로 지금 공유기를 쓴다고 상정하고 글을 작성하고 있다. 공유기가 없다면 눈치껏 공유기를 사용하는 부분을 제거하자
외부 네트워크에서 어떻게 서버를 검색할 수 있을까? 라는 고민은
브라우저에 네이버(https://naver.com)를 칠 때를 생각해 보면 된다.
그 행동이 외부 네트워크에서 네이버의 서버로 접근하는 행동이니까.
근데 ip주소라고 어디서 들어봤는데.. 그걸 알아야 컴퓨터에 접속을 하거나 통신 할 수 있는거 아니었나?
맞다.
근데 www.naver.com라고 쳤을 때, 어떻게 우리 브라우저는 네이버 서버로 연결을 해주는 걸까?
DNS (Domain Name Server) 덕분이다.
누군가(네이버, 구글, 아마존 등등)가 DNS라는 서버를 전 세계에 구축해놨다.
당신이 자연어로 된 URL(사실 URI)을 브라우저에 입력하면, 브라우저는 DNS 서버로 해당 주소를 보낸다.
DNS 서버는 짱 큰 KEY-Value Dictionary라고 생각하면 된다.
Key에 URL 주소가 들어가고, Value에 IP Address가 들어간다.
그래서 자기가 해당 데이터를 들고 있으면 IP 주소를 반환하고, 없으면 좀 더 큰 DNS한테 요청을 보내서 가져온다.
DNS는 (naver.com -> 123.123.123.123)을 해주는 딕셔너리다!
이 설명을 왜 하느냐 하면
DNS 서비스는 보통 유료이기 때문에 ipTime 공유기를 사용한다면 돈이 굳는거나 다름없다!
와이파이나 케이블로 연결된 상태에서 ipTime 공유기 콘솔 (192.168.0.1)로 접속해서 로그인하면
이런 창이 뜬다. 한번도 설정한 적 없다면 기본값인 (admin/admin)으로 접속할 수 있을 것이다.
기본값 그대로 사용하고 있다면 빨리 비밀번호를 바꾸는걸 추천
여기서 관리도구 -> 특수 기능 -> DDNS 설정으로 가서 시키는걸 다 하면
이렇게 될 것이다. 이제 저 호스트 이름
이라는 주소를 브라우저에 입력하거나 터미널에서 접근하면
해당 프로그램이 ipTime DNS에 요청을 보내서 당신의 ip주소를 받아온다.
외부 네트워크에서 당신의 집 ip로 요청을 보낼 수 있게 되었다!
1) 엥 그냥 집 컴퓨터 ip 주소 기억해놨다가 접속하면 되는거 아니에요? 왜 이런거 해야됨?
2) 전 공유기 없는데 걍 컴퓨터 ip 주소 쓰면 안되나요?
그러면 참 편할 탠데, 집 컴퓨터 ip 주소는 어느 주기를 두고 바뀐다.
ip 주소라는게 옛날엔 12자리 숫자면 넉넉하지~ 라고 생각하고 만들었는데
현대로 오면서 너무 컴퓨터나 스마트폰이 많아지다 보니 이제는 넉넉하지 않게 되어버렸다.
그러다보니 국내의 통신사들은 이 "자원"을 효율적으로 관리해야 될 필요성이 생겼고
그에 따라 만들어진 것이 유동 ip이다. 지금 당신 컴퓨터가 ip 안쓰고 있으면 뺏어가서 다른 필요한 애한테 주는 것이다.
예시 이미지를 보면 알겠지만, 보통은 고정 ip가 좀 더 비싸고, 기업용 인터넷 망이 아니라 일반 소비자용 망은
따로 가입한게 아니라면 99.9% 유동 ip를 쓰고 있을 것이다.
근데 좀 호들갑인것도 있는게 그렇게 자주 바뀌지는 않는다. 안바뀔땐 반년동안 안바뀌기도 하니
그래도 개발 하다보면 내가 일하는 중에 ip가 바뀐다던지.. 잠시 연결 끊었는데 바뀌어있다던지 같은 일들을 경험하게 된다.
그래서 왠만하면 어렵지도 않으니 하는 걸 추천하는거고
본인 공유기가 ipTime이 아닌 경우에는 그냥 ip 외워서 쓰는걸 추천한다. 그거 해결법 알아서 할 정도면 이거 보지도 않을듯