Google Compute Engine에서 생성한 인스턴스의 IP 전달 설정 바꾸는 법
Google Compute Engine의 인스턴스를 한번 생성하면 GCP 콘솔 화면에서는 바꿀 수 없는 설정들이 있다. 그 중 하나가 "IP 전달" 설정이다.
이번 글에서는 이미 생성해버린 인스턴스의 IP 전달 설정을 변경 할 수 있는 법에 대해서 간단하게 정리해 본다.
설정 파일 다운로드
우선 gcloud sdk를 사용하여 설정을 바꾸고 싶은 인스턴스의 설정 파일을 다운로드 한다.
gcloud compute instances export <인스턴스명> --project <프로젝트명> --zone <인스턴스zone> --destination=config.txt
이 커맨드를 실행하면 커맨드를 실행한 디렉토리에 config.txt
파일이 다운로드 된다.
설정 변경
다운로드 받은 config.txt
파일을 열고 canIpForward:
값을 원하는 값으로 변경해주면 된다. 나 같은 경우는 IP 전달을 사용하게 바꾸고 싶었기 때문에 canIpFoward: true
로 변경해주었다.
설정 파일 업로드
아래 커맨드를 실행하여 설정 파일을 업로드 하여 적용해준다.
gcloud compute instances update-from-file <인스턴스명> --project <프로젝트명> --zone <인스턴스zone> --source=config.txt --most-disruptive-allowed-action=REFRESH
커맨드 실행시에 Fingerprint mismatch 에러가 나는 경우가 있다. 그런 경우에는 우선 아래 커맨드를 실행하여 fingerprint 값을 구하자.
gcloud compute instances describe <인스턴스명> --zone <인스턴스zone> --format='get(fingerprint)'
fingerprint 값을 복사한 후, config.txt
파일을 열고 fingerprint:
값을 변경해주고 저장. 그리고 다시 한번 설정 파일 업로드를 실행하면 된다.
이런 식으로 GCP콘솔에서 변경하지 못하는 인스턴스 설정 값을 변경 할 수 있다. 예전에는 바꾸고 싶으면 인스턴스를 새로 만드는 법 밖에 없었던 모양이지만, 이런 식으로 변경해주면 기존 인스턴스를 그대로 유지하면서 사용할 수 있다. 그냥 GCP콘솔에서도 가능하게 해주면 좋을텐데.