GCEインスタンスを asia-east1-a から us-central1-a に移動する方法

Google Cloud Platformのお話です。画像準備するのが面倒で書きかけになってたけどもうやる気ない感じなので書きかけのままここに置いておきますね。

Google’s Cloud Platform improves its free tier and adds always-free compute and storage services

f1-microが無料で使えるようになりました。私のように今まで月に700円くらい払ってf1-microを維持してた人間にとってはとてもうれしい変更です。
ただし、「It’s worth noting that the free tier is only available in Google’s us-east1, us-west1 and us-central1 regions.」とあるように、asia-eastでは無料になりません。
asia-eastからus-centralに移転させて無料にしましょう。

shellからgcloud compute instances move を使えばいけそうな気がしてきますが、やってみるとエラーがでてうまくいきません。調べてみると、同一リージョン内のzoneの移動はできるけど別のzoneにはいけないらしく…

さてどうするかという事で調べて見ると、一旦VMインスタンスを削除して、ディスクをイメージにして対象のzoneで展開するとできそうということに。

普通にVMインスタンスを削除してしまうと、ディスクも一緒に消えてしまいます。インスタンスの設定画面から「インスタンスを削除する際にブートディスクを削除する」についているチェックを外して保存してください。
これでディスクを残したままVMインスタンスを削除できます。

削除したら、イメージのメニューから、「イメージを作成」を選択して先程のディスクを選択してイメージを作ります。
あとはそのイメージを使ってVMインスタンスからf1-microインスタンスをus-centralに作るだけ。
数分でasiaにあったサーバーがusに移動するの面白いですね。