AWSサービスの機能を調べる(Developer Tools)
皆さんは、AWSクラウドが持つ機能を調べるとき、どうしていますか?
また、使おうと考えているサービスの仕様をどのように調べていますか?
私はこのところ、AWSサービスの機能のホントのところを確認するために、AWS公式ホームページの「AWSサービス別資料」で確認を取っています。
(資料には、SlideShare 、PDF 、Youtube があります)
ちまたのインターネットでの技術ネタを調べることも過去多かったのですが、情報の鮮度もありますし、やっぱり本家の情報がしっくりと安心できます!!
今回は、この画面の左にあるカテゴリー分けから「Front-End Web & Mobile」を選んだときに、各資料にはどのような情報が含まれているかを箇条書きにします。(99-99 形式の数字はページを表します)
Developer Tools
●●●資料【01_AWS Chalice】
10-15 スケルトンプロジェクトを作成
16-18 自動生成されたサンプルアプリケーション
19-23 サンプルアプリケーションをデプロイ ※ httpie をインストール(21)
25-30 AWS 上ではどのように構成されるのか
31-34 IAMポリシーを自動で作成 ※ 現実的にはまだ実用的ではない旨の説明
37Page WEB API 実装のための基本機能
39-41 URL Parameters
43-47 HTTP Methods
49Page Request Metadata
50-52 Request Metadata – HTTP Method
53-54 Request Metadata – HTTP Headers
55Page Request Metadata – Query Parameters
56-59 Request Metadata – URI Parameters :EXAMPLE NOTE
60-61 Request Metadata – Request Body
62Page Request Metadata – Additional Request Context
64-68 Custom HTTP Response
70-73 Error HTTP Response
75page 一歩進んだ API 実装のための機能
※ Blueprintsは後方互換性を破る実装がなされる可能性がある
• Lambda Functions(スタンドアローン)
• Lambda イベントソース
• Amazon CloudWatch Events
• Amazon S3
• Amazon SQS
• Amazon SNS
78Page その他の Lambda Functions – SQS
80Page さらにもう一歩先に
• Python Versions
• App Packaging
• Logging
• SDK Generation
• Chalice Stages
• Configuration File
• Policy Generation
• Local Mode ※ ローカル環境で実行できる
• Lambda Layers
• Experimental APIs
• WebSocket Support (Coming soon?)
84-94 ユニットテスト
95-106 実践的開発プロセスCI/CD
chalice deployは推奨されない
⇒ generate-pipelineサブコマンドで CFn_templateを生成(-bオプション付加)
●●●資料【02_AWS CodeStar & AWS CodePipeline】
8-16 CI/CD が必要となる背景
18-25 AWS CodeStar の概要
19Page プロジェクトテンプレートを選ぶと CI/CD 環境が自動で作成される
20Page プロジェクト ダッシュボード
21Page パイプラインの自動生成(CodePipeline)
22Page 開発ツールとの連携
23Page セットアップ内容
• プロジェクトテンプレートの選択(EC2 or Beanstalk or Lambda)
• プロジェクトの設定
• リポジトリ(CodeCommit、GitHub)
• プロジェクトの編集
• プロジェクトダッシュボード
• CodePipeline 継続的デプロイメントパイプライン
• CloudWatchメトリクス
24Page AWS CodeStar の操作: プロジェクトを作成
25Page AWS CodeStar の操作: チームメンバを追加・削除
26Page AWS CodeStar の料金
28-34 AWS CodePipeline概要
30Page CodePipeline の定義
31-35 CodePipeline の操作: パイプラインの作成
36Page CodePipeline の操作: パイプラインの編集
37Page CodePipeline の操作: パイプラインの実行開始、停止
38page CodePipeline の操作: パイプラインの実行履歴を表示
39page CodePipeline の操作: パイプラインの実行結果の通知
40-41 参考資料: ビルドやテスト結果をSlack等に通知する
42-43 AWS CodePipeline がサポートしているプロバイダー
44Page AWS CodePipeline と統合可能な製品
45-46 Custom アクション
47Page AWS Lambda ファンクションの実行
48Page AWS Step Function の実行
49Page Approval アクション
50Page 並列アクションと逐次アクション
51Page 実行時のアクション間の変数引き渡し
52Page 構成例: Amazon ECS での CI/CD パイプライン
53Page 構成例: サーバーレス での CI/CD パイプライン
54Page 構成例: GitHub, Jenkins との連携
55Page AWS CodePipeline のクォータ
56Page AWS CodePipeline の料金
58-59 インターネットを経由せずにパイプラインを作るには?
60Page 参考資料: AWS Developer Tools を活用した Git-flow
61Page クロスアカウントでパイプラインを作るには?
62Page 参考資料: Cross-Account CI/CDパイプライン ワークショップ
●●●資料【03_AWS Cloud9】
8Page なぜ新しいIDEを開発したのか?
9-22 1.開発者はクラウド向けのアプリを構築しているが、
開発にはローカルマシンを利用している
2.開発環境のセットアップが面倒
3. 開発者はコードのより容易なコラボレーションの方法が必要
(リアルタイム共同コーディング)
4.今のIDEはまだサーバーレスアプリケーションに必要な機能に追いつけていない
+AWSサービスに直接ターミナルアクセス
26-27 Express Setup:個人利用のみ
28page Team Setup:複数ユーザを管理
29Page Advanced Team Setup:コストを抑える
30-37 ポリシー例
38Page [参考] AWS Managed Temporary Credentials
AWS SettingsでOFFして、EC2インスタンスプロファイルの設定
OR 環境変数かaws configureによる永続的なクレデンシャルの設定
40-43 Demo AWS Cloud9 IDE(環境を設定する操作)
・本番実行環境⇔ローカル環境で、ソースを同期できる
・サーバレス環境をターゲットにできる
44Page AWS Lambda(Python)のImport
45-46 Demo Pair Programming(1画面をペアできる)
47Page AWS Cloud9 プレビュー機能
48Page AWS Cloud9 統合開発環境の言語サポート
https://docs.aws.amazon.com/ja_jp/cloud9/latest/user-guide/language-support.html
49Page 価格
●●●資料【04_AWS CodeDeploy】
9Page AWS CodeDeployとは
10Page Pull 型のデプロイ手段
12Page アプリケーションとコンピューティングプラットフォーム
13Page デプロイグループ
14-16 デプロイタイプ
17Page デプロイ設定
18-26 デプロイ設定 EC2/オンプレミス
27-31 デプロイ設定 Lambda / ECS
32Page リビジョンとターゲットリビジョン
33Page サービスロール
34Page IAM インスタンスプロファイル
36-51 EC2/オンプレミス デプロイメント
47Page リビジョンの構成
48Page CodeDeploy EC2/オンプレミス appspec
49Page デプロイライフサイクルイベント
50-51 AWS CodeDeploy Agent
53-66 AWS Lambda のデプロイ
60Page CodeDeploy Lambda デプロイメント (appspec)
61Page CodeDeploy Lambda デプロイメント (SAM)
62Page デプロイライフサイクルイベント
63-66 CodeDeploy Lambda カナリアデプロイメント
68-92 Amazon ECS のデプロイ
74Page CodeDeploy ECS appspec
76Page デプロイライフサイクルイベント
77-82 CodeDeploy ECS blue/greenデプロイメント
83-92 重要:デプロイメントのためのコンテナイメージのタグ付け
機能紹介
94Page Validation Hook Lambda
95Page CloudWatch アラームによるデプロイ停止
96Page ステータスの通知
97Page VPC エンドポイントをサポート
99Page 利用料金
●●●資料【05_AWS CodeCommit & CodeArtifact】
11-13 AWS CodeCommitとは
14Page CodeCommit を利用するには
15Page HTTPS 接続と Git 認証の手順
16Page HTTPS 接続 – IAM からの Git 認証情報の作成
20-21 Local Git から CodeCommit への接続
22-23 Visual Studio からの接続
24Page 他の Git リポジトリからのマイグレーション
25Page 参考資料:git を学ぶ
Pro Git
https://git-scm.com/book/ja/v2 (日本語)
Git Cheat sheet
https://training.github.com/downloads/ja/github-git-cheat-sheet.pdf (日本語)
Git Immersion
http://gitimmersion.com/
Git Reference
https://git-scm.com/docs
git はHTTP利用時、デフォルトで毎回ユーザー名、パスワード入力を求めるが、
git config –global credential.helper を利用することでクレデンシャル情報を
キャッシュまたは保存することが可能
https://git-scm.com/book/en/v2/Git-Tools-Credential-Storage
26-34 コンテンツの参照・編集・追加、コミット履歴の表示
35-38 プルリクエストの作成、コメント、マージ
39Page プルリクエストの承認ルールワークフロー
40Page Amazon CodeGuru Reviewer との連携
41Page AWS CloudTrail を利用した API コールログ取得
42Page ブランチレベルのアクセス許可
43Page VPCエンドポイントをサポート
44Page リポジトリイベントの通知
45Page AWSサービスとの連携
46Page AWS CodeCommit 制限事項
47PAge 料金
49-50 AWS CodeArtifactとは
51-52 ドメイン、リポジトリ
54-57 リポジトリの作成
58Page パッケージマネージャの設定
59-61 パッケージの取得、登録
62Page AWS CodeBuild からの利用例
63-64 VPC エンドポイントをサポート
:S3のVPCエンドポイントも必要
:パッケージマネージャの設定時にエンドポイントURLの指定が必要
65Page AWS CloudTrailを利用した APIコールログ取得
66Page Amazon EventBridgeとの連携
67Page AWS CodeArtifactの制限事項
68PAge 利用料金
●●●資料【06_AWS_CodeBuild】
9-11 AWS CodeBuildとは
12-16 AWS CodeBuild の仕組み
17-23 AWS CodeBuild プロジェクトの作成
24-25 ソースの作成
26-27 ビルドの実行
29-30 buidspec.yml の構成
31-32 version:buildspec のバージョン(必須)
33Page run-as:コマンドを実行する Linux ユーザ
34Page env:環境変数
35Page proxy:プロキシサーバ設定
36Page batch:バッチビルド設定
37Page batch/build-graph :
バッチビルド設定 ⇒ バッチ内の他のタスクに依存する一連のタスクを定義
38Page batch/build-list :バッチビルド設定 ⇒ 同時に実行されるタスクを定義
39Page batch/build-matrix:
バッチビルド設定 ⇒ さまざまな環境と並行して実行されるタスクを定義
40Page phases:実行するコマンド(必須)①install ②pre_build ③build ④post_build
41Page reports:テストレポート作成
47Page artifacts:AWS CodeBuild の出力
48Page cache:キャッシュ設定
53-54 ビルドをローカルで実行する
55-57 AWS Session Manager でビルド環境へアクセスする
58-61 Session Manager でビルド環境へアクセスする
62Page ビルドバッジ
63Page ステータスの通知
64Page VPC 内リソースへのアクセス
65Page VPC エンドポイントをサポート
66Page 利用料金
22種類のユースケースベースのサンプル
• https://docs.aws.amazon.com/ja_jp/codebuild/latest/userguide/use-case-based-samples.htm
●●●資料【07_AWS Command Line Interface】
8Page AWS Command Line Interface (AWS CLI)とは
9Page (参考) AWS Tools for Windows PowerShell
12Page 通信経路 (端末から操作する場合)
13-14 通信経路 (バッチ等でサーバから操作する場合)
18Page セットアップの流れ
http://docs.aws.amazon.com/ja_jp/cli/latest/userguide/cli-chap-getting-set-up.html
19Page Step 1 – IAMの設定
20Page AWS CLIの認証の仕組み
21Page Step 2 – AWS CLIのインストール
22Page Step 3 – 初期設定
23Page (参考) AWS CLIを簡単に実⾏する環境のご紹介
27Page AWS CLIの操作⽅法について
28Page 実⾏コマンドの形式
29Page –profile オプション:設定ファイル (プロファイル)切り替え
30Page –region オプション
31Page –output オプション:JSON、Text、Table
32-38 –query オプション:標準出⼒をJMESPath仕様でフィルタリング
39-41 JMESPathについて
42Page (参考) JMESPathの動作確認ツール:JMESPath Terminal
→ https://github.com/jmespath/jmespath.terminal
43Page 処理速度向上について –filter –query
44Page helpサブコマンド
45Page waitサブコマンド
46Page リターンコード
47Page CLIスケルトンの⽣成、実⾏
48Page コマンド補完
52Page よく使うAWS CLIの設定
53-57 複数プロファイルの設定、実⾏⽅法
58Page S3コマンドの設定
59-68 aws s3 cp の仕組み
69Page AWS CLIのエイリアス作成方法
70Page HTTPプロキシの設定
AWS CLIの操作パターン集
75-77 サービス
78-82 S3に置かれたファイルをディスクに保存せず圧縮したい
●●●資料【08_AWS SDK】
8-14 AWS SDKとは
15Page AWS Mobile SDK
16PAge AWS SDK for Go
17Page AWS Mobile SDK for Unity
18Page AWS Mobile SDK for Xamarin
19Page AWS SDKの用途
20Page SDKを使って利用するサービス(一例)
21Page AWS SDKの基本的な使い方
23-24 (参考)2-Tier Architecture
25Page (参考)例1:静的ファイルだけで動的サイト
26Page (参考)例2: 写真共有モバイルアプリ
27-31 SDKを使う際の認証情報の扱い
32Page Shared credentialsファイル
33-34 IAMロール
35Page IAMユーザー利用との比較
36-37 モバイルアプリの場合、Amazon Cognitoを使うことで
40-42 AWS SDK for Java 概要
43Page AWS Toolkit for Eclipse
45-49 AWS SDK for .NET
50Page AWS Toolkit for Visual Studio
51-54 AWS SDK for PHP
56-58 AWS SDK for PHP
60-62 AWS SDK for Ruby
64-70 AWS SDK for JavaScript in Node.js
72-74 AWS Mobile SDK for Android
76-79 AWS SDK for JavaScript in the Browser
●●●資料【09_AWS SDK for Java/.NET】
4-9 AWS SDK オーバービュー
10-11 AWS SDK for Java
12Page 使い方
14Page AWS Toolkit for Eclipse
22Page SDKならではの機能
23-24 IAM Role for EC2 instances
25-27 MFAデバイスを使ったAPIコール
28-30 Java SDKの構成
31Page SDKの有効な利用方法
32Page アドバンスドなトピック
33Page ClientConfiguration
34Page RequestHandler
35Page CustomBackoffStrategy
36Page Marshaller/Unmarshaller
38-40 AWS SDK for .NETとは
41Page AWS SDK for .NETに含まれるもの
①AWS Toolkit for Microsoft Visual Studio
②Visual Studioプロジェクトテンプレート
③AWS Tools for Windows PowerShell
④AWS .NETライブラリ
⑤C#コードサンプル
⑥ドキュメント
42Page インストール方法
43-55 AWS Toolkit for Visual Studio
56-59 .NET SDKの特徴
●●●資料【10_AWS SDK for PHP & AWS SDK for Ruby & boto(Python) & JavaScript in Node.js】
6-9 AWS SDK概要
10Page AWS SDKの使い方
11-15 Credentialの取り扱い
17-20 AWS SDK for PHP
21-26 サンプル
27Page 活用法法
28-29 PHP版SDKの便利なクラス:DynamoDBSessionHandler
31-35 botoとは
36-41 サンプル
42Page その他Tips:AWS CLIもbotoを⼀部利用している
44-47 AWS SDK for Rubyとは
48-53 サンプル
54-55 新しいRubySDK (ver2)、RailsのセッションをDynamoDBに保存
56-59 AWS SDK for JavaScript in Node.jsとは
60-65 サンプル
●●●資料【11_AWS Client-side SDK – Android, iOS and Javascript】
4-8 AWS SDK オーバービュー
10Page AWSのマネージドサービスを活用した2-tierのアーキテクチャが組める
11Page 例1:静的ファイルだけで動的サイト
12-16 例2: モバイルアプリ間でメッセージング
17Page その他の例:非同期バッチ処理
18Page その他の例:ログやイベント情報の集計処理
19Page Amazon SNSへのデバイストークンの登録も直接可能
20Page クライアント側SDK活用のメリット
22-24 AWS CREDENTIALSの取扱い
25-26 Security Token Service
27-29 Web Identity Federation
30Page 独自の認証機構を用いる場合
31Page AnonymousTVM、IdentityTVM
32Page AnonymousTVM
33Page Identity TVM
34-35 Web Identityを用いたFine Grained Access Control
38-42 AWS SDK FOR ANDROID
43-46 コード例
47Page Android SDK利用時のTips
49-53 AWS SDK for iOSとは
54-57 コード例
58Page iOS SDK利⽤時のTips
60-63 AWS SDK for JavaScript in the Browserとは
64-65 コード例
●●●資料【12_AWS X-Ray】
10-14 AWS X-Ray の概要
16-26 AWS X-Ray の概念
28Page AWS X-Ray によるアプリケーション分析
29-32 サービスマップ
33-34 フィルタ式
35Page グループ
36-38 トレースリスト
39Page セグメント・サブセグメント
40Page カスタムサブセグメント
41-43 セグメント詳細
44Page アナリティクス
45Page フィルタリングされたトレースセット
46Page 応答時間の分布
47Page 時系列アクティビティ
48-49 メトリクステーブル
50-58 アナリティクスを用いたワークフローの例
59-66 サンプリング
68-76 AWS X-Ray のデータ収集の仕組み
70Page AWS X-Ray SDK
72Page AWS X-Ray デーモン
75Page AWS X-Ray API
AWS X-Ray の利用方法
78Page AWS Lambda
79Page Amazon API Gateway
80Page AWS Elastic Beanstalk
81Page Amazon EC2
82Page Amazon ECS
83Page AWS App Mesh
84Page Amazon SQS, Amazon SNS
85Page AWS SAM, CDK
86-87 AWS X-Ray SDK (Node.js)
89Page Amazon CloudWatch ServiceLens
90Page Amazon CloudWatch Synthetics
92Page 料金 (2020/5/26 現在)
93Page 注意点:サンプリングについて、トレース頻度と料金とパフォーマンス