Amazon Web Services ブログ

AWS Japan

Author: AWS Japan

Amazon EC2 スポットインスタンスを利用した Amazon ECSクラスターの起動

この記事は気前よく次の方から寄贈されました。 Chad Schmutzer Solutions Architect Shawn O’Connor Solutions Architect   本日、Amazon EC2 Container Service(Amazon ECS)が、ECSコンソール上から直接 Amazon EC2 Spot Instances上に ECSクラスターを起動させる機能をサポートする事を発表しました。 スポットインスタンスを利用すると、Amazon EC2の余剰コンピュートキャパシティに入札することが出来ます。スポットインスタンスは通常、オンデマンドインスタンスよりも50-90%安い価格です。スポットインスタンス上でECSクラスターを起動することで、既存のコンテナ化されたワークロードの実行コストを削減したり、同じ予算を維持しながら、コンピュートキャパシティを2倍から10倍に増やすことが可能です。もしくは、その両方を実現することもできます! スポットインスタンスを利用する場合、インスタンス時間あたりに支払う価格を指定します。現在のスポットプライスを上回る価格で入札している間、スポットインスタンスは起動します。スポットプライスの上昇によりインスタンスが回収された場合、インスタンスが実行された分の時間は請求されません。 ECSコンソールはスポットインスタンスをデプロイするために、 Spot Fleetを利用します。Spot Fleetは、利用者にとって最も良い価格となる様にスポットインスタンスを起動し、コンテナ化したアプリケーションの為にリクエストしたターゲットキャパシティ(インスタンスやvCPUの数で表現される)をデプロイしようします。スポットプライスや、空き容量の変化によってスポットインスタンスが回収された場合、Spot Fleetはターゲットキャパシティを維持しようとします。 コンテナはSpot Fleetが大きくなる多様なリソースプールに適してします。Spot Fleetを利用すると複数のスポットインスタンスプール(インスタンスタイプとアベイラビリティゾーンの組み合わせ)に渡ってキャパシティをプロビジョニング出来き、アプリケーションの可用性を向上させ、時間経過と共に運用コストを削減できます。ECSが提供する拡張性と柔軟性を備えたコンテナ配置システムとSpot Fleetとの組み合わせはコンテナ化されたワークロードを効率的にデプロイし、わずかなコストであらゆる規模のクラスタを容易に管理できます。 従来は、スポットインスタン上へのECSクラスタのデプロイは手動で行われてました。この記事では、ECSコンソール上からのSpot Fleetとの新しいインテグレーションによって、高い可用性とスケーラビリティをどの様に実現し、コンテナ化したワークロードをどの様にコストを削減するのかを紹介します。また、AWS CloudFormationを利用し、スポットインスタンス上にECSクラスターを構築する方法も紹介します。   スポットインスタンスで実行するECSクラスタの作成 AWS マネージメントコンソールを利用してECSクラスタを作成することが可能です。 Amazon ECSコンソールを開きます。 https://console.aws.amazon.com/ecs/ ナビゲーションパネル上でClustersを選択します。 Clustersページでは、Create Clusterを選択します。 Cluster nameに名前を入力します。 インスタンス設定では、プロビジョニングモデルとしてSpotを選択します。 配置戦略の選択 2つの利用可能なSpet Fleet配置戦略はDiversified戦略かLower price戦略です。 Spot Fleetで選択した配置戦略は、利用可能なスポットインスタンスプールからSpot Fleetをどの様に満たすかを決定します。diversified戦略を使用すると、スポットインスタンスは全てのプールにわたって分散されます。lowest price戦略を選択した場合、リクエストで指定された最低価格のプールから取得されます。 […]

Read More

【開催報告】CTO Night 2017 Spring @ AWS Summit Tokyo

こんにちは。ソリューションアーキテクトの篠原英治(@shinodogg)です。 Amazon.comのCTOであるWerner Vogels(@werner)の3年振りの来日に伴いまして、AWS Summit Tokyoの期間中に、日本の著名なCTOの皆さまにお集まりいただき、 CTO Night 2017 Spring (#CTONight) を開催しました。     ■ CTOs Round Table   少人数の日本のCTOの皆さまをお招きし、AmazonのCTOとしてAmazonのイノベーションをリードするWernerとラウンドテーブル形式で最新の技術動向についてディスカッションを行いました。   Wernerから、AmazonがAWSというクラウドビジネスを始めたことで、1テクノロジー企業から、テクノロジープロバイダーとなり、CTOとしてどのように全社のテクノロジーをドライブしてきたか?といったトピックからはじまり、Wernerのブログ(Working Backwards – All Things Distributed)でも詳細に解説されている、新しくサービス/プロダクト/機能を開発する際にAmazon社内で取られている方法論など、白熱した議論が展開されました。   ビジネスやサービスが多岐に渡るようになるにつれ、技術的なキャッチアップが困難になり、CTOとしてどのようにそれに取り組むべきか?というトピックに関しては、Werner自身は週4-6時間はメールやミーティングなどを一切シャットアウトして集中してハンズオンで新しい技術を習得しており、そこで得たものをコードレビューやプロダクトチームとのディスカッションに活かしている、とのことでした。CTOが社内で取り扱う全ての技術分野の専門家になることは厳しい部分があるものの、エンジニアチームを、進化する同じ船に乗せるといった意味で開発者と会話をする際の姿勢などについて、日本のCTOの皆さまのエピソードもご紹介いただきました。   プログラミング言語を選定する上での考え方や、サーバーのroot権限をCTO自らが持つべきか?など様々なトピックに関するディスカッションはあっという間に時間が経過し、Werner自身も非常に有意義だったと申しておりました。ご参加いただいたCTOの皆さまありがとうございました!     ■ Startup CTO Night with Amazon CTO – Werner Vogelsによる公開技術レビュー   2014 年 7 月にシークレットイベントとして開催され大盛況だったWernerによる 『Startup CTO Night with Amazon CTO』を3 年ぶりにAWS Dev Day Tokyoにて行いました。   […]

Read More

AWS が 7 年連続でガートナーのサービスとしてのインフラストラクチャ (IaaS) に関するマジッククアドラントでリーダーとして認定される

AWS での各製品計画セッションはお客様を中心に進められています。当社は最善を尽くしてお客様の声に耳を傾け、それに基づいて将来の開発のロードマップを構築しています。ロードマップの項目の約 90% はお客様のリクエストに基づくものであり、お客様から寄せられた特定のニーズや要件を満たすよう設計されています。 このお客様主導のイノベーションにより、7 年連続でガートナーのサービスとしてのインフラストラクチャ (IaaS) に関するマジッククアドラントで当社が「リーダー」クアドラントで最上位の地位を確保し、最も高い実行力と先見性のあるビジョンを持っていると評価されたものと確信しています。 詳細については、レポートの全文をお読みください。このレポートには多くの詳細が含まれており、お客様がクラウドプロバイダーを選ぶときに確認する機能や要素がよくまとめられています。 — Jeff;

Read More

新機能 – Auto Scaling for Amazon DynamoDBについて

Amazon DynamoDBには幅広い業界やユースケースを含む10万人以上の多くのお客様がいます。 お客様は世界中の16の地域で、DynamoDBの一貫性のあるパフォーマンスを利用する事が出来ます。 最近の傾向は、DynamoDBを使用してサーバレスアプリケーションと組み合わせるお客様です。 この使い方は非常にマッチします:DynamoDBでは、サーバーのプロビジョニング、OSとデータベースのソフトウェアパッチ適用、または高可用性を確保するためのAZゾーン間のレプリケーションの設定などを考える必要はありません。テーブルを作成してデータを追加するだけでDynamoDBが処理するようにします。 DynamoDBにはプロビジョニングキャパシティーユニットモデルが用意されており、アプリケーションで必要とされる読み書き容量を設定できます。 これによりサーバの考え方から解放され、簡単なAPIコールまたはAWS Management Consoleのボタンをクリックしてテーブルのプロビジョニングを変更できるようになりましたが、多くのお客様はDynamoDBの容量をさらに簡単に管理できるように望んでいました。 本日、DynamoDBのAuto Scalingを導入して、テーブルとグローバルセカンダリインデックス(GSI)の容量管理を自動化できるようになりました。 維持をしたい使用率を指定し、読み書き容量の上限と下限を指定するだけです。 DynamoDBは、Amazon CloudWatchアラームを使用して消費量を監視し、必要に応じてプロビジョニングされた容量を調整します。 Auto Scalingは、すべての新しいテーブルとインデックスに対してデフォルトでオンに出来ます(但しIAM権限の事前準備が必要です)。また、既存のテーブルやインデックスに対しても設定できます。 あなたが常にマネジメントコンソールに張り付いていなくても、DynamoDB Auto Scalingはテーブルとインデックスを監視して、アプリケーショントラフィックの変化に応じて自動的にスループットを調整します。 これによりDynamoDBデータの管理が容易になり、アプリケーションの可用性を最大化しDynamoDBのコストを削減するのに役立ちます。 どのような機能か早速御覧ください。 Using Auto Scaling 新しいテーブルを作成するときに、DynamoDB Consoleにデフォルトパラメータセットが提示されるようになりました。 あなたはそのまま利用する事も、「Use default settings」のチェックを外して独自のパラメータを入力することもできます 独自にパラメータを設定する方法は以下の通りです。 Target utilizationは、消費容量とプロビジョニングされた容量の比率で表されます。 上記のパラメータは、読み取りまたは書き込み要求が増えた時でも消費される容量の2倍になるように十分な空き容量を確保します(DynamoDBの読み書き操作とプロビジョニングされた容量の関係の詳細については容量単位の計算を参照してください)。 プロビジョニングされた容量の変更は、バックグラウンドで行われます。 Auto Scaling in Action この重要な新機能が実際に動作するのを見るために、「Getting Started Guide」の指示に従いました。 私は、新しくEC2インスタンス起動し、AWS SDK for Pythonを設定(sudo pip install boto3)を実行し利用するための設定(aws configure)を行いました。 次に、PythonとDynamoDBのコードを使用していくつかのデータを含むテーブルを作成し、読み込みと書き込みの各容量を5ずつ手動で設定しました。 CloudWatchメトリクスで綺麗な直線を得るために私は急いで休憩を取ったので、AutoScalingの効果を示すことができました。 負荷を適用する前のメトリクスは次のとおりです。 私はステップ3のコードを変更して、1920年から2007年の範囲でランダムにクエリを発行し、1〜2分後に読み取りメトリクスを確認しました。 消費された容量はプロビジョニングされた容量よりも多く、その結果多くの読み込みリクエストに対してスロットルが発生します。 AutoScalingが実行される! […]

Read More

EC2 Run Command を使用した、SSH アクセスなしでの大規模なインスタンスの管理

Ananth Vaidyanathan (EC2 Systems Manager のシニア製品マネージャー) および Rich Urmston (Pegasystems のクラウドアーキテクチャのシニアディレクター) によって書かれた次のゲスト投稿は、EC2 Run Command を使用して、SSH を用いることなく EC2 インスタンスの大量のコレクションを管理する方法を示しています。 — Jeff; 多くの場合、エンタープライズは管理対象環境および数千の Amazon EC2 インスタンスを持っています。Secure Shell (SSH) について悩むことなく、システムをセキュアに管理することが重要です。Amazon EC2 Systems Manager の一部である Run Command では、制御され管理可能な方法で、インスタンス (またはタグを使用してインスタンスのグループ) でリモートコマンドを実行できます。これは、Run Command サービスに毎日依存する Pega Cloud オペレーションにとって、生産性を向上するための優れた追加機能です。標準の IAM ロールとポリシーを通じた Run Command の制御、ドキュメントの定義による入力パラメーターの使用、コマンド出力を返すために使用される S3 バケットの制御が可能です。また、他の AWS アカウントや一般ユーザーとドキュメントを共有することもできます。全体として、Run コマンドは優れた一連のリモート管理機能を提供します。 SSH よりも優れる Run Command […]

Read More

AWS CodeBuild と HashiCorp Packer を用いた AMI ビルダーの構築方法

独自の アマゾン マシン イメージ を作成し維持することは、運用とセキュリティにおけるベストプラクティスです。インフラストラクチャをコードとして維持することもまたベストプラクティスの1つです。そのため、Amazon EC2 インスタンスを素早く起動するために AMI を作成し設定する、といったことをスクリプト化するための自動化ツールを利用することには価値があります。 公開する2つの記事の最初にあたるこの記事では、AWS においてプログラマブルに AMI を作成するために AWS CodeBuild を使用します。AMI 生成の一部として、OS のパッチを適用し、バナーステートメントを設定し、よく使うソフトのいくつかをインストールし、将来的な Amazon EC2 ベースのデプロイメントへの基盤を形成します。

Read More

Amazon Cognito ユーザープールが SAML フェデレーションをサポート [パブリックベータ]

昨年、Amazon Cognito Identity に SAML フェデレーションのサポートを追加しました。この機能は SAML レスポンスから一時的な AWS クレデンシャル情報を取得できます。 Amazon Cognito Identity は API ベースのアプローチをサポートしており、AWS クレデンシャル情報を取得するためには、SAML IdP (Identity Provider) の SAML 応答を解析し、Amazon Cognito Identity API をコールします。 Amazon Cognito ユーザープールは、あなたのモバイルおよび Web アプリに、セキュアでスケーラブルなユーザーディレクトリを使用したサインアップおよびサインイン機能を追加します。本日、Amazon Cognito ユーザープールの SAML IdP (Identity Provider) フェデレーションをアナウンスできることを嬉しく思います。本機能はユーザーディレクトリに SAML IdP のユーザーをマッピングし、 SAML IdP でユーザーを認証後にユーザープールから標準認証トークンを取得します。ユーザープールは SAML 2.0 POST Binding エンドポイントをサポートします。これにより、クライアントは SAML アサーションレスポンスの解析が不要になり、ユーザープールはユーザーエージェント (訳注: Web ブラウザ等) […]

Read More

6 月の AWS Black Belt オンラインセミナーのご案内 [GreenGrass緊急開催決定!]

こんにちは。プロフェッショナルサービスの宮本です。AWS Greengrassが一般利用可能となったため、AWS GreengrassのAWS Black Belt オンラインセミナーの緊急開催が決定しました!IoTデバイスからのデータ送信量が増加傾向にある昨今、GreenGrassのようにIoTデバイスのローカル環境上で実行できるアプリケーションの管理が必須な技術要素となってきています。この機会をお見逃しなく! ※サービスカットですが、火曜日のお昼開催となりますのでご注意ください。 6 月は、AWSの新サービス、機能追加のご紹介や、5月30日から6月2日まで4日間に渡って開催されたAWS Summit Tokyo 2017の振り返りなど幅広いラインナップでお送りいたします。また今年から開始したオンラインハンズオンの開催もありますので、ふるってご参加いただければと思います。 ※ 2017/6/6追記: 6/20に予定していたAWS Lambda回は都合により7月に延期になりました。 6 月の開催予定 サービスカット 6/7(水) 18:00-19:00 Amazon Redshift Update – 最近追加された新機能とRedshift Spectrumの解説 6/14(水) 18:00-19:00 AWS Snowball 6/21(水) 18:00-19:00 Server Migration Service Application Discovery Service 6/27(火) 12:00-13:00 AWS Greengrass 6/28(水) 18:00-19:00 AWS Code Services Part 2 ソリューションカット 6/13(火) 12:00-13:00 AWS Summit […]

Read More

Amazon Rekognition の更新 – 有名人の認識

re:Invent で Amazon Rekognition をリリースし (「Amazon Rekognition – ディープラーニングがサポートする画像の検出と認識 (Amazon Rekognition – Image Detection and Recognition Powered by Deep Learning))、本年初頭にイメージモデレーションを追加しました。本日は、有名人の認識を追加します。Rekognition のトレーニングにより、政治、スポーツ、芸能、ビジネス、メディアなどの分野の有名人や著名人を多数識別できるようになりました。このリストはグローバルで、頻繁に更新されます。この機能にアクセスするには、新しい RecognizeCelebrities関数を呼び出します。既存の DetectFaces 関数によって返される境界ボックスおよび顔ランドマーク機能に加えて、新しい関数では認識される有名人に関する情報が返されます。 “Id”: “3Ir0du6”, “MatchConfidence”: 97, “Name”: “Jeff Bezos”, “Urls”: [ “www.imdb.com/name/nm1757263” ] Urls は、有名人に関する追加情報を提供します。現在、この API は IMDB コンテンツへのリンクを返します。今後は他のソースを追加する可能性があります。この機能をお試しになるには、AWS Management Console で有名人の認識デモをお使いください。 イメージアーカイブを持っている場合は、有名人別にインデックスを作成できます。有名人の認識とオブジェクトの検出を組み合わせて使用して、あらゆる種類の検索ツールを構築することもできます。イメージが S3 にすでに保存されている場合は、そこで処理できます。この新機能には、いろいろな面白い使い方があるかと思います。ご意見ご感想をお寄せいただき、皆様がどのようなものをビルドしたかお知らせください。 — Jeff;

Read More

AWS Greengrass – AWS Lambdaをネットワーク接続性のあるデバイス上で動かす

私が最初に AWS Greengrassについて投稿したのは、re:Invent期間中でした。(AWS Greengrass -ユビキタス, 現実世界におけるコンピューティング) 我々は、ご興味をお持ちいただいたお客様を招待制という限定プレビューのかたちでローンチさせていただきました。 そのときに私がお知らせしたように、多くのAWSの顧客は、接続が遅く、時には断続的、信頼できない場合がある、現場でデータを収集して処理したいと考えています。Greengrassでは、AWSプログラミングモデルを小型で簡単なフィールドベースのデバイスに拡張することができます。 AWS IoTとAWS Lambdaをベースに構築されており、AWS Cloudで利用可能な多様なサービスへのアクセスをサポートしています。 一般利用可能 今日、Greengrassは米国東部(バージニア)と米国西部(オレゴン)のリージョンで一般利用可能になっています。プレビュー中、AWSのお客様はGreengrassでの実践的な体験を得て、その周辺のアプリケーションやビジネスの構築を開始できました。これらの初期の成功のいくつかをこの記事の後半で共有します。

Read More