Google Compute Engine을 처음 사용할 때 겪을 수 있는 삽질

나는 Google Cloud Platform을 사용중이다.

AWS도 좋기는 하지만 우리회사는 Google Cloud Platform VC팀으로부터 막대한 인프라를 지원받고 있기 때문에 나도 덩달아 Google Cloud Platform을 사용하게 되었다. 그 과정에서 나같이 개발에 무지한(?) 사람이 Compute Engine을 사용할 때 겪게되는 삽질에 대해서 이야기 하고자 한다. 부디, 나같이 온갖 삽질을 통해 시간낭비를 하는 사람이 발생하지 않기를 바란다.

Putty로는 SSH접속이 잘 되나 SFTP로는 접속이 되지 않는 경우

기본적으로 Compute Engine은 VM에 SSH 접속할 때 SSH key로 인증하여 접속한다.(AWS도 동일하다.) 나는 Puttygen을 통해 key생성하여 SSH와 SFTP 접속에 사용한다. 자세한 사용방법은 아래 url을 참고하기 바란다.

http://superuser.com/questions/837996/connecting-to-google-compute-engine-vm-instances

그런데 나는 아주 이상한 경험을 하게 되었다. 생성한 key로 putty에서 SSH 접속은 되는데 Filezila에서 SFTP접속이 되지 않는 것이다. SFTP접속을 하면 아래와 같은 메세지를 받게 된다.

Error: Disconnected: No supported authentication methods available (server sent: publickey) Error: Could not connect to server

여기에서부터 나의 삽질을 시작되었다. 한 3시간 삽질하다가 아주 황당하게 원인을 찾게되었다.(구글에서 검색해도 안 나옴) Key(.ppk) 파일의 위치를 다른 폴더로 옮기니까 접속이 되는 것이다. 생각해보니 Key 파일이 저장되어 있는 내 컴퓨터의 경로에 한글폴더가 있었다.

D:\Google 클라우드\vonzone\Dev

Putty Client에서는 key파일이 있는 경로에 한글이 있더라도 정상적으로 작동을 하는데 Filezila의 경우 key파일의 경로에 한글이 포함되어 있으면 정상적으로 작동을 하지 않는 것이다. 개발관련 파일들이 저장되는 폴더에 한글이 포함되어 있다는 그 자체가 굉장히 부끄러운 일이지만 사실 내가 아는 개발자도 나와 같은 경험을 하고 있었기 때문에 이런 기본적인 실수는 나만의 문제는 아닌 것 같다. ㅋㅋㅋ 아무튼 결론은 이렇다.

여러분의 컴퓨터에 SSH key 파일을 저장할 때 모든 폴더명은 영어로 해야한다.

ex) D:\GoogleCloud\vonzone\Dev

 

 

Mysql서버로 외부에서 Client로 접속이 안 되는 경우

일반적으로 아래와 같이 설정을 하면 대부분 mysql서버에 외부에서 HeidiSQL같은 client로 접속을 할 수 있다.(Ubuntu 기준)

https://opentutorials.org/module/1175/7779

그런데 이상하게 접속이 안되는 것이다. 포트도 분명 다 열었는데 말이다. 그래서 또 삽질을 2시간 하다가 Cloud Platform Console 페이지에서 원인을 찾았다. VM을 생성하면 아래와 같이 기본적으로 Firewall rule들이 자동으로 적용되는데 아래 표시한 3306포트의 Target tags에 특정 tag들이 적용되어 있었던 것이다. 그 tag들을 삭제하니까 외부에서도 접속을 할 수 있었다. Target tags에 적용되어 있는 tag들을 삭제하면 아래와 같이 Apply to all targets라고 나오는데 이렇게 설정을 해야 어디에서든지 mysql 서버에 접속을 할 수 있다.

compute engine default firewall rules

 

사실 너무 당연한 사항들이라 블로그에 포스팅하기도 부끄러운 내용이지만 단언컨대, 분명 나같은 사람이 어딘가에는 존재할 것이다. 날 닮은(?) 그분들에게 큰 도움이 되길 바란다.

 

 

0 Shares:
답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다

You May Also Like
Read More

내 리더가 회사를 떠났다.

어떤 한 사람이 있다. 그 사람을 보면서 나는 이런 생각을 했다. "저 분의 인성과 역량을 닮고 싶다. 내 아들이 커서 어른이 된다면 나의 모습보다는 저 분의 모습을 닮았으면 좋겠다." 그 분은 내가 현재 재직중인 회사의 CTO이자 나의 리더였다. 아이러니하게도 그 분과 나는 전혀 다른 성격의 소유자이고 업무 스타일도 많이 달랐다. 하지만 난 정말로 그분을 닮고 싶었다.
Read More

주니어 기획자의 성장과 커리어에 대한 조언

도메인에 대한 이해가 높으면 문제를 제대로 정의할 수 있고 문제를 제대로 정의하면 합리적인 가설을 세워서 효과적인 데이터 분석을 할 수 있다. 데이터 분석을 통해 새로운 도메인 지식이 쌓인다. 이 과정을 반복하면, 기획역량은 자연스럽게 성장한다.
2021년 회고
Read More

2021년 회고(Product Owner, 가족, 성장)

회사에는 동료와 일이 있다. 가정에는 아내와 애들, 육아업무가 있다. 그러나 그 어디에도 나는 없었다. 원래 나 본연의 내가 존재할 수 있는 시간과 장소는 없었다. 단지, 의무로서의 나만 존재했다. 언뜻 생각해보면 참 서글프기도 하지만 잘 생각해보면 꼭 그렇지도 않다. 현재 나의 상황, 역할, 가족, 일.....그 모든 것이 결국은 나를 구성한다. 원래 나 본연의 나는 처음부터 없는 것인지도 모르겠다.
Read More

PO, PM들의 존재이유를 알려주는 책, 인스파이어드

일반적으로 제품개발(Product 개발)이라고 하면 기획/디자인/개발 과정을 거쳐 Product이 완성되는 과정을 의미한다. 그런데 인스파이어드 책의 저자 마티 케이건은 제품을 발견하는 과정과 제품을 시장에 전달하는 과정도 제품개발에 속한 과정이라고 정의한다. 그런 의미로 볼 때 Product을 개발한다는 것은 영업/마케팅 조직의 비지니스 과정과 분리되어 있지 않다는 것을 의미한다.
Read More

FE 개발자와 SEO 적용하기

SEO 작업을 통해 검색결과 첫 페이지의 상위 5위 안에 드는 것이 중요하다. 이번 포스팅에서는 내가 담당하고 있는 Product의 FE 개발자와 SEO를 적용하면서 알게된 사항들을 공유하고자 한다.