作成日
2022/07/27最終更新
2024/12/28記事区分
一般公開Beanstalk
- EC2、Auto Scaling Group、ELB、RDS 等が組み合わせられて、一つのサービスのようにまとめています。beanstalk what is
- それぞれのサービスの設定は隠蔽されておらず、通常のサービス利用時と変わりません。
- Beanstalk 自体は無料で利用できます。
- Tomcat (Java)、IIS (.NET)、Docker といった技術スタックのアプリケーションを AWS で稼働させるときに活用できます。
- オンプレで稼働するアプリケーションの re-platform に利用できます。
- Web Tier 環境、Worker Tier 環境 といった目的別の環境を構築できます。Elastic Beanstalk worker environments
- それぞれの環境は SQS で結合できます。
AWS OpsWorks
- AWS マネージドな Chef、Puppet のサービスです。What Is AWS OpsWorks?
- 例えば、オンプレミス環境で chef を利用している場合、AWS 移行のために活用できます。
- Blue-Green デプロイメントをサポートしています。Using a Blue-Green Deployment Strategy
- 補足: Canary デプロイメントはサポートしていません。
CloudFormation
- Elastic Beanstalk、Service Catalog、SAM の内部で利用されています。
- Secret をテンプレート適用時に動的に生成する記法も備えています。Create secrets in AWS CloudFormation
- CreationPolicy
- 新規リソース作成時の success condition を記述します。
- UpdatePolicy
- 既存リソースの更新方法について記述します。
- DeletionPolicy
- CloudFormation テンプレートが削除された際、リソース削除の方針について記述します。
- Retain → リソースを削除せず保持するように指定できます。
- Snapshot → 例えば EBS のスナップショットを取得するように指定できます。
- Delete (既定値) → リソースを削除します。S3 バケットを削除するためには、中身のオブジェクトが空になっている必要があります。また、一部のリソース (例: RDS DB Cluster) については、既定値は Delete ではなく Snapshot です。
- CloudFormation テンプレートが削除された際、リソース削除の方針について記述します。
- IAM 権限
- CloudFormation stack をデプロイした IAM principal の権限で動作します。
- IAM role をアサインしておくことも可能です。AWS CloudFormation service role
- stack で作成する対象リソースが IAM である場合、
CAPABILITY_IAM
とCAPABILITY_NAMED_IAM
が必要になります。- 意図しない作成を予防するための仕組みです。Acknowledging IAM resources in AWS CloudFormation templates
- Custom resources
- Lambda 関数を利用します。
- AWS リソース以外のリソース、あるいは CloudFormation ではサポートされていない AWS リソースを CloudFormation で管理できるようにします。
- Cross Stacks Walkthrough: Refer to resource outputs in another AWS CloudFormation stack
- 例: VPC 用の stack の出力を、別の stack で利用します。
- Nested Stacks Working with nested stacks
- CloudFormer
- 既存の AWS リソースから CloudFormation テンプレートを出力します。Building AWS CloudFormation Templates Using CloudFormer
- ChangeSets
- 適用前に、CloudFormation を適用した場合に発生する差分を preview できます。Updating stacks using change sets
- StackSets
- 複数アカウント、または複数リージョンに対して、CloudFormation template を適用します。Working with AWS CloudFormation StackSets
- AWS Organizations と併用できます。AWS CloudFormation StackSets and AWS Organizations
- Stack Policies
- Stack を意図せず更新または削除しないようにするための設定です。Prevent updates to stack resources
- Cloud Development Kit (CDK)
- Python、JavaScript、Java といった言語で記述したソースコードを CloudFormation テンプレートに変換するツールです。What is the AWS CDK?
Working with AWS CloudFormation StackSets
Service Catalog
- What Is AWS Service Catalog?
- 利用者に IAM 権限を直接付与することなく、組織内で承認された AWS リソースをセルフサービスで構築してもらうためのサービスです。
- 内部的には CloudFormation を利用します。
- ServiceNow といった製品と統合できます。
- Identity and Access Management in AWS Service Catalog
- AWSServiceCatalogAdminFullAccess → 最も強い権限の managed policy。
- AWSServiceCatalogAdminReadOnlyAccess → 上記権限の readonly。
- AWSServiceCatalogEndUserFullAccess → 利用者として、launch product および manage provisioned products するための権限。
- AWSServiceCatalogEndUserReadOnlyAccess → 上記権限の readonly。launch product や manage provisioned products は不可。
- AWS Budgets を連携させることで、products や portfolios で発生した料金を product details ページで確認できるようになります。Managing Budgets
Serverless Application Model (SAM)
- Serverless Application Model (SAM)
- サーバレスアプリケーションを開発デプロイするためのフレームワークです。
- AWS マネージドサービスではなく、ローカル PC で利用するツールです。What is the AWS Serverless Application Model (AWS SAM)?
- Lambda、DynamoDB、API Gateway、Step Functions
- 特に Lambda については、CodeDeploy を利用して関数をデプロイできます。
- 設定ファイルは YAML で記述します。
- 内部的には CloudFormation を利用します。
Systems Manager
- AWS Systems Manager は AWS 初期の頃から存在するサービスで、旧称は SSM (Simple Systems Manager) です。
- EC2 インスタンス、オンプレミスのシステムを管理するためのサービスです。
- 利用料金は基本的に無料です。
- Linux だけでなく Windows OS に対しても機能します。
- SSM Agent をシステム内にインストールする必要があります。
- Amazon Linux AMI には既定でインストールされています。
- SSM 経由でインスタンスを制御できない場合の原因としては、SSM agent が正常に動作していないことが考えられます。
- また、EC2 インスタンスの IAM role が SSM API を実行する必要な権限を持っている必要があります。
- Parameter Store
- Run Command AWS Systems Manager Run Command
- SSH 接続は不要です。
- SSM Agent が RunCommand を受けて、コマンドを実行します。
- コマンドの実行結果はコンソールから確認できます。
- Patch Manager AWS Systems Manager Patch Manager
- OS に適用されるパッチを制御できます。
- Patch Baseline の名称
AWS-DefaultPatchBaseline
はAWS-WindowsPredefinedPatchBaseline-OS
の別名です。About predefined and custom patch baselines AWS-RunPatchBaseline
ドキュメントを Run Command で実行する際、対象 OS は Windows に加えて Linux も含まれます。- 従来の legacy SSM ドキュメント
AWS-ApplyPatchBaseline
については Windows OS のみです。About the AWS-RunPatchBaseline SSM document
- 従来の legacy SSM ドキュメント
関連記事
- AWS EC2 インスタンスの選定方法準仮想化と完全仮想化 AWS のインスタンスタイプが準仮想化と完全仮想化のどちらの仮想化技術を採用したハードウェアであるかによって、使用できる AMI (OS) が異なるのは以下の理由によります。 準仮想化 ParaVirtualization (PV) において OS は自分が仮想化用のハードウェア上で動作していることを知っています。つまり仮想化用にカスタマイズされた専用の OS が必要になりま...
- OpenVPN で二つの VPC をつなぐための設定インターネット VPN (Virtual Private Network) には二拠点間の通信を暗号化する方式によって IPsec-VPN や SSL-VPN などがあります。OpenVPN は SSL-VPN の実装のひとつです。AWS VPC を二つ用意してそれらを OpenVPN で接続してみます。 VPC の構成 myvpc-1 (10.1.0.0/16) mysubnet-1-1 (10...
- Windows Server EC2 インスタンスへの CAL インストールWindows サーバを AWS EC2 インスタンスとして起動した後は、RDP 接続が必要となります。RDP 接続を行なうためには Remote Desktop Services (RDS) ライセンスが必要となります。 Windows Server のライセンスは、管理用途の RDS 接続を許可しています。その際に RDS ライセンスは不要です。ただし、[同時接続数が 2 という制限があります...
- AWS Lambda の基本的な使い方AWS Lambda はイベントドリブンな「関数」を登録できるサービスです。例えば S3 に画像がアップロードされたときにサムネイル用のサイズに加工する処理が記述された関数を登録できます。基本的な使い方をまとめます。 事前準備 関数の登録はブラウザで AWS コンソールにログインして行うこともできますが、本ページでは AWS C
- AWS 落穂拾い (Data Engineering)Kinesis Kinesis Streams データは 3 AZ にレプリケーションされます。Amazon Kinesis Data Streams FAQs 24 時間 (既定値) から 1 年までデータ保持できます。[Changing the Data Retention Period](https://docs.aws.amazon