Amazon Web Services ブログ

Tag: CDK

Amplifyで構築したバックエンドをCDKで出力して既存のデプロイパイプラインで使用する新機能「エクスポート」のご紹介

この記事は、Export Amplify backends to CDK and use with existing deployment pipelines を翻訳したものです。 AWS Amplifyは、Amplify CLIで生成されたバックエンドをAWS Cloud Development Kit (CDK)スタックとしてエクスポートし、既存のCDKデプロイメント・パイプラインに組み込む機能を発表しました。この新機能により、フロントエンド開発者はアプリのバックエンドを迅速に構築し、リリースの準備毎に、DevOpsチームと連携し本番環境にデプロイすることができます。

Read More

AWS CDKまたはCloudFormationを使用し、カスタムAWSリソースでAmplifyバックエンドを拡張する新機能「カスタム」のご紹介

この記事は、Extend Amplify backend with custom AWS resources using AWS CDK or CloudFormation を翻訳したものです。 AWS AmplifyでAWS Cloud Development Kit(CDK)またはAWS CloudFormationを使用し、Amplifyが作成したバックエンドに175以上のAWSサービスを追加する新しいコマンドamplify add customが発表されました。カスタムリソースを追加する新しい機能により、開発者は1つのコマンドでAmplifyに組み込み済みのユースケース以外にリソースを追加できます。

Read More
CDKでAmplifyで生成されたバックエンドリソースをカスタマイズする

Amplifyで生成されたバックエンドリソースをCDKでカスタマイズする新機能 「オーバーライド」のご紹介

この記事は、Override Amplify-generated backend resources using CDKを翻訳したものです。 AWS Amplifyは、開発者がAmplifyで生成されたAWS IAM、Amazon Cognito、Amazon S3、およびAmazon DynamoDBのリソース構成を上書きし、アプリの要件を最適に満たす機能を発表しました。 開発者はAmplifyが提供する標準のリソースを使用してバックエンドを簡単に構成できますが、この新しい “オーバーライド” 機能を用いることでさらに細かいリソースの設定をカスタマイズできます。

Read More

AWS Cloud Development Kit v2 開発者プレビューのお知らせ

AWS Cloud Development Kit (AWS CDK) v2が開発者プレビューとして、TypeScript、Python、Java、C#、Go言語で利用できるようになりました。AWS CDKは、使い慣れたプログラミング言語を使ってクラウドアプリケーションのリソースをモデル化し、プロビジョニングするためのオープンソースのソフトウェア開発フレームワークです。AWS CDKを使用すると、インフラストラクチャをコードとして定義し、AWS CloudFormationを通じてプロビジョニングすることができます。AWS CDKは、実績のあるデフォルト値で事前に設定された高レベルなコンポーネントを提供しているため、専門家でなくてもクラウドアプリケーションを構築することができます。また、組織の要件を組み込んだ独自のカスタムコンポーネントを構成して共有することができるため、チームが新しいプロジェクトを迅速に開始することができます。 2019年7月には、TypeScriptとPython向けのAWS CDK v1の一般提供を発表しました。それ以降、JavaとC#の追加言語のサポートをリリースし、Go言語バインディングの開発者プレビューをリリースしました。今回はv2のプレビューリリースを発表します。このリリースによりAWS CDKをより簡単に利用できるようになり、また今後のバージョンアップに対応することがより容易になります。 AWS CDK v1アプリケーションの最新マイナーバージョンからv2への移行は、比較的簡単です。まずAWSアカウントで再度ブートストラップ (cdk bootstrap) をする必要がありますが、これは各リージョンで一度だけの作業です。ほとんどのプロジェクトでは、インポート文を更新し、合成(synth) し、デプロイするだけで済みます。リソースに若干の変更があるかもしれませんが、リソースの作り直しが必要になるようなことはありません。 この記事では、AWS CDK v1とv2の間の変更点をご紹介します。

Read More

AWS CDKでエンタープライズアプリケーションを開発する

エンタープライズのお客様は、ガバナンスやコンプライアンス・品質管理のために Infrastructure as Code (IaC)を標準化しなければならない場合があります。さらに、IaCのライブラリやそのアップデートを中央集権的に管理しなければならない場合もあるでしょう。それらを実現するため、この記事では AWS Cloud Development Kit (AWS CDK) を利用してIaCのパターンを定義する方法や、AWS CodeArtifactを利用してIaCの更新リリースを統制する方法を紹介します。

Read More

Amazon ECS deployment circuit breaker のご紹介

※日本語字幕の表示には、設定 → 字幕 → 自動翻訳 → 日本語をご選択ください EC2 および Fargate コンピュートタイプ用の Amazon ECS deployment circuit breaker をパブリックプレビューで発表しました。この機能により、Amazon ECS をご利用のお客様は、手動での作業を行うことなく、不健全なサービスデプロイを自動的にロールバックできるようになります。これにより、お客様は失敗したデプロイを迅速に発見できるようになり、失敗したタスクのためにリソースが消費されたり、デプロイが無期限に遅延したりすることを心配する必要がなくなります。 以前は、Amazon ECS でデプロイメントタイプにローリングアップデートを使用しているときに、サービスが健全な状態にならない場合、スケジューラは サービススロットリングロジック により永続的にデプロイを再試行していました。このデプロイの失敗を迅速に検知するには、追加でモニタリングの仕組みが必要であり、これは AWS CloudFormation を使用して Amazon ECS サービスをデプロイしているお客様にとっても厄介事の1つでした。 デプロイが失敗する理由はいくつかあり、例えば、コードやサービス構成に破壊的変更を加えた場合、希望のタスク数を立ち上げるために必要なリソースが不足している場合、コンテナやロードバランサのヘルスチェックに失敗した場合などです。ここで紹介したデプロイ失敗のシナリオは一部にしか過ぎず、deployment circuit breaker がどのような場面で役立つかを理解していただくための具体例として取り上げています。このブログの後半では、コンテナのヘルスチェックが失敗した場合のシナリオを例に deployment circuit breaker のデモを行います。   何をデプロイするか? デプロイするデモアプリケーションは Python Flask Web サーバを実行しており、ECS サービスを介してデプロイされたタスク定義の現在のバージョンを表示します。このサービスの作成、デプロイ、更新には AWS CLI を使用します。まずはコード、Dockerfile、タスク定義を見て、これからデプロイされる内容の理解を深めることから始めてみましょう。 この Flask アプリケーションは、タスクメタデータエンドポイントからタスクのバージョンを取得しており、ウェブサイトにアクセスすることで、ECS サービスが実行しているタスク定義のバージョンが表示されます。このアプリケーションは circuit breaker […]

Read More

サーバーレス LAMP スタック – Part 5: CDK コンストラクトライブラリ

本投稿は AWS サーバーレス アプリケーションのシニアデベロッパーアドボケートである Benjamin Smith による寄稿です。 本シリーズの他のパートは以下のリンクからアクセスできます。また、関連するサンプルコードはこちらの GitHub リポジトリにあります。 パート1:サーバーレス LAMP スタックの紹介 パート2:リレーショナルデータベース パート3:Webサーバーの置き換え パート4:サーバーレス Laravel アプリの構築 パート6:MVC からサーバーレスマイクロサービスへ この投稿では、サーバーレス LAMP スタック用の新しい CDK コンストラクトライブラリが、開発者によるサーバーレス PHP アプリケーションの構築にどのように役立つかを学びます。 AWSクラウド開発キット(AWS CDK)は、クラウドアプリケーションリソースをコードで定義するためのオープンソースソフトウェア開発フレームワークです。開発者は、TypeScript、Python、C#、Javaなどの使い慣れたプログラミング言語でインフラストラクチャを定義できます。開発者は、インターフェイス、ジェネリクス、継承、メソッドアクセス修飾子など、言語が提供する機能を利用できます。AWS Construct ライブラリは、CDK アプリケーションで AWS リソースを定義するための API を公開するモジュールの広範なセットを提供します。 「サーバーレス LAMP スタック」ブログシリーズでは、ベストプラクティス、コード例、多くのサーバーレスコンセプトの詳細を紹介し、これらが PHP アプリケーションにどのように適用されるかを示しています。また、PHP 開発者のインスピレーションを刺激するのに役立つ、コミュニティからの貴重な貢献に焦点を当てています。 このサーバーレス LAMP スタックの各コンポーネントについては、一連のブログ記事で詳しく説明しています。 パート1:サーバーレス LAMP スタックの紹介 パート2:リレーショナルデータベース パート3:Webサーバーの置き換え パート4:サーバーレス Laravel アプリの構築 サーバーレス LAMP […]

Read More