プログラマーの雑レポート

脳死で読めるコードを書きたい

(GCP入門) ComputeEngineについて

(GCP 入門 その①)基礎知識 〜GoogleCloudとは、クラウドについて〜 - 雑エンジニアのつぶやき の続編。

GoogleComputeEngine(GCE)とは


Google Cloud で提供されている従来課金制の仮想マシン(VM)サービス。
Iaasサービスの一種 (laasとは。は、こちら)
仮想マシンは、ざっくり言うと物理的なコンピューター上に仮想的なコンピューターをを作成する仮想化技術で、ソフトウェアを動かすために必要不可欠なもの。
オンプレミスで同じ環境を用意するとなった場合、動かすために必要な物理的ハードウェアを諸々揃える必要がある。

GCEは、OSやCPU・メモリなどを細かく設定することができ、さらに簡単に仮想マシンの台数を増減することができる。

設定について

リージョン・ゾーン、マシンタイプ・ブートディスク(OS)等の設定が必要となる。
一部抜粋して解説

  1. ブートディスク OSとブートディスクの設定を行う。
    OSは、OS(CentOS, Ubuntu...)を含めたパッケージ化された公開イメージを利用する。
    ブートディスクは、必ず永続ディスクである必要があって、それ以外のディスク(ストレージオプション)も追加することができる。
    追加ディスクには、2種類あり、「永続ディスク」「SSDディスク」がある。永続はその名の通り、データが削除されることはなく、SSDはその逆で削除される。が永続より高速にアクセスすることができる。
  2. マシンタイプ メモリのサイズやvCPUを設定する。
    具体的には 「マシンタイプ」「用途」「vCPU数」と構成されているものを選択する。
    汎用的なものだと n2-standard-4で、n2がマシンタイプ、standard が用途、4 がvCPU。
    カスタムすることもできる。

特徴

バックアップ

  1. スナップショット機能 任意のスケジュールで定期的に永続ディスクのデータをバックアップすることできる。バックアップは前回からの追加分を記録する仕組みとなっている。
    特定データを復元したり、新しいディスクに移行といったことが行える。ただし、メタデータ等の情報は保存されない。
    あと、頻度が高いとストレージを食うので注意。

  2. カスタムイメージ ユーザが作成したイメージ(=カスタムイメージ)を使い回すことができる。
    何が便利なのかいうと、特定のイメージをベースとして別環境を構築したい。といったことが行えるため、新環境の構築の工数を削減することができる。

  3. マシンイメージ 1,2は個々のディスクのバックアップだが、マシンイメージでは複数のディスク丸っとインスタンス全体をバックアップすることができる。そのため、メタデータ等の情報も保存することができる。

障害対策

ライブマイグレーション
ライブマイグレーションとは、仮想マシンを展開している物理的コンピュータ(サーバー)自体に何らかの障害が発生した際に、別の物理的サーバーに引っ越しできる仕組みのことで、標準で備わっている。
ただし、ライブマイグレーションが行えない障害もあり、その場合仮想マシンは再起動が走るため、それを考慮したアプリケーション開発を行う必要がある。

障害時の挙動

終わり

わかりやすく文章書くの下手すぎるから徐々に上手くなりたい
あと、はてなブログMarkdownなんか書きづらくない?