VS CodeとCloud Codeを使って、GKE上で動かして見る
Google Cloud Next ’19 に参加してきました。
その中でVisual Studio Codeの拡張機能で使用できるCloud Codeの話題があったので、早速使ってみました。
Cloud Codeとは
IDEからクラスタの管理やクラウドへのデプロイ、デバッグを行うことができます。
cloud.google.com
今までKubernetesを使った開発を行う場合、以下のデメリットがありました。
- Painful Development Cycle
変更するたびに繰り返し同じ作業が必要
- Context Switch
DE使ったり、ターミナルを使ったり、ブラウザ使ったりとコンテキストスイッチによる生産性の低下
- High Learning Cost
Kubernetes関連ツールをすべて覚えるのは困難
情報を把握し、どのツールを使うのかの判断が大変
チームに参画した人へのサポートが大変
そこでCloud Codeを利用することで、一つのIDEで統合的かつ簡単に管理することができます。
これにより開発者はよりコードに集中する環境ができるようになります。
Cloud Codeは
の拡張機能として使うことができます。
前置きはこれぐらいにして、早速Hello Worldを表示するまでやってみます。
Cloud Codeを動かす
今回はVisual Studio Codeで、Cloud Codeを動かします。
Hello Worldを表示するページを出すだけのプロジェクトを、新規に作成します。
新規アプリケーション
VS Codeで、⌘⇧Pでコマンドパレットを開きます。
「cloud code: new」と入力し、「Cloud Code: New Application」を選択し、新しいアプリケーションを作成します。
hello-world用のプロジェクトが言語ごとにあると思いますが、今回はGo言語を指定します。
プロジェクト名を入力して、作成します。
作成に成功すると、hello world用のテンプレートが作成されます。
新規クラスタ
GKEクラスタを新規に作成します。
VS Codeで、⌘⇧Pでコマンドパレットを開きます。
「cloud code create」と入力すると、「Cloud Code: Create GKE Cluster」を選択し、新しいクラスタを作成します。
そうするとクラスタを作成するための、設定画面が開きます。
各項目を入力して、「Create Cluster」ボタンからクラスタを作成してください。
※ Compute Engine APIを有効にしないと、設定ができません。
クラスタの作成が成功すると、「GOOGLE KUBERNATES ENGINE EXPLORER」のなかにクラスタ情報が表示されます。
クラスタを右クリックして、「Set as Active Cluster」でクラスタを有効化しましょう。
デプロイ
GCP上でビルドして、imageファイルを作成し、クラスタ上でプロジェクトを動かしましょう。
VS Codeで、⌘⇧Pでコマンドパレットを開きます。
「cloud code deploy」と入力すると、
- Deploy
- Continuous Deploy
があります。
前者は一度のみのデプロイ、
後者は初回デプロイした後、変更を検知し、自動でデプロイします。
今回はContinuous Deployします。
続いてビルド方法は
- default
- cloud build
があります。
defaultは、ローカル環境でビルドします。
cloudbuildは、Cloud Build環境でビルドをします。
今回はcloudbuildを選択します。
※Cloud Build APIを有効にしないと、ビルド権限がないとエラーが返ってきます。
続いてイメージの登録先を指定すると、デプロイが開始されます。
イメージの確認
Container Registryのページから、イメージファイルが作成されていることが、確認できます。
まとめ
Cloud Codeがなかったら、たったこれだけのことでも画面をあっちこっち切り替えて、設定する必要があります。
これをCloud Codeを使用することで、インフラ出身でない自分でも簡単に設定することができました。
まだまだ細かい設定ができそうなので、引き続き使って行きたいと思います。