vagrantからGoogle Compute Engine(GCE)のインスタンスを起動する方法
vagrantからGoogle Compute Engineを起動する方法です。 クーポンがあるのでGoogle Platformの勉強や自宅PCが非力なので代わりに使っています。
googleのdeveloperコンソールに入れる状態まではいっておいてください。あとクラウドなので課金については事前に調べておいてください。
knife-soloにもサブコマンドでknife-googleが用意されていたりしますが、vagrantが中間レイヤーとして入ってくれるので一度vagrantfileを作成してしまえば今まで通り操作するだけです。
vagrantfile作成にあたり
以下を事前に設定・取得してください
まずproject-idですが、Google Platformが使える状態であればDeveloper Consoleのtopページで確認できると思います。
サービスアカウントのメールアドレスはDeveloper consoleのAPIと認証の画面から確認できます。ない場合は新しいクライアントIDを作成してみてください。
googleサービスアカウントのキーファイルはDeveloper consoleのAPIと認証の画面で新しいクライアントIDを作成した際にダウンロード可能なので取得してください。クライアント側に保存してGOOGLE_KEY_LOCATIONにパスを設定します。
一応、レシピを2つ程run-listに入れて試しています。適宜外してください。
あとはイメージファイルやインスタンスのタイプも環境に合わせて設定してください。 google.image = "centos-6-v20140718" google.machine_type = "f1-micro"
$GOOGLE_PROJECT_ID = "<your id>" $GOOGLE_CLIENT_EMAIL = "<your mail>" $GOOGLE_KEY_LOCATION = "<your key(p12)>" $LOCAL_USER = "<your username>" $LOCAL_SSH_KEY = "<your key>" Vagrant.configure("2") do |config| config.vm.box = "gce" config.vm.provider :google do |google, override| google.google_project_id = $GOOGLE_PROJECT_ID google.google_client_email = $GOOGLE_CLIENT_EMAIL google.google_key_location = $GOOGLE_KEY_LOCATION # Override provider defaults google.name = "testing-vagrant" google.image = "centos-6-v20140718" google.machine_type = "f1-micro" google.zone = "us-central1-a" google.metadata = {'custom' => 'metadata', 'testing' => 'foobarbaz'} override.ssh.username = $LOCAL_USER override.ssh.private_key_path = $LOCAL_SSH_KEY config.omnibus.chef_version = :latest config.vm.provision :chef_solo do |chef| chef.cookbooks_path = ["./cookbooks", "./site-cookbooks"] chef.run_list = %w[ recipe[yum-epel] recipe[nginx] ] end end end
これでGCEからインスタンスを起動できるはずです。
$LOCAL_SSH_KEY = "
シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。
- 作者: 新原雅司
- 出版社/メーカー: 技術評論社
- 発売日: 2013/09/12
- メディア: Kindle版
- この商品を含むブログ (4件) を見る
Google Compute Engine入門 (アスキー書籍)
- 作者: 吉積情報株式会社吉積礼敏
- 出版社/メーカー: KADOKAWA / アスキー・メディアワークス
- 発売日: 2014/07/31
- メディア: Kindle版
- この商品を含むブログ (1件) を見る