Google Cloud Platform入門の入門

Published: 2017年1月29日 by tomsato

概要

Google Cloud Platformについてまとめる

入門の入門ということで

  • 端的にGoogle Cloud Platformが何なのか
  • 料金について
  • 実際に触ってみる

とどういうものなのかをイメージできるまで記述していく

Google Cloud Platformとは

以下GCPとする

Googleが自社で使っているインフラと同じインフラを低コストで利用することができるクラウドサービス
似たようなサービスとしてはAWSがあるが、違いなどは比較サイトを参考にしてほしい
強いて言うならAWSよりも後に出たサービスなのもあるが性能やコストパフォーマンスが良さそう

GCPが持っているサービス

サービスの一部を抜粋して紹介する

https://cloud.google.com/products/

Compute Engine

Googleが提供するIaaS

KVMを利用していて、仮想サーバを作成・使用することができる

ニーズや予算に合わせて自分で構築することができる

App Engine

Googleが提供するPaaS

App Engineは受信したトラフィック量に応じて自動的にアプリケーションをスケーリングすることができる
サーバーのプロビジョニングやメンテナンスを行う必要はなく、コードをアップロードするだけでGoogleがアプリの可用性を管理する

また自動でセキュリティスキャンを行って脆弱性を検出できたり、JenkinsやGit、Eclipseなど定番の開発ツールに対応しているとのこと

Container Engine

Dockerコンテナの実行するためのクラスタ管理及びオーケストレーションシステム

その他

他にも多数のサービスがある

  • コンピューティング
  • ストレージ・データベース
  • ネットワーキング
  • ビッグデータ
  • 機械学習
  • 運用管理ツール
  • 開発者用ツール
  • アイデンティティ・セキュリティ

で分類ができて、Compute EngineやApp Engineはコンピューティングに分類されている

全部紹介すると長くなってしまうので今回は割愛する

補足:IaaS,PaaS,SaaSの違いについて

補足程度にどんなものかをまとめてみる

  • SaaS(Software as a Service)
    • ソフトウェアをインターネット経由で、必要なものを必要な時に呼び出して使うような利用形態のこと
  • PaaS(Platform as a Service)
    • アプリケーションを稼働させるためのプラットフォーム一式をインターネット上のサービスとして利用する形態のこと
  • IaaS(Infrastructure as a Service)
    • 仮想サーバなどのインフラをインターネット上のサービスとして利用する形態のこと

料金について

GCPに登録すると無料試用期間として60日間で$300のクレジットを獲得できる
無料試用期間が終了しても自動的に請求されることはなく自分で有償アカウントにアップグレードする必要がある

料金体系は分単位の課金で利用状況に応じて自動的に割引が適用される

サーバーの種類や台数、通信量などにより課金額が変動する

後の方でサーバを実際に立ち上げる際にも記述するが
Google Compute Engineで最小スペックのサーバを用意しようとすると
インスタンス作成画面で推定費用1か月あたり $5.51と出た

「継続利用割引というのは」インスタンスは使用期間に応じて割引があるみたいで
上記の推定だと1か月あたり最大30%割引されるっぽい
割引がなければ$7.7

このスペックだとどれくらいなのか推定費用が出るのは嬉しい

GCPに登録する

Googleアカウント登録

既にある場合は大丈夫だが無い場合は作成する

GCPの登録

https://cloud.google.com/ から「無料トライアル」をクリック

規約を同意する

住所やクレジットカードの入力を行うとダッシュボードに遷移してGCPが使えるようになる

登録を行うと自動的に「My First Project」というプロジェクトが作成される

GCPは「プロジェクト」という単位でサービスを利用できる

例えば「Project A」と言うプロジェクトがあったとしてそのプロジェクトにGoogleアカウントを複数紐付けて権限を設定することができる
つまりProject Aでサーバを複数立ち上げて、紐付いているアカウントメンバーでサーバを共有できる

また請求についてはプロジェクト毎に請求先アカウントを設定できる

Google Compute Engineを使ってみる

ダッシュボードから左上のハンバーガーメニュー(3本の横線)をクリックして「Compute Engine」を選択する

「インスタンスを作成」をクリック

インスタンスのスペックなどを入力する

  • 名前
    • インスタンスの名前
    • ここでは「instance-1」とする
  • ゾーン
    • VMインスタンスを起動するゾーン(リージョン)を指定する
    • ここでは「asia-northeast1-c」にする
    • asia-northeast1は東京リージョンとなっている
  • マシンタイプ
    • スペックを選択する
    • 最小スペックの「f1-micro」(共有 vCPU x 1 + メモリ 0.6 GB)にした
  • ブートディスク
    • イメージまたはスナップショットを選択して新しいブートディスクを作成するか、既存のディスクをインスタンスに接続できる
    • ディスクの種類(HDDかSSD)やディスク容量も選択できる
    • ここではHDD 10GBとしてOSは使い慣れているCentOS6とした
  • ID と API へのアクセス
    • VM 上で実行されるアプリケーションは、サービス アカウントを使用して Google Cloud API を呼び出す、使用するサービス アカウントと、許可する API アクセスレベルを選択する
    • StorageなどのAPIへのアクセスを許可するかどうか、特に最初は気にしなくていいと思うのでデフォルトのままにしておく
  • ファイアウォール
    • デフォルトではネットワークの外部から受信する全てのトラフィックがブロックされるので、許可するネットワークのトラフィックを選択する
    • 例えばPHPでWeb画面を開発する際に画面表示確認でHTTPアクセスする可能性があるため、ここではHTTPのトラフィックを許可する
  • その他
    • 管理やディスク、ネットワーキング、SSH認証鍵も設定できるが今回は何も触らない

ここまで設定したら「作成」をクリック

緑のチェックができたらインスタンスの起動が完了

Google Compute Engineで作成したサーバにログインする

VMインスタンス一覧画面の「接続」項目でログインしたいインスタンスの「SSH」をクリックする

接続するためにterminal系のソフトが不要でブラウザ上からアクセスできる

コメントを書く

※ Emailは公開されません

※ コメントは承認されると下記に表示されます

コメント一覧

最近の投稿

社内ツールなどの超小規模なAPIをGolangで実装する際にフレームワークを使うべきかを、実際にnet/httpを使った実装とフレームワークを使った実装を比較することでどれだけ優位性があるかを見ていきたいと思います。今回はフレームワークにはシンプルで使いやすそうなEchoを使うことにします。

vue-pdfを使ってNuxt.jsで作成しているアプリケーションに pdfスライドを表示させるサンプルを作成しました README.md通りに実装してもうまくいかないところがあったのでそのあたり含めてまとめます

Vue.js / Nuxt.jsにおけるログインの実装方法をまとめる Auth0やNuxt.jsのAuth Moduleとmiddlewareについて調べつつサンプルを作成することで理解を深める

コンポーネント設計について考える Atomic DesignやPresentational Component, Container Componentについてまとめつつ 自分だったらVue.js / Nuxt.jsでどういうコンポーネント設計にするかについてまとめます

Netlify Formsを使ってブログサイトにコメント機能を追加する方法を調べたので紹介 Netlify FormsはNetlifyに標準機能として用意されているフォーム機能 サーバレスなので別途コメント用にサーバを用意する必要がなくHTMLを埋め込むだけで準備できる

カテゴリ一覧

タグ一覧