More Related Content Similar to AWS & Google Cloudを使ったシステム開発/技術選定のはなし
Similar to AWS & Google Cloudを使ったシステム開発/技術選定のはなし (20) AWS & Google Cloudを使ったシステム開発/技術選定のはなし10. クラウドアーキテクチャのベストプラクティス
フレームワークの 5 本の柱
• 運用上の優秀性(OPS)
• セキュリティ(SEC)
• 信頼性(REL)
• パフォーマンス効率(PERF)
• コスト最適化(COST)
• 設計原則
• 運用をコードとして実行する
• 小規模かつ可逆的な変更を頻繁に行う
…
• 分野
• 組織
• 準備
…
• ベストプラクティス
• 組織
• OPS 1: 優先順位はどのように決定すればよいでしょうか?
• 外部顧客/内部顧客のニーズを評価する
• ガバナンス要件/コンプライアンス要件を評価する
• 改善計画:AWS Trusted Advisor による脅威の状況評価
…
https://wa.aws.amazon.com/index.ja.html
12. ソリューションの選択
• PERF 2: コンピューティングはどのように選択するのですか?
• 使用可能なコンピューティングオプションを評価する(インスタンス、コンテナ、関数(FaaS))
• 利用可能な伸縮性のあるリソースを使用する
• メトリクスに基づいてコンピューティングニーズを再評価する
• PERF 3: ストレージソリューションをどのように選択していますか?
• ストレージ特性と要件を理解する
• 利用可能な設定オプションを評価する
• アクセスパターンとメトリクスに基づいて意思決定を行う
• REL 1:サービスクォータと制約はどのように管理しますか?
• サービスクォータと制約を認識する
• アーキテクチャを通じて、固定サービスクォータと制約に対応する
13. 具体的な提案
• REL 9: データはどのようにバックアップするのですか?
RTOとRPOの要件を満たすように、データ、アプリケーション、設定をバックアップします。
• ソリューション別のバックアップ方法
• EBS スナップショット、AWS Backup(EFS), RDS スナップショット
• DynamoDBオンデマンドバックアップ、ポイントインタイムリカバリ
• ソリューション別の暗号化オプション
• データバックアップを自動的に実行する
• AWS Backupによるスケジューリング
• Step Functionsによるバックアッププロセスの自動化(具体的なテンプレートなどは無し)
• データ復旧
• Step Functionsによる復旧プロセスの自動化(具体的なテンプレートなどは無し)
16. しばらく使ってみて
• 新規システム
• 考慮漏れの予防になる
• 既存システム
• 課題解決のヒント、気づき
• システム自体に手を入れにくいケースでも、手順のコード化やドキュメント整理に
• AWS以外でも
• GoogleCloudで構築しているシステムにもWell-Architectedレビューか
けています
• 「チーム」の計画や習慣の見直しになる
• 定期的な分析の機会、タスクの進め方 → チーム自体の改善
• ドキュメントが整備されてきている
• Well-Architectedが出た頃よりドキュメントが充実してきていてる
22. デザインパターン
• 概要
• 解決する問題
• アーキテクチャ
• 機能要件 / 非機能要件
• メリット
• 注意事項
• 推奨設定
• 事例
• 参照ドキュメント
Google Cloudソリューションデザインパターン
https://events.withgoogle.com/solution-design-pattern/
各種ワークロード
• 共通ソリューソン
• エンタープライズ
• アプリケーション/データモダナイ
ゼーション
• クラウドネイティブ アプリケーション
• インフラストラクチャ / データベー
ス / ネットワーク
• データプラットフォーム(分析/AI)
• 業界別ソリューション
• ゲーム
• 流通・小売
• 公共機関
23. • 2020/12 にできたページ
• 「いろいろ検証してたどり着いたこと、ここに書いてあるやん」
例:クラウドネイティブ アプリケーション
• https://events.withgoogle.com/solution-design-pattern-app-
modernization-database-modernization/cloud-native-applications
Google Cloudソリューションデザインパターン
26. AWS / Google Cloud / 3rd
AWS Google Cloud 3rd
CI/CD Code Pipeline
Code Build
Code Deploy
Cloud Build Circle CI
Travis CI
GitHub Actions
IaC Cloud Formation
SAM
CDK
Deployment Manager Terraform
severless
監視・モニタリング Cloud Watch
X-Ray
Cloud Monitoring
Cloud Trace
Cloud Profiler
New Relic
Datadog
Mackerel
例
これらを組み合わせて利用することも可能
例) CI/CDでパイプラインはCircle CIを使い、デプロイはCode Deployを呼び出す
33. 制約の確認
特性の把握
例
• イベント配信
• 重複配信される? 1回のみ?1回以上(At least once)?
• 配信の順番は?FIFO?順不動?
• データ更新
• 結果整合性?強い整合性?
• 料金のかかり方
• 何に対して、何に比例して料金がかかる?
これらの制約もアップデートされることがある
(例)2020年12月 S3の全ての操作が「強い整合性」に
43. 自己紹介
所属 : クラウドインテグレーション事業部 MSP開発セクション@大阪オフィス
役割 : 開発エンジニア・iretシニアスペシャリスト
2018/04 入社
AWSを中心とした設計・構築やバックエンド開発
社内の監視業務の改善・効率化に従事
2021 AWS APN Top Engineers
山﨑 慎太郎
Shintaro Yamasaki
45. Q & A
• AWSとGoogle Cloudどのように使い分けていますか?
• これは便利だと思うAWSとGoogle Cloudのサービスを
教えてください!
Editor's Notes 資格もここに一応のせとく お客様のクラウド環境を構築したり監視運用保守するといったことを提供しているのですが
その業務を支援や一部自動化するためのシステムを開発・保守役割です
お客様環境がAWSやGoogle Cloudで構成されていますが、我々の作っているサービス自体もAWSやGoogle Cloudeで作っています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 お客様のクラウド環境を構築したり監視運用保守するといったことを提供しているのですが
その業務を支援や一部自動化するためのシステムを開発・保守役割です
お客様環境がAWSやGoogle Cloudで構成されていますが、我々の作っているサービス自体もAWSやGoogle Cloudeで作っています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。 IaCのコード自体を とりあえずSlackに残しておけば、あとから検索で当時の思考を辿れることが多い
クラウドは日々アップデートされていくので当時の制約やそれに対しての考察を残しておくと助かる コンテナはベンダーロックインを気にしているというより、再現性の高い環境をどこにでも持って行きやすく、Dockerfileなどで環境定義もコード管理しやすいのでよく利用しています。