フリーランスになってから日々あったことを記載していきます。

ラベル プログラマのためのGoogle Cloud Platform入門 の投稿を表示しています。 すべての投稿を表示
ラベル プログラマのためのGoogle Cloud Platform入門 の投稿を表示しています。 すべての投稿を表示

2017年8月9日水曜日

Google Cloud Vision APIをまとめてみた。少しだけ。①

久しぶりにGoogle Cloud Vision APIを触ってみました。

試した写真はこれです。



実際に試したのは顔が表示されていますがとりあえず消しときました。

Google Cloud Vision APIで取得する機能のタイプが選べます。
  • FACE_DETECTION・・・画像内の顔を検出します。
  • LANDMARK_DETECTION・・・画像内の地理的ランドマークを検出します。
  • LOGO_DETECTION・・・画像内の企業ロゴを検出します。
  • LABEL_DETECTION・・・画像の内容に基づいてラベルを追加します。
  • TEXT_DETECTION・・・画像内のテキストに対してOCRを実行します。
  • DOCUMENT_TEXT_DETECTION・・・密度の高いテキストのシナリオ用に特別に調整されたモデルを使用して、ドキュメントなどの密度の高いテキスト画像にOCRを実行します。
  • SAFE_SEARCH_DETECTION・・・画像の画像セーフサーチプロパティを判別します。
  • IMAGE_PROPERTIES・・・画像の一連のプロパティ(画像のドミナントカラーなど)を計算します。
  • WEB_DETECTION・・・ニュース、イベント、画像内の有名人などの時事的なエンティティを検出し、Google画像検索の機能を使用してウェブ上で同様の画像を検索します。
詳細は、ここを見てください。

CROP_HINTSはGoogle Cloud Visionのドキュメントに記載があるけど、料金には書いていないのはなんでだろう?
お金がかからないのかな?

とりあえず、実行するソースは『プログラマのためのGoogle Cloud Platform入門』の第5章 219ページにあるものを使っています。

LANDMARK_DETECTIONを実行してみました。

結果
{ "responses": [ {} ] }

なんぞこれといった感じです。

確かに使っている写真からは目印となるような建物などは見つけられないですね。

次は別機能のタイプを実践します。

2017年7月30日日曜日

プログラマのためのGoogle Cloud Platform入門をやってみた18

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の9回目です。



今回は Cloud Machine Learning Engine(移行Cloud MLE)の学習済みのモデルを動かしてみましょう。

ページの範囲は、253ページから257ページです。

流れは
  1. APIサービスの準備
  2. Cloud Datalabの実行環境を準備
  3. サンプルコードのダウンロード
  4. Cloud Datalabを実行している仮想マシンの停止/破棄

今回は実行するのに時間がかかります。

実際に機械学習をしているのではなくAPIの準備とかCloud Datalabを準備とか。。。

そんなわけで実行した画面を見てましょう。

Cloud Datalabが開きました。pythonであったjupyterみたいです。

サンプルコードのダウンロードをしています。
自分の場合は、止まっていたので再度実行しました。

本にはCtrl+Enterでキー実行すると書いていましたが、自分の場合は、Runを押さないとコマンドは実行されませんでした。
Runをクリックすると文字が入力できるようになります。

文字入力後に、すでに記入されているコマンドに対してRunをクリックしていくと4という結果が出ました。
入力した文字は4である判定されています。

とりあえず実行できたようです。

普通のクライアントPCでも実行できるけどクラウド上でも実行できました。

今回で、『プログラマのためのGoogle Cloud Platform入門』は終了です。

分かったようなわからないような感じですが簡単な操作で動くことはわかりました。

次回からは何しようかな。

2017年7月29日土曜日

プログラマのためのGoogle Cloud Platform入門をやってみた18

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の9回目です。



今回は、Cloud Machine Learning Engineのサンプルアプリケーションの実行後の価格が表示されたので報告します。

とりあえず、一回しか実行してません。

リージョンは、us-central1でした。
自前でパソコン買って試すよりかは安いかもしれませんね。
性能を極めようとすると20万円ぐらいしますから。


ただ気になったことがあって、100Minute=91.50円なのですが、
実際に実施した時間は。。。
20:01:01から。。。

20:16:00で終了しています。。。

どう見ても約16分しかやっていないのですが、請求は100分になっています。

最低限の請求金額なんですかね?
それとも自分の読み方が悪いのか?

調べてみたら、料金はここに詳しく書いていました。

ただ、よく見てもなぜそのようになっているのかわからなかった。

100分使っているならかなり額を取られそうなんですけど。。。

まぁ、いっか!

2017年7月28日金曜日

プログラマのためのGoogle Cloud Platform入門をやってみた17

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の8回目です。



今回は、Cloud Machine Learning Engineのサンプルアプリケーションの実行後の結果を見てみましょう!。

ページの範囲は、252ページです。

流れとしては、
  1. 前回投げたJobが終わっているか、ログでCloud Machine Learning Engineの終了を確認する
  2. TensorBoardのコマンドを実行
  3. Cloud ShellからTensorBoardを見る
てな感じです。
GCPのブラウザのMLから順に追っていくとログを見ることができます。
successfullyが出ると終わるみたいです。

そんでもってTensorBoardのコマンドを実行し、Cloud Shellの左上にあるボタンからブラウザで開くをするとTensorboardが見れます。
うーん。見てもよくわかりませんね。
何となく、accuracy=正確さ、的確さという意味らしいのでテストデータで正解が90%ぐらいになっているという意味だと思います。
lossは本からはわかりません。
ネットで検索しましょう!

そんなわけで、実行できたみたいです。

価格は。。。まだわかりません。

一日たたないと計算されませんね。

次回、表示できるかもです。

2017年7月27日木曜日

プログラマのためのGoogle Cloud Platform入門をやってみた16

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の7回目です。



今回は、Cloud Machine Learning Engineのサンプルアプリケーションの実行です。

ページの範囲は、246ページから251ページです。

流れとしては、
  1. Cloud Machine Learning Engine APIの有効化
  2. Google Compute Engine APIの有効化
  3. サンプルコードのセットアップ
  4. Cloud Storageにバケットを作成
  5. 学習処理のジョブを投入
てな感じです。

ジョブを投入して結果を見ないのは、これに時間がかかるからです。

Cloud Machine Learning Engineは裏ではTensorFlowが動いており、GCEにインストールして使えばわざわざ使わなくて実行できます。

しかし、Cloud Machine Learning Engineを使えば下記のメリットがあるみたいです。
  • 学習処理の間のみ計算ノードが割り当てられて、課金対象となる
  • 分散学習に対応したコードを用いると、複数ノードによる並列学習処理が行える
  • オプション設定でGPUの利用も可能
まぁ、実際に動作させて価格を確認してみます。

2017年7月26日水曜日

プログラマのためのGoogle Cloud Platform入門をやってみた15

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の6回目です。



今回は、サンプルアプリーケーションの実行です。

ページの範囲は、233ページから245ページです。

流れとしては、

  1. プロジェクトの作成
  2. Google Cloud Vision APIの有効化
  3. Google Cloud Translation APIの有効化
  4. サンプルアプリケーションのダウンロード
  5. App Engineアプリケーションの作成
  6. Cloud Datastoreのインデックス作成
  7. アプリケーションのデプロイ
  8. アプリケーションの実施
となっています。

時間は10分もかかりません。



アプリケーションを起動時のTOP画面です。
StartをクリックするとGoogle アカウントでの認証が必要という画面が表示される。ここでは省略しています。


そんなわけで認証するとファイルを選択してくださいという画面出るので自己紹介用のpngフィルを選択し、Uploadをクリックします。

そうすると選択したファイルの内容が表示され、ついでにTagが表示されます。
自分の場合は、「面」、「線画」、「白」。。。
そうなんだけどさ。。。なんか別の表現もあったよねといいたくなります。
Back to Photo Albumをクリックします。

戻ってきました。あとは同じようにファイルを選択するだけですね。
またTagには先ほど表示されていた内容が選択できるようになっています。

なるほど。。。

しかしこれだとGAEアプロケーションは作れないorz

次回は、どうしようかな。

次のページに機械学習なんだけど自分がやりたかったのはGAEアプリケーションを作ることなんだけどな。

とりあえず本を一通りやったほうがいいかもね。

2017年7月25日火曜日

プログラマのためのGoogle Cloud Platform入門をやってみた14

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の5回目です。



今回は、GAEにあるその他機能について説明します。

GAEにある機能

  • cron・・・定期的に指定のジョブをバッチ的に実行する
  • タスクキュー・・・時間のかかる処理を非同期に実行する
  • セキュリティスキャン・・・外部からのアクセスに対してセキュリティ上のチェック(手動実行と自動実行の2種類)
  • バージョン管理・・・デプロイした際に過去のソースを保存。過去のバージョンへの切り替えも簡単。また1部だけ新しいバージョンにして様子を見ることも可能。
タスクキューを使うシーンは、60秒以内にレスポンスを返せないようなときみたいです。
また、タスクキューの1タスクは10分以内に完了しないといけません。

その他情報として、GAEは1プロジェクトに対して1つのWebアプリケーションが対応しています。

でも1つのWebアプリケーションを複数のサービスに分割することが可能だそうです。

通常、URLは『https://<プロジェクトID>.appspot.com』を複数のサービスに分割すると『https://<サービス名>.<プロジェクトID>.appspot.com』てな感じです。
デフォルトサービスは最初のURLでアクセスするみたいです。

サービスに分けたら不利なことなんてあるんですかね?

本にはデフォルトサービスは、ユーザーからのアクセスに使ってそれ以外に作成したサービスはREST APIで呼び出すようなことが書いてあります。

次回からは実際に作ってみます。

2017年7月24日月曜日

プログラマのためのGoogle Cloud Platform入門をやってみた13

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の4回目です。



今回は、Cloud Datastoreの概要です。

GAE環境では永続データを保存することはできないので外部に永続データを保存します。

第5章の内容ではCloud Datastoreに保存するみたいです。

Cloud DatastoreはNoSQLと呼ばれるデータストアです。

なんでもCloud DatastoreはNoSQLのほかに、分散キーバリューストアと呼ばれるものらしく、このサービスもスケールアウトしてくれるみたいです。

ただ、分散する目的は大量データの保存に対応するためです。

驚いたことにクライアントからCloud Datasotreに書き込んだデータが、即座に検索結果に表れない可能性があるそうです。

分散しているので、検索する箇所が多いので見つけられないんですかね?

Cloud Datastoreでは、検索方法が2種類あります。

  • グローバルクエリー・・・データを格納した直後に検索すると見つからないことがある
  • Ancestoreクエリー・・・格納したデータは、検索で確実に見つけることができる
となっています。

使用する際には注意しないといけないですね。

2017年7月23日日曜日

プログラマのためのGoogle Cloud Platform入門をやってみた12

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の3回目です。



今回は、Google App Engine入門ということで座学的な内容を書いていきたいと思います。

クラウドでよく言われるIaaS、PaaS、SaaSの三層の分け方でGoogle App EngineはPaaSに該当します。

過去にGCEでやってきたWebサーバーやロードバランサの設定をすべてやってくれています。

またGAEでやっていたコンテナ環境のようにオートスケールを自動でやってくれています。

GAEのサービス種類
の2つあります。

ただ、フレキシブル環境は英語なので何となくでしかわからないですね。







上のYouTubeを見れば何となくわかると思います。

といいつつ自分も何となくしかわかっていません。

最後に挙げているYouTubeだけ見てもいいと思います。

注意事項として、GAE内で永続データは保存することは難しいそうです。

永続データを保存するために、Cloud DtastoreやCloud Storageにデータを保存するようです。

2017年7月21日金曜日

プログラマのためのGoogle Cloud Platform入門をやってみた11

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の2回目です。



今回は、Cloud Visionをローカルのindex.html+javascriptから呼び出すというのをやっています。

ページの範囲は、218ページから221ページでした。

流れは、

  1. Cloud Vision APIの有効化
  2. APIキーの取得
  3. サンプルコードのダウンロード
  4. サンプルにAPIキーを設定
  5. サンプルアプリケーションの実施
となっています。

そんなわけで自分が持っている写真(α6000で取った4000×6000サイズ)を使って、アプリケーションを実施するとエラーが出る。。。
ネットでCloud Visionのページを見ると下記のように書いてありました。

ファイルサイズ

Google Cloud Vision API に送信される画像ファイルは 4 MB を超えないようにしてください。ファイルサイズを小さくすると、スループットを大幅に改善できますが、プロセスの中で画質を低下させないように注意してください。複数の画像をまとめて 1 つのリクエストとして送信する場合は、Vision API での上限が 1 リクエストあたり 8 MB であることにも注意してください。
とかいてありました。4MB超えたらダメなんですね。

そんなわけで境界を探してみました。

とりあえず結果はこれです。
3955×5932=4091KB OK
3956×5932=4212KB NG
となりました。

境界は、4096KBかもしれません。

そんなわけで実行結果は下記です。
正直、何か出た!という感じです。

各項目、勉強しなくては!

別の項目は下記のように出ました。
LABELだとシャツ、クロージング、スタンディングと出ています。

送信した写真は自分がTシャツ姿で立っているだけの写真なのでかなり精度が高いと思いました。

次回は、GAE入門のようです。


2017年7月20日木曜日

プログラマのためのGoogle Cloud Platform入門をやってみた10

今回は『プログラマのためのGoogle Cloud Platform入門』の「第5章 機械学習を用いたGAEアプリケーション」の1回目です。



今回は座学的なものです。

機械学習、ディープラーニング、人工知能の違いが書いてあります。
  • 機械学習・・・過去のデータから未知のデータを予測
  • ディープラーニング・・・機械学習の一種。特定の領域で高い予測性能を発揮する。
  • 人工知能・・・知性を持っているかのような機能を提供する

そんなわけで、GCPでは機械学習関連のサービスがあります。
  1. Cloud Vision API・・・画像に関するAPI
  2. Cloud Translation API・・・テキスト翻訳に関するAPI
  3. Cloud Speech API・・・音声ファイルのテキスト化
  4. Cloud Natural Language API・・・テキスト関連のAPI
  5. Cloud Machine Learning Engine・・・機械学習モデルを構築できるサービス
  6. Cloud Video Intelligence API・・・動画分析API
  7. Cloud Jobs API・・・求職者が簡単に職を探せるAPI???
の7つです。6、7に関してはまだBETA版となっています。

一番の謎が、7.Cloud Jobs API。

Cloud Jobs APIのページにあるYouTubeも英語なので、わかるようなわからないような。

このAPIを使えば求人サイトでも作れるのだろうか?

ネットで検索してブログを見てもよくわからない。。。

時間があれば試したいAPIかも。

2017年7月19日水曜日

プログラマのためのGoogle Cloud Platform入門をやってみた9

今回は『プログラマのためのGoogle Cloud Platform入門』の「第4章 コンテナ実行環境でマイクロサービスアーキテクチャを体験しよう」の5回目です。



今回のページは、204ページから209ページです。

内容としては、AI機能のバージョンアップとして敵キャラの動作が変わるみたいです。

流れは、

  1. AI機能のDockerイメージ作成(これ長すぎ。10分はかかるよ!)
  2. バックエンド機能のバージョンアップ
  3. サンプルアプリケーションの実施
  4. コンテナクラスタの停止と削除
です。

そんでもってAIの動作。

ま、負けたorz

めちゃめちゃ強くなってます!

このあと5回ぐらい負けた後にやっと勝ちました!


そんでもって、コンテナクラスタの停止と削除なんだけど。。。

本のコマンド通り打ってもエラーになるんですけど。。。

しょうがないから、GCPのContainer Engineの画面で作ったコンテナクラスタを直接削除しました。

とりあえずそれで消えたのでOKかも。

それにしてもGKEも結構お金がかかるなぁ。

GKEを作るときに3クラスターと設定したので、VMインスタンスが3つ起動している。

1カ月だと8千円ぐらいかかりそう。

PC3台買うよりかははるかに安いけど、下手したらめちゃめちゃお金かかりそう。

次回からは、「第5章 機械学習を用いたGAEアプリケーション」です。

2017年7月18日火曜日

プログラマのためのGoogle Cloud Platform入門をやってみた8

今回は『プログラマのためのGoogle Cloud Platform入門』の「第4章 コンテナ実行環境でマイクロサービスアーキテクチャを体験しよう」の4回目です。



今回のページは、196ページから204ページまで。

内容としては、ランダム機能のデプロイだそうです。

まぁ、敵キャラはザコだしな。

流れとしては、

  1. バックエンドのYAMLファイルの更新
  2. バックエンド機能のデプロイ
  3. フロントエンドのYAMLファイルの更新
  4. フロントエンド機能のデプロイ
  5. サンプルアプリケーションの実施
です。

今回の実行結果です。〇=自分、×=敵です。
弱いけど。。。
何か変わったのかな。

次回はAI機能へのバージョンアップらしいのできっと強くなってるはず!

2017年7月17日月曜日

VMインスタンスはこまめに落とさないと高くつく!

とあるメールがメールが来た。

タイトルは、「請求アラート - 予算の 50% を超過しました」でした。

知っている人もいるでしょうけど、自分は初めて来たのでびっくりした。

自分は、GCPのアカウントは1年以上前に開いたものなので、無料枠が無いので、何かをやればほとんど請求が発生します。

で、今自分が何をやっているかというと『プログラマのためのGoogle Cloud Platform入門』のサンプルを動かしているからGCPから請求が来たのでした。

 

請求アラートは、予算を設定してある一定条件になるとメールが来るようになっています。

自分の設定は、予算1万なので5千円を超えたらメールが来るようにしていました。
だけど、3、4日までは1000円ぐらいだったので気にしていなかったが、突然メールが来たのでびっくり。

そんでもって、急いで確認したところ実際は6千円を超えていた。

支払い内訳をみてみるとこんな感じ。


Compute EngineのVMインスタンスが大幅に占めている。

なぜかなと考えたら、『プログラマのためのGoogle Cloud Platform入門』の「第3章 止まらないWebアプリケーション基盤を構築しよう」で下記のシステム構成を作ったのが思い出した。
  • ロードバランサ
  • GCE×3(西アメリカリージョン)
  • GCE×3(東京リージョン)
  • Cloud SQL
  • Cloud Storage
ってな感じのシステム構成。たくさんのGCEを動かし負荷分散して止まらないアプリケーションを実現するって内容でした。

そりゃ、6台もGCE動かし続けたら、あっという間に代金請求されるわ。

サンプルを実行したあと満足してそのままにしたのが痛かった。反省。

とりあえず、すぐにVMインスタンスを停止、ロードバランサも削除、インスタンステンプレート、インスタンスグループも削除した。

Cloud SQLは停止。Cloud Storageはまだ使うかもしれないので放置。

今回は、業務で使っていなかったけどこれを業務でやらかしたら大変だった。

多分、桁も違うだろうし。ほんと泣くだけじゃすまないしね。

これをキッカケにGCPの使い方ばっかり見てたけど、価格もちゃんとチェックするようにしよう。

2017年7月16日日曜日

プログラマのためのGoogle Cloud Platform入門をやってみた7

今回は『プログラマのためのGoogle Cloud Platform入門』の「第4章 コンテナ実行環境でマイクロサービスアーキテクチャを体験しよう」の3回目です。



今回のページの範囲は、193ページから196ページです。

内容としては、Dockerイメージの公開だそうです。

流れは、

  1. dockerのイメージへのタグを設定
  2. Container Registryへのpush
  3. イメージの確認
  4. バケットの内容の確認
てな感じです。

正直、今回は地味です。
てな感じでファイルができるだけです。

次回からは、きっとGKE(Googke Container Engine)の内容について触れるはず。
多分。

2017年7月15日土曜日

プログラマのためのGoogle Cloud Platform入門をやってみた6

今回は『プログラマのためのGoogle Cloud Platform入門』の「第4章 コンテナ実行環境でマイクロサービスアーキテクチャを体験しよう」の2回目です。



今回のページの範囲は、189ページから193ページです。

流れとしては、

  1. docker buildコマンドの実行(バックエンド部分)
  2. docker imagesの動作確認
  3. バックエンドとフロントエンドのコンテナ起動
  4. サンプルアプリケーションの実施
  5. ローカル環境でのコンテナの停止/削除
です。

今回もdocker buildコマンドを実行するので、また時間がかかるかとおもったけどあっさり終わりました。

そんなわけでアプリの実行画面。
X,Yを入力して五目並べをするみたい。

私が置いた場所は"〇"で、敵は"×"で表示されます。
とりあえず、左1列5個揃えたら勝ちました。
敵は、ランダムに置くだけで、自分を邪魔しに来ることはなかったです。

とりあえず動きましたって感じですね。

特に途中Dockerについて説明があるのですが、Dockerfileをうまく作らないといけないらしいです。

本に載っていたコマンドを下記に書きだしました。
  • FROM命令:ベースイメージの指定
  • RUN命令:コマンド実行
  • CMD命令:コンテナのコマンドを実行
  • LABEL命令:作成者情報
  • EXPOSE命令:指定されたポート番号の公開
  • ENV命令:環境変数
  • ADD命令:ファイル/ディレクトリの追加
  • COPY命令:ファイルのコピー
  • VOLUME:ボリュームのマウント
  • ENTRYPOINT:コンテナの実行コマンド
  • USER:ユーザーの指定
  • WORKDIR:作業ディレクトリ
  • ONBUILD:ビルド完了後に実行される命令
  • STPSIGNAL:コンテナ終了時に送信するシグナル
てな感じでした。

結構覚えることがありそうでちょっとめんどいかも。

2017年7月14日金曜日

プログラマのためのGoogle Cloud Platform入門をやってみた5

今回は『プログラマのためのGoogle Cloud Platform入門』の「第4章 コンテナ実行環境でマイクロサ-ビスアーキテクチャを体験しよう」を開始します。


今回のページの範囲は、177ページから189ページです。

流れとしては、

  1. コンテナ クラスタを作成
  2. Dockerfileを取得
  3. Dockerイメージの作成(フロントエンド部分)
です。

今回は少ないです。

理由は3.Dockerイメージの作成がなかなか終わらない!

かれこれ10分以上待っていますが、まだ終わりません。

そんなわけで、待っている間にこのブログを作成しておこかなと思いました。

余談:いままで『プログラマのためのGoogle Cloud Platform入門』の第2章と第3章やってきましたが、GCPを使っているのでお金がかかります。
実際に行ったのは、
  • 本に書かれたコマンドを実施
  • サンプルアプリケーションを2,3回実行
  • 設定したVMやCloud SQL等を3日ほど放置
うーん。高いのか安いのかわからない。

かかっているもの順に並べると
  1. Cloud SQL
  2. Compute Engine
  3. 消費税
  4. Cloud SQL Storage PD SSD in Japan
  5. Compute Engine Storage PD Capacity in Japan
ってな感じ。

3番目に消費税って。。。

税金って怖い!

2017年7月13日木曜日

プログラマのためのGoogle Cloud Platform入門をやってみた4

今回は『プログラマのためのGoogle Cloud Platform入門』の「第3章 止まらないWebアプリケーション基盤を構築しよう」を開始します。



今回のページの範囲は、122ページから138ページです。

流れとしては、

  1. スナップショットの作成(第2章で作成したVMインスタンスを使います)
  2. ディスクの作成(1.で作成したスナップショットを使います)
  3. イメージの作成(2.で作成したディスクを使います)
  4. インスタンステンプレートの作成(3.で作ったイメージを使います)
  5. インスタンスグループの作成(4.で作成したインスタンステンプレートを使います)
  6. ロードバランサのHTTP(S)負荷分散で作成
    1. バックエンドの作成
    2. ホストとパスのルール作成
    3. フロントエンドの設定
  7. アプリケーションの実施
でした。

そう。今回はやることが多い。

で気になったのが、赤枠の部分。
何これインスタンステンプレートって作るだけでお金かかるの?
今日、VMインスタンスを作る画面を見たら同じように表示されていました。

いままで気が付かなかったのか、新しく見せるようになったのかわかりませんが、お金がかかるのかと思うとちょっとためらいましたが続けました。

次に困ったのが、7.アプリケーションの実施。

何が困ったかというと、いままではVMインスタンスに直接アクセスしていたが、今回からはロードバランサを経由してアクセスするらしく、作ってすぐにIPアドレスにアクセスしても反応しない。。。

自分の作りが間違っていたのかなと思って設定を見返しても間違っているところはなかったので、5分ほど待ったらアクセスできました。

そんなわけで動作結果です。

とりあえず、前回と同じことをしたら表示されました。

次は、第4章 コンテナ実行環境でマイクロサービスアーキテクチャを体験しようとなっています。

2017年7月12日水曜日

プログラマのためのGoogle Cloud Platform入門をやってみた3

今回も『プログラマのためのGoogle Cloud Platform入門』をやってみました。



今回のページの範囲は88ページから94ページです。

流れとしては、

  1. Cloud Storageのバケットを作成
  2. 作成したバケットのアクセス権追加
  3. サンプルアプリケーション(V3.0)のインストール
  4. サンプルアプリケーションの実施
って感じでした。

またまた困ったことが起きて、2.作成したバケットのアクセス権追加でプルダウンメニューが写真と違う!

そんなわけで私がやったのが、「バケットの権限を編集」をクリックするとメニューが表示されます。
メンバーの追加でAllUsers。役割の選択で「ストレージオブジェクト閲覧者」を選択して「追加」ボタンをクリックします。
そうすると、ストレージオブジェクトの閲覧者が表示されます。
これでとりあえずサンプルアプリケーションは動作しました。

そんでもって動作結果。


いままで作った伝言機能に画像をアップロードする機能が増えてます。

今回で、『プログラマのためのGoogle Cloud Platform入門』の「第2章 Webアプリケーション実行基盤を構築しよう」が完了しました。

次回からは、「第3章 止まらないWebアプリケーション基盤を構築しよう」となります。

たぶん3回に分けてやるかも。

2017年7月11日火曜日

プログラマのためのGoogle Cloud Platform入門をやってみた2

Google Cloud Platform入門の続きです。


ページの範囲は77ページから87ページです。

流れとしては、

  1. Cloud SQLのインスタンス作成
  2. Cloud SQL APIの有効化
  3. Cloud SQLのインスタンス内でデータベース作成
  4. サンプルアプリケーション(v2.0)のインストール
  5. サンプルアプリケーションの実施
ってな感じです。

困ったのが1.Cloud SQLのインスタンス作成。

何が困ったかというとmysqlのパスワードの入力。

自動生成にすると簡単に強固そうなパスワードを作ってくれるのですが、入力するのは手入力だったので何度も間違えて先に進めずorz

そんなわけで、簡単なパスワードで再作成しました。

謎なのが、2.Cloud SQL APIの有効化。
なんでも今回使用するCloud SQL Proxyを使うには、APIの有効化が必要らしい。
ほんとにただ有効化しただけ。
それだけでつながるのが不思議で仕方ない。

3.、4.、5.は順調にできました。

あまりにも順調に動いたので、ちょっと中身を確認しました。


というわけでちゃんと値が入っていたので、とりあえず繋がってCloud SQLには格納しているみたい。