GCPUG KAGAWA #1 にいってきました^^
今はGCP試したい気持ちでいっぱいです
間違ってるところご指摘いただけるとありがたいです。
#1.GCPUG KAGAWA #1って?
GCPUG(ジーシーパグ)はGoogle Cloud Platform(GCP)を普及させることを目的とし、
Google Cloud Platform(GCP)をより良くし、盛り上げていくユーザーグループです。GCPUG(ジーシーパグ)の趣旨に共感できる方であれば、初心者 〜 上級者の方まで、誰でも自由に参加できます。
一緒にGoogle Cloud Platform(GCP)を盛り上げていきましょう!
connpassより
#2.どうして行ったの?
- AWS, Azureと比べてGCPのいいところ知りたいな
- GCPってどこにアンテナはってたらいいの?
- G Suiteを会社や個人的にも使ってるので、GCPとどのくらい親和性があるのか知りたいな
- e.g. GCPで作成したWebアプリケーションの中で、ドキュメントやスプレッドシートを制御できる?
- 認証のあるSPAが簡単に作れるか知りたいな
- Cloud9みたいなクラウドIDEってGCPにあるのかな
#3.どうだった
- GCPは、AWS、Azureと比べて安くて性能のいいサービスを使えるのがいいところ
- GCPは、AIが優れてるよ
- G Suiteを使ってるからといって、GCPでドキュメントやスプレッドシートを扱いやすいとかは特にない
- でも、GCPからG SuiteのAPIを利用するなどは速いみたい、同じサーバー群の中で動くものだから?
- 強いて言うなら、Googleアカウント、グループなどの管理がGCPでも同じようにできて楽みたい
- んー、じゃあAWSでいいかと思った、でも個人的にはG Suite使ってるからGCPに頑張ってもらいたいな・・・、どっちだよ!
- SPA作るには、GAEとかFirebaseとか選択肢があるけど、GAEが今は主流かな
- クラウドIDEはまだない。テキストエディタレベルのしかない。
- 久保さんのGKEデモが見れなくて残念。今度は是非お願いしまーっす!!!>人<
#4.聞いたこと
未経験者向けGCP全般紹介 / クラウドエース株式会社 会長 吉積 礼敏さん
日本初のトリプルホルダー
- Associate Cloud Engineer
- Professional Data Engineer
- Professional Cloud Architect
Professional Cloud Architect:アメリカで最も稼げるIT資格になった
みんなProfessional Cloud Architectをとってアメリカに行こう
GAEのPaaSに目覚めて飛びついた
Google Cloud
- G Suite:ユーザー単位課金
- GCP:API単位課金
2年がかりで書いた”GCPの教科書”が来月出版されるよ
東京リージョンができる前から書いてた
12/13に開催したGCP One Dayには約800人集まった
Googleのクラウドとは?
Googleの検索がベースにある
当初、ページランクというアルゴリズムがすごいと言われていた
インフラも一らか元々作っていた。20年くらい
超高速でレスポンスタイムが速い
レイテンシ、ターンアラウンドタイムが小さくなるようにしている
物理層、プロトコル、ブラウザにまで
全文検索してインデックス作る大規模処理をずっとやってた
だからHadoopとかの論文がGoogleから出てきた
GCPのネットワーク
物理的な層が世界中に広がっている
インドネシアも増えてるはず
何十億のユーザーが使っても落ちないインフラが根底にある
パブリッククラウド前提で作ってきたインフラ
マイクロサービスで作っており、ベストエフォート型で8割稼働している
どこで稼働しててもよくて鍵がかかってない
GCPの特徴
クオリティーがよくて、スケーラビリティが高くて、コストも低い
k8s使うならGoogleがいいよねってことで伸びてる
Cloud Spannerいい
Googleの機械学習における強み
TensorFlow
膨大なデータ
GCE
ライブマイグレーション
急激なアクセスに強い
コスト
GAE
開発、運用が楽!
Google Cloud Storage
他のクラウドと遜色ない
BigQuery
デファクトになってる
とにかく安い
三社の比較 Magic Quadrant
2018年にはLeadarの分類に
プライスでは圧勝している
セキュリティの順位
AWS>GCP>Azure
Spanner初事例
フルクル
振るとタクシーが来るサービス
3秒おきに4000台のアクセスがある
第一子の娘さんご誕生おめでとうございます!^^
Webサイト設計と実践 on GCP 初級編 / グーグル・クラウド・ジャパン合同会社 久保智夫さん
アジェンダ
- GCPで構築するWebサイト
- GCS
- GCE
- GKE
- DNS
設計する時の悩み
- 楽したい(managed)
- OS管理
- ミドルウェア
- スケール
- 自由に作りたい(flexibility)
- 言語、ミドルウェア、OSなど
How about GCP?
- Compute Engine(Static, Dynamic)
- K8s Engine(Static, Dynamic)
- Firebase Hosting (Static)
- Cloud Storage (Static)
- App Engine(Static, Dynamic)
GCE
ライブマイグレーション
- 物理ホストのメンテナンスの必要がある時、計画停止を裏側でやってVMプロセスを移動している
- ただし予期せぬメンテナンスが発生することはあるので設計で考慮する必要はある
特定のApp/MiddlewareがプリインストールされたVMをMarket Placeからローンチすることも可能
当然OSから上はユーザー管理
GKE
CaaSに分類される
k8sはGoogleが考案した
GAE
Java, Puthon, Go, Node.js, PHPが利用できるSE
仮想マシンベースのStandard Environment (GAE SE)と、Docker コンテナベースのFlexible Environment (GAE FE)がある
GCS
コンテツをバケットにアップしてコンテンツの公開設定するだけで、発信するだけのWebサイトなら作成できる
ただし、HTTPに限定される
LoadBalancingのバックエンドに配置することで間接的にHTTPSも可能
Cloud DNSでCNAMEレコード追加することにより独自ドメインも可能
Firebase Hosting
mBaaS
独自ドメインのSSL証明書を無料でプロビジョニング可能
ただし、まだ東京リージョンはない
CDN利用することで低いレイテンシで利用することは可能
デモ!
GCPで構築するWebサイト
Cloud Shellからコマンドラインで進める
- バケットの作成
- バケット名は全世界でユニークな必要がある
gsutil mb your-bucket-name
- コンテンツのアップロード
-
gsutil cp index.html gs://your-bucket-name
- Web UIからもCloud ShellのVMにファイルのアップロードもできる
-
- 公開設定
- コンテンツ配置したら公開設定する必要がある
- ドメインでバケット作成している場合
gsutil web set -m index.html -e 404.html gs://your-bucket-name
- 通常の名前でバケット作成している場合
gsutil acl set public-read gs://your-bucket-name/index.html
-
https://storage.googleapis.com/your-bucket-name/index.html
にアクセスすると見れる
GCEを使ったWebサイト
- VMインスタンスを作成
- インスタンス名入力
- リージョン選択
- 東京と今年、大阪リージョンも解説される
- ゾーン選択
- マシンタイプ選択
- イメージ選択
- ファイアウォール設定
- HTTPトラフィック許可
- HTTPSトラフィック許可
- ブートディスク設定
- 作成!
- これでサーバーにログイン可能になる
- SSH接続でもいいが、Cloud Shellからアクセスすることができる!これ便利だな
- Webコンテンツ作成
sudo apt-get inastall apache2
sudo systemctl start apache2
ps -ef|grep apache
- IPv6アドレスでしかLISTENしてなかったので表示できなかった
まとめ
サービスの用途に応じたアーキテクチャを選択しましょう
Scrap & BuildでAgileなサービスを立ち上げよう
GAE/Goの概要説明とデプロイデモ / Ryuji Iwataさん
GAEとは
インフラ、運用をGoogleに任せてWebアプリ開発に集中できるサービス
OS、ミドルウェアはGoogleにお任せ
アクセス量に合わせてインスタンス数も自動でスケール→オートスケール
簡単なWebアプリなら無料枠で収まる
スタンダード環境
独自コンテナーで動作
GCPサービスと連携しやすい
使用できるライブラリーや機能に制限がある
対応言語やバージョンに制限がある
フレキシブル環境
GCEのDockerコンテナーで動作
GCPサービスと連携しにくい
使用できるライブラリーや機能に制限がない
対応言語も幅広い
第二世代のスタンダード環境
gVisorベースのコンテナー
使用できるライブラリーや機能がフレキシブル環境並みに緩和
対応言語も増加
GAEでのGoの特徴
処理速度が速い
Webアプリの起動で待たされない
リソースの使用時間が短い→課金額の節約になる
コンテナー技術との相性がいい
多くのミドルウェアがGoで開発されている
- Docker
- Kubernates
- gVisor
デモ!
Building a Go App on App Engineに沿って進める
- Cloud SDKインストール
- Goインストール
- App Engin Goコンポーネントインストール
- GCPプロジェクト作成
- プロジェクト作成
- GAEアプリ作成
- プロジェクトの請求先情報を設定
- Webアプリ作成
- go-app/ディレクトリ作成
mkdir go-app
- go-app/ディレクトリ配下に移動
cd go-app
- app.yamlファイル作成
vim app.yaml
runtime: go111
- プログラム作成
vim main.go
- 動作確認
- 第二世代のGAE/Goは、Gode書いたHTTPサーバーがGAE/Goで動作する
- ローカルで確認
-
go fmt main.go
でフォーマットしてくれる -
go run main.go
で実行
-
- go-app/ディレクトリ作成