色々学んだことを思い出しながらアウトプット。
アウトプットすることに意義がある。
IAMユーザの種類
# | ユーザの種類 | 詳細 |
1 | Google アカウント | gmail.comなどGoogleアカウントに紐づけられているメールアドレスがIDになる |
2 | サービスアカウント | 基本的にアプリケーションが様々なリソースへアクセスする際に利用するユーザ |
3 | Google グループ | 複数のGoogleアカウントを1つにまとめたもの。グループに対して権限を付与するのは、 GCPのベストプラクティスの1つ。 |
4 | G Suite ドメイン | 同じドメインのGsuiteアカウントを持っていると、そのドメインに対して権限を付与できる。 |
5 | all User | Googleアカウントの有無を問わず、インターネット上のユーザ全員のこと。 |
6 | all Authenticated User | Googleアカウント、サービスアカウントで認証されたユーザ全員のこと |
GCPのコンプラ対策
# | 規格 | 詳細 |
1 | ISAE3402 | サービス提供にあたっての内部統制がちゃんと行われていることを示す規格。 |
2 | ISO27001 | 情報セキュリティマネジメントシステムなど、情報の取り扱いが正しく行われていることを示す。 |
3 | SOC3 | ISAE3402の非機能バージョンみたいなもの。(セキュリティとか、可用性とか。) |
4 | FISMA Moderate | アメリカの政府調達企画に沿っているかどうかを示す規格。(日本じゃそこまで気にならない?) |
5 | HIPAA | アメリカの医療データ取り扱い規格、相互運用とか個人情報などが求められているレベルに達していることを示す規格。 |
GCE(Google Compute Engine)
Live Migration
オンライン中にシステムダウンを最低限に抑えつつ、別のインスタンスへアプリケーションなどを移行する機能。
重大なセキュリティホールが見つかったけど、止められない!みたいな時に重宝する。
ディスクの中身など必要な情報を別のディスクに移行し、新しいインスタンスを起動。新しいインスタンスに外部IPを付け替えることで、ダウンタイムがほぼ0でアプリケーションを移行することが出来る。
アプリケーションの性能向上を検討するときに考えること
- インスタンスを複数にしてみる(負荷分散)
- メモリやCPUを増強してみる
- ディスクをSSDに変えてみる
- リソースを同じリージョンに集めてみる
インスタンスを停止しないと行えないこと
メモリ・CPUの増強はインスタンスを停止しないと行うことが出来ない。
ディスクを増やしたりマウントしたりはインスタンス起動中でも出来るということ。
GAE (Google App Engine)
GAE の制限事項
- 1つのプロジェクトに1つのAppEngineしか作ることが出来ない(テストでよく問われる)
- 1分以上かかるのリクエストはGAEでは処理することはできない
- 32MB以上のリクエストはGAEでは処理することはできない
- SSH接続をすることが出来ない(Standard環境のみ)
GAEでのDebug Log等の確認
これはデフォルトで、Cloud Logging(ログ監視)、Cloud Debugger(デバッグ用)、Cloud Trace(レイテンシ確認)が使えるようになっているので、あまり気にする必要はない。
1分制限を伸ばす方法
以下を検討する。10分間処理することが出来るようになる。(らしい)
- Cron Jobを使う
- Cloud Queueを使う
Big Query
Big Queryの料金体系
デフォルトではオンデマンド料金(使った分だけ)となる。でかいクエリを流す時には注意をする必要がある。
dry runオプションをつければどれくらいのサイズをスキャンすることになるかが見積もれるので、クエリを流す前に確認しよう。
Googleとしては、パーティションを日付単位にしておいて、スキャンの量を減らすことをお勧めしている模様。
Big Queryの基本概念(データセット、テーブル、ジョブ)
# | 種類 | 詳細 |
1 | データセット | リレーショナルデータベースでいうNameSpaceのようなもの、どのアプリケーション用のデータが入っているか?の区分け。 |
2 | テーブル | リレーショナルデータベースでいうテーブルそのもの。スキーマも持つ。 |
3 | ジョブ | クエリの実行(Read、Write、Create・・・)、インポート、エクスポート等。 BigQueryでジョブを実行できる権限といったら、JobUserと考えればOK。 |