VSCodeからGoogle Compute Engineを操作する方法

ローカルPCのVSCodeで、Google Compute Engine(GCE)のファイルを作成・編集する方法についてまとめました。
操作自体は比較的カンタンなのですが、SSH接続や、秘密鍵・公開鍵など、初心者には馴染みのない概念が出てくるので、自分の備忘録も兼ねて記事にしました。
事前準備
ローカルPCのVSCodeからGCEへの接続設定を行う前に、以下の準備を済ませておいて下さい。
- Google Cloud Platform(GCP)に登録する
- GCEのVMインスタンスを作成する
- この記事では、ubuntuブートディスクのインスタンスを使用
- ローカルPCにVSCodeをインストールする
- この記事では、WindowsのローカルPCを使用
VSCodeからGoogle Compute Engineを操作する
VSCodeからGCEへの接続は、以下の4ステップで行います。
- 【GCE】外部静的アドレスの予約
- 【ローカルPC】gcloud CLI のインストール
- 【ローカルPC】SSH接続用の設定ファイル、秘密鍵・公開鍵の作成
- 【ローカルPC】VSCodeでの接続操作
順に解説していきます。
1. 【GCE】外部静的アドレスの予約
まずは、GCE側の設定で、インスタンスの外部静的アドレスを予約します。
GCEインスタンスを作成すると、デフォルトでは「エフェメラル」というタイプの外部IPアドレスが割り当てられます。エフェメラルというのは、「一時的」という意味で、インスタンスを起動するためにIPアドレスが変わってしまいます。
インスタンスが再起動するたびに、SSH接続の設定を変更するのは非常に面倒なので、常に不変の「静的IPアドレス」を設定したいと思います。
外部静的IPアドレスの設定は、インスタンスの編集画面から行うことができます。
インスタンスの編集画面に入り、[ネットワーキング]の項目の、[ネットワークインターフェース]の下矢印をクリックします。

[外部IPv4アドレス]の項目がエフェメラルになっているので、下矢印をクリックし、「IPアドレスを作成」を選択します。

すると、フォームが立ち上がるので、名前を入力して「予約」をクリックします。

すると、静的IPアドレスがインスタンスに割り当てられました!

静的IPアドレスの予約には料金がかかります
2. 【ローカルPC】gcloud CLI のインストール
続いて、ローカルPC側の設定に移りたいと思います。
SSH接続用の設定ファイルとキーを生成するために、 コマンドを使用するので、ローカルPCにgcloud CLIをインストールします。
基本的に、上記リンクの手順に沿って進めれば、問題なくインストールできるかと思うので、具体的な手順については割愛します。
3. 【ローカルPC】SSH接続用の設定ファイル、秘密鍵・公開鍵の作成
gcloud CLIのインストールが完了したら、SSH接続に用いる設定ファイルと、キーを生成します。
まずは、SSH接続用の設定ファイルとキーを格納する「.ssh」ディレクトリを作成します。
続いて、以下のコマンドを実行します。
すると、「.ssh」ディレクトリに、「config」ファイルが生成されます。
これだけで、SSH接続の準備は完了です。便利ですね。
それでは、VSCodeを使ってインスタンスに接続してみましょう。
4. 【ローカルPC】VSCodeでの接続操作
SSH接続は、VSCodeの「Remote Development」という拡張機能を用いて行います。
以下の拡張機能をインストールしてください。

VSCodeを開いている状態で、F1キーを押すと検索窓が表示されます。検索窓に と打ち込み、出てきた検索結果をクリックします。

すると下記のように、Host名が一覧となって表示されるので、接続したいHostを選択します。

すると、新しいウィンドウでターミナルが立ち上がり、左下にSSH接続しているHost名が表示されていれば、接続は成功です!

あとは、通常通り、ファイルを作成したり編集したりすることができます🎉