Amazon Web Services ブログ

Category: Compute

AWS Lambda の新機能 – 環境変数とサーバーレスアプリケーションモデル (SAM)

AWS Lambda とサーバーレスアプリケーション開発をめぐる興奮のとりこになっています。過去 1〜2 年間に週刊 AWS で、多くのサーバーレスの成功事例、ツール、オープンソースプロジェクトを紹介しました。今回は Lambda に追加された重要な機能として、環境変数と新しいサーバーレスアプリケーションモデルについて説明します。 環境変数 開発者なら、だれでも複数の環境で利用できるコードを構築したいと思います。コードを簡単に再利用するには、実行時に設定値を受け入れられるように構築する必要があります。設定値とは、コードの環境をカスタマイズするためのテーブル名、デバイス名、ファイルパスなどです。たとえば、多くのプロジェクトは開発環境、テスト環境、本稼働環境ごとに設定が異なります。Lambda 関数に環境変数を指定できるようになりました。これでコードを変更または再デプロイすることなく設定の変更が可能になり、これまで以上にサーバーレスアプリケーション開発が効率化されます。各環境変数はキーと値のペアです。キーと値は AWS Key Management Service (KMS) で暗号化され、必要に応じて復号されます。関数あたりの環境変数の数には制限がありませんが、合計サイズは 4 KB を超えることができません。 Lambda 関数を新規作成する場合は、同時に環境変数も設定します。最新バージョンの関数の値は変更できますが、以前のバージョンの値は変更できません。次の例では、シンプルな Python 関数を作成して、いくつかの環境変数を設定し、その環境変数をコードから参照しています (このために os ライブラリをインポートする必要がありました)。 Lambda に用意されているデフォルトのサービスキーを使えば、この機能を使用しても料金はかかりません (独自のキーを使用する場合は、リクエストあたりの KMS の通常料金が適用されます)。この新しい機能の詳細とさまざまな活用方法については、AWS Compute Blog で「サーバーレスアプリケーションを簡素化する Lambda 環境変数」を参照してください。 AWS サーバーレスアプリケーションモデル サーバーレスアプリケーションを構築するために、Lambda 関数、Amazon API Gateway リソース、Amazon DynamoDB テーブルを併用する場合があります。新しい AWS サーバーレスアプリケーションモデル (AWS SAM) を使うと、これらのすべてのコンポーネントを、AWS CloudFormation でネイティブにサポートされている簡略化された構文で記述できます。この構文を使用するには、CloudFormation テンプレートに次のような […]

Read More

EC2 値下げ (C4、M4、そしてT2インスタンスで) 東京リージョンも!

2016年12月1日からEC2の価格を下げるアナウンスをできることを非常に嬉しく思っています。これで皆さんの年末シーズンがすこし楽しくなることでしょう!我々の技術に対する投資と、規模と長年のキャパシティ管理の経験に基いて、コストを抑えることができることになりましたので、皆さんにお伝えします。 我々は、オンデマンド、リザーブドインスタンス (標準もコンバーチブルも)、そして専有ホストの価格を、C4、M4、そしてT2インスタンスにおいて、最大25%の値下げを致します。値下げは全てのAWSリージョンで適応されます。以下に一例としてLinuxタイプのオンデマンドインスタンス料金を示します(全リージョンで値下げは行われます): C4 – アメリカ東部(北部バージニア)とEU(アイルランド)とアジア太平洋(東京)で最大5%削減、アジア太平洋(ムンバイ)とアジア太平洋(シンガポール)では最大20%削減 M4 – アメリカ東部(北部バージニア)とEU(アイルランド)とEU(フランクフルト)で最大10%削減、アジア太平洋(東京)では最大20%削減、アジア太平洋(シンガポール)では最大25%削減 T2 – アメリカ東部(北部バージニア)では最大10%削減、アジア太平洋(東京)で最大20%削減、アジア太平洋(シンガポール)では最大25%削減 ※訳注: オンデマンドとリザーブドインスタンス、またリージョンやプラットフォーム(Linux、RHEL、SUSE、Windows等)によって値下げ率は異なります。価格が据え置きとなっているリザーブドインスタンスタイプもありますので、詳細は料金表を確認ください。 いつものことですが、オンデマンド価格でこの値下げの利益を得るために、皆さんがすべきことは何もありません。もし請求アラートや、新しくなった予算機能を使っているなら、閾値を適切に引き下げることを検討した方が良いかもしれません。 — Jeff 追伸 – 私の計算では、これが我々の53回目の値下げとなります。 原文: EC2 Price Reduction (C4, M4, and T2 Instances) (翻訳: SA岩永) ※訳注: 原文には東京リージョンへの言及が特別にありませんが、今回の値下げは全てのリージョンが対象のため、東京リージョンの価格変更情報も追記しています。

Read More

C2 の汎用 SSD (gp2) ボリュームの新しいバーストバランスメトリックス

AWS ユーザーの多くが、2014 年の中半期にリリースした汎用 SSD (gp2) EBS ボリュームを使用して素晴らしい成果を得ています (詳しくは New SSD-Backed Elastic Block Storage をご覧ください。ご自分のワークロードでどのタイプのボリュームを使用すべきか決めかねている場合は、幅広い種類のデータベース、開発とテスト、ブートボリュームのワークロードにわたり価格とパフォーマンスのバランスが取れている gp2 をお勧めします。このボリュームタイプで興味深いポイントの 1 つはバースト機能です。gp2 のバースト機能は AWS の顧客ベースを観察し、実社会におけるワークロードの I/O パターンに合わせて設計されました。AWS のデータサイエンティスト達は、ボリューム I/O は非常にバースト性が高く短時間で急上昇し、バースト間には十分なアイドル時間があることに気付きました。予測不可能でバースト性を持つトラフィックの性質が gp2 バーストバケットを設計した理由です。小さなボリュームでも 3000 IOPS までのバーストを可能にするほか、アイドル時間中または低レベルで I/O を実行している場合にバーストバケットを補充できるようにすることができます。バーストバケットの設計はすべての gp2 ユーザーに一貫性のある予測可能なパフォーマンスを提供します。実際には gp2 ボリュームが完全にバーストバケットを消耗することは非常に少なく、ユーザーは使用パターンをトラッキングし必要に応じて調整できるようになりました。さまざまなボリュームタイプのパフォーマンス最適化と、ベンチマークと実際のワークロードの違いに関するドキュメントはすでに提供済みです (詳しくは I/O Characteristics をご覧ください)。最初のブログ投稿で説明したように、バーストクレジットは設定済み GB/秒ごとに 3 倍の割合で蓄積し、読み取りまたは書き込み 1 回ごとに 1 つ使用されるようになっています。各ボリュームは 540 万クレジットまで蓄積することができ、ボリュームごとに 3,000 クレジット/秒の割合で使用することができます。使用を開始するには希望するサイズの gp2 ボリュームを作成し、アプリケーションを起動します。ボリュームの I/O […]

Read More

クラウドおよびオンプレミスワークロード用の新しい Amazon Linux Container Image

The Amazon Linux AMI は、EC2 上で実行しているアプリケーションにセキュアで安定した、高パフォーマンスの実行環境を提供します。リモートアクセスが制限され (ルートログインや必須の SSH キーペアがない)、重要でないパッケージがほとんどインストールされていない AMI は、優れたセキュリティプロフィールを誇ります。 たくさんの顧客から、この Linux イメージをオンプレミスで、特に開発ワークロードやテストワークロードの中で使用したいというリクエストがありました。 クラウドとオンプレミスでの使用に適した Amazon Linux Container Image の提供開始を今日発表することができ、光栄です。イメージは EC2 コンテナレジストリから入手できます (アクセス方法については、イメージの入手をお読みください)。AMI と同じソースコード、同じパッケージで構築されているため、コンテナの導入がスムーズに実行できます。そのままで使用することも、独自のイメージを作成するための土台として使用することもできます。 それを試してみるため、私は、作成したばかりの EC2 インスタンスを起動し、Docker をインストールし、新しいイメージを入手して実行してみました。その後、cowsay と lolcat (と依存関係) をインストールし、上記のイメージを作成しました。 このイメージの詳細については、Amazon Linux Container Image をお読みください。 このイメージは、Amazon EC2 Container Service で使用することもできます。詳細については、Amazon ECR イメージを Amazon ECS で使用するをお読みください。 — Jeff;

Read More

新しいユーティリティ – すべてのリージョンで長いリソース ID 形式にオプトイン

今年はじめに公開したブログ「長い形式の EC2 リソース ID が利用可能に」で、移行期間は 2016 年 12 月の初旬までと説明しました。この期間中はリージョンやユーザーベースで新しいリソース形式にオプトインすることができます。移行を完了すると、新たに作成したリソースの文字列には 17 文字が使用されるようになります。次の大切な日付を忘れないようにしてください。 11 月 – 11 月 1 日より describe-id-format コマンドを使用して希望のリージョンのカットオーバー期限を確認できるようになります。 12 月 – 12 月 5 日から 12 月 16 日の間、各 AWS リージョンにおいて 17 文字の文字列をデフォルトで使用するように設定します。 ご利用されているコードやツールが新しい形式に対応できるように、できる限り早急にオプトインすることをお勧めします。 オプトイン、オプトアウト、またはステータスチェックに使用できる長い形式の ID コンバーターツールをリリースしました。すでに AWS Command Line Interface (CLI) をインストールしている場合は、スクリプトをダウンロードすればこれを実行することができます。 $ wget https://raw.githubusercontent.com/awslabs/ec2-migrate-longer-id/master/migratelongerids.py $ chmod +x migratelongerids.py 次に実施可能な操作をいくつかご紹介します。 アカウントのステータスを確認: $ […]

Read More

サーバーレス Chatbot コンテストに入賞した皆様、おめでとうございます!

私は 8 月に AWS サーバーレス Chatbot コンテストについて発表し、皆様に AWS Lambda および Amazon API Gateway を使用して Slack 用の Chatbot を構築していただきますようお願いしました。 先週、仲間の審査員である Tim Wagner (AWS Lambda のジェネラルマネージャー) および Cecilia Deng (Tim のチームのソフトウェア開発エンジニア) と一緒にビデオを見て、62 点の応募作品をすべて評価しました。私たちは応募作品の機能や多様性、そして作品の実行中の動作を示す魅力的なビデオの作成に対する応募者の努力に感心しました。長時間にわたって審査した結果、合計 9 点の入賞作品を選定しました。8 点は個人、チーム、小規模組織の作品で、1 点は大企業の作品です。難しい話は抜きにして、さっそく始めましょう。 個人、チーム、小規模組織 サーバーレス Slackbot ヒーロー賞の入賞作品は以下のとおりです。各入賞作品には、AWS re:Invent のチケット 1 枚、ホテルの宿泊割引、公表、サーバーレスコンピューティング基調講演中の宣伝、クールな賞品、および 100 USD の AWS クレジットが贈られます。これらの多くのボットのコードは、GitHub で確認することができます。入賞作品をアルファベット順に示します。 AWS Network Helper – “このプロジェクトの目標は、サーバーレスアーキテクチャで実行する AWS […]

Read More

Amazon EC2 で Windows Server 2016 を実行

Amazon Elastic Compute Cloud (EC2) で Windows Server 2016 を実行できるようになりました。このバージョンの Windows Server にはいくつもの新機能が搭載されています。これには Docker や Windows コンテナのサポートも含まれています。本日より、すべての AWS リージョンで次の 4 つの形式をご利用いただけます。 Windows Server 2016 Datacenter のデスクトップ環境 – Windows Server のメインストリームバージョンはセキュリティとスケーラビリティを考慮して設計されています。従来のアプリケーションはもちろんのこと、クラウドネイティブのアプリケーションにも対応しています。Windows Server 2016 に関する詳細は「The Ultimate Guide to Windows Server 2016」 (登録必須) をご覧ください。 Windows Server 2016 の Nano Server – 最小構成のインストールで導入するクラウドネイティブは適度なディスク容量を使用し、アプリやサービス実行に使用するシステムリソース (メモリ、ストレージ、CPU) をより多く残し、データセンターバージョンよりも迅速に起動することができます。コードやアプリケーションを移行する場合の詳細情報については「Moving to Nano Server」をご覧ください。Nano Server […]

Read More

X1 インスタンスの更新 – X1.16xlarge + リージョンの追加

今年初旬に AWS は x1.32xlarge インスタンスをリリースしました。約 2 TiB の容量を備えるこのインスタンスタイプは、メモリに大きな負担をかけるビッグデータ、キャッシュ、分析などのワークロードに最適です。AWS のお客様は SAP HANA インメモリデータベース、大規模な Apache Spark や Hadoop ジョブ、様々なタイプのハイパフォーマンスコンピューティング (HPC) ワークロードを実行しています。 そしてこの度、AWS は X1 インスタンスタイプの更新を 2 つリリースしました。 新しいインスタンスのサイズ – x1.16xlarge インスタンスの新しいサイズはフットプリントが小さいワークロードの実行を可能にします。 新しいリージョン – X1 インスタンスの利用が可能なリージョンを 3 つ追加しました。これでリージョン数は合計 10 になりました。 新しいインスタンスのサイズ 新しい x1.16xlarge の仕様は次のとおりです。 プロセッサ: 2 x Intel™ Xeon E7 8880 v3 (Haswell) 2.3 GHz – 32 cores […]

Read More

AWS Lambda と Amazon API Gateway で Express アプリケーションを実行

Express は Node.js のウェブフレームワークです。これを使用すると、「サーバーレス」ウェブサイトやウェブアプリケーション、API を簡単にデプロイできます。サーバーレス環境では、大方またはすべてのバックエンドロジックがステートレスのオンデマンドで実行します (詳細情報については Mike Roberts によるブログ「Serverless Architectures」をご覧ください)。今月初旬に公開したブログ (「API Gateway の更新 – API 開発を簡素化する新機能」) で紹介した新しい Amazon API Gateway 機能と AWS Lambda を併せて使用した場合、既存の Express アプリケーションをサーバーレスで実行することができます。API Gateway を使用すると API を中心に開発者のエコシステム構築を可能にする使用量プランなど追加機能を利用したり、キャッシュにより応答性と費用対効果に優れたアプリケーション構築を行うこともできます。 AWS は aws-serverless-express パッケージを提供することで Express アプリケーションから Lambda や API Gateway への移行をお手伝いしています。このパッケージには実例が含まれています、ぜひご活用ください。 Express コードとアプリケーションを API Gateway と Lambda に移行する場合に利用できる 2 つのリソースをご紹介します。 「Running Express Apps in AWS […]

Read More

EC2 リザーブドインスタンスの更新 – Convertible RI とリージョン単位の利点

EC2 リザーブドインスタンスはほぼ 8 年前に発表されました。2009 年に開始されたモデルには 2 つの利点があります。キャパシティーの予約と、アベイラビリティーゾーン内の特定のインスタンスの使用に適用される大幅な割引です。長年にわたり、お客様からの意見や要望に基づいてモデルを改良し、スケジュールされたリザーブドインスタンス、リザーブドインスタンスの予約内容の変更機能、リザーブドインスタンスマーケットプレイスでのリザーブドインスタンス (RI) の売買機能などのオプションを追加してきました。今回、リザーブドインスタンスモデルを再び強化することになりました。その内容は以下のとおりです。 リージョン単位の利点 – 多くのお客様から、割引がキャパシティーの予約よりも重要だという意見や、柔軟性が増すなら割引率は下がっても構わないという意見を頂いていました。そこで今回からは、Standard RI に関連付けるキャパシティーは予約されずに、リージョン内のいずれかの AZ で実行したインスタンスに RI の割引が自動的に適用されるように選択可能になりました。 Convertible リザーブドインスタンス – Convertible RI では、柔軟性を増しながらも高い割引 (On-Demand に比べて通常 45% の割引) を受けられます。リザーブドインスタンスに関連付けたインスタンスファミリーやその他のパラメータはいつでも変更できます。たとえば、新しいインスタンスタイプを利用するために C3 RI を C4 RI に変換したり、アプリケーション用にメモリの増量が必要になった場合に C4 RI を M4 RI に変換したりできます。また、EC2 の値下げを徐々に活用するために Convertible RI を使用することもできます。 それでは、詳しく見ていきましょう。 リージョン単位の利点 リザーブドインスタンス (Standard または Convertible) がリージョン内のすべてのアベイラビリティーゾーン間で自動的に適用されるように設定可能になりました。リージョン単位の利点により、リージョン内のすべてのアベイラビリティーゾーン間で RI がインスタンスに自動的に適用されることで、RI の割引の適用範囲が広がります。この利点を使用すると、キャパシティーの予約は行われません。代わりに、キャパシティーを予約するためのアベイラビリティーゾーンの選択が必要になります。インスタンスを頻繁に起動、使用、終了する動的な環境では、この新しい利点により、柔軟性が増し、RI […]

Read More