1年前に当ブログを苦労してGoogle Cloud Platformに引っ越したんですが、実は無料枠内に入っておらず、月々いくらか課金されていたので(実際にはトライアル期間内なのでお金はかかってませんが)、インスタンスを無料枠内に収まるように引っ越しました。やろうやろうと思ってたんですがなかなか取りかかれず、いよいよ「トライアル終わるんで金取るよ」メールが届いたので重い腰を上げることに。やってみると意外とすんなり移行できました。

大まかな流れとしてはこんな感じ:

  1. 現状のインスタンスのスナップショットを作成
  2. 無料枠内のゾーンに、スナップショットを使ってインスタンスを作成
  3. Cloud DNSのレコードを新しいインスタンスのIPに修正
  4. 古いインスタンス(とスナップショット)を削除

概ね「Google Cloud Platformにおけるゾーン間のインスタンスの移動」という記事に記載されている通りの手順で移行できました。ちょっとつまづきかけたところに以下のものがありました。

ディスクの作成時は以下のように選択する

  • リージョン: us-west1
  • ゾーン: us-west1-a

インスタンスの作成時は以下のように選択する

  • リージョン: us-west1
  • ゾーン: us-west1-a
  • マシンの構成:
    • マシン ファミリー: 汎用
    • シリーズ: N1
    • マシンタイプ: f1-micro(これを選択すると、右側の説明欄に「今月の f1-micro インスタンス使用量は、最初の 744 時間分が無料です。」と出る)

ネットワーク関連

  • VPCネットワーク > 外部IPアドレス から、以前の外部IPアドレスを削除
  • ネットワーク サービス > Cloud DNS から、設定済みのゾーンの詳細を開き、Aレコードのデータを新しい外部IPアドレスに変更する

DNSの更新後、クライアントから nslookup でIPアドレスが新しいものに切り替わったのを確認してから古いVMなどを削除すると、ダウンタイムなしで移行できてよいかと思います。

写真は2日の富士山。寒いのは苦手ですが、近所から遠くの山々がよく見えるのがいいです。