Amazon Web Services ブログ

AWS Japan Staff

Author: AWS Japan Staff

AWS Batch – AWSでバッチ処理ジョブを実行する

私は1978年秋に大学に入学しました。モンゴメリー・カレッジのコンピュータ・サイエンス部門は、強力な(当時の)IBM 370/168メインフレームを中心に構築されました。 Keypunchマシンを使用してカードデッキを準備する方法、実際のコードの前にジョブの名前と優先順位を設定し、FORTRAN、COBOL、またはPL / Iコンパイラを呼び出す暗黙のジョブ制御言語(JCL) 。デッキを提出ウィンドウに持ってきて、ジョブIDと引き換えにオペレーターに渡してから、数時間後に戻って印刷出力とカードデッキを回収します。私はその印刷物を慎重に研究しましたが、仕事に就いて数時間を待ってから、実際の稼動時間はほんの数秒であったことに気付いていました。仲間の学生と私がすぐに学んだように、学校のIT部門が開始した仕事は優先順位4で実行され、私たちは8で実行されました。彼らの仕事は私たちよりも優先されました。優先順位の高いメカニズムの目標は、高価なハードウェアを可能な限り完全に使用することでした。学生の生産性は、リソースの効率的な使用に引き続き二次的でした。 今日のバッチコンピューティング 今日、バッチ・コンピューティングは依然として重要です!より簡単にコンピューティングパワーにアクセスすることで、映画スタジオ、科学者、研究者、数値アナリストなどがこれまで以上に多くのコンピューティングサイクルを楽しめるようになりました。多くの組織では、オープンソースまたは商用ジョブスケジューラを搭載した社内の計算クラスタを構築することによって、これらのニーズに対応しようとしています。三度、優先順位が立ちはだかり、依然として、決して十分な計算能力がないようです。クラスタは、構築・運用するのに費用がかかり、同一の、ほぼ差異のないプロセッサの大きな配列で構成され、ビンテージとまったく同じ仕様に構築されることが多い。 クラウドコンピューティングは、さまざまな種類のEC2インスタンスへの迅速なアクセス、ニーズの変化に対応して拡大縮小する機能、および、必要なキャパシティに対して入札を行い、可能な限り経済的にそれを得られる価格モデルによって、バッチコンピューティングモデルをより良いものに変える可能性を秘めています。これまで、多くのAWSのお客様は、EC2インスタンス、コンテナ、通知、CloudWatchモニタリングなどを使用して独自のバッチ処理システムを構築してきました。これは非常に一般的なAWSユースケースであることが判明し、バッチ処理システムの構築を達成することをさらに容易にすることに決めました。 AWS Batchの紹介 今日、完全に管理されたバッチ機能の新しいセットについてお話したいと思います。 AWS Batchにより、バッチ管理者、開発者、およびユーザーは、クラスタのプロビジョニング、管理、監視、またはメンテナンスを行うことなく、クラウドのパワーにアクセスできます。購入するものはなく、インストールするソフトウェアはありません。 AWS Batchは、特に違いを生まない重い作業を処理し、EC2インスタンスの動的にスケーリングされたセットでコンテナイメージとアプリケーションを実行できるようにします。 Amazon EC2とEC2 Spotによって提供される弾力性と選択性を活かした並列ジョブを大量に実行することができ、効率的で使いやすく、クラウド向けに設計されており、他のAWSサービスAmazon S3、DynamoDB、およびSNSが含まれます。

Read More

AWS Personal Health Dashboard – 関係するリソースの管理

AWS Service Heath Dashboardをリリースしたのは2008年になります。当時はAWS Cloudは比較的新しく、各サービスの利用状態を確認するのにいい手段でした(現在のService Health Dashboardと比べると、この8年でAWSがどのくらい成長した化が見て取れます)。 現在のダッシュボードは、AWSサービス毎の状態を俯瞰的に表示するため、個別最適されたダッシュボードというわけれではありませんでした。そのため、お客様と会話をすると、全体的なダッシュボードというよりは、お客様の利用サービス、リソースに合わせた状態管理を希望されることもありました。 新サービス Personal Health Dashboard 関心のあるサービスについてより多くの情報を提供できるよう、AWS Personal Health Dashboardをリリースしました。サービス名の通り、このダッシュボードは利用しているAWSサービスのパフォーマンス、可用性に関した個別のビューのみならず、サービスの状態に変化が会った際にはアラートを自動的に発行します。利用中のサービスに関して一元的に監視するためにデザインされており、影響を及ぼすであろう問題に関して、より詳細に可視化することが可能です。ダッシュボードに関係する情報が登録されると、コンソールから通知アイコンを確認出来ます。 “issues”をクリックすると、影響するであろうAWSインフラストラクチャが確認できます(これらのデータはすべてテストデータです)。 アイテムをクリックするとその問題を修復するためのガイダンスを含むより詳細の情報を確認することができます。 また事前に予定されているアクティビティを確認することで注意喚起をうながすこともできます。 それ以外にも、興味のあるサービスについての情報を確認することもできます。 またCloudWatch Eventsと連携することで、アラート対応でしたり、スケジュールイベント対応を自動化させることも可能です。例えば、自主的にメンテナンスイベント対応が必要なEC2インスタンスを移動することで、メンテナンスイベント通知対応が可能になります。 ご自身のアカウントがビジネスサポート、もしくはエンタープライズサポートに加入頂いてる場合、この新しいAWS Health APIをご利用頂けます。このAPIを使い、Personal HealthDashboardの情報をを既存のITマネジメントツールとの連携されることがが可能になります。 – Jeff(翻訳はSA酒徳が担当しました。原文はこちら)

Read More

Blox – Amazon EC2 Container Serviceのための新しいオープンソーススケジューラ

2014年、私はについてお話して、Dockerベースのアプリケーションをビルドし実行し、そしてスケールさせることを如何に手助けしてくれるかをご紹介しました。そこでは3つのスケジューリングの選択肢(自動、手動、そしてカスタム)について話をし、スケジューラがインスタンスにどの様にタスクを割り当てるかを説明しました。 その時書いた記事では、カスタムスケジューラは現在のクラスタの状態を見るためにListContainerInstancesとDescribeContainerInstancesを定期的に呼び出す必要があると記しました。数週前、のサポートを追加することで各クラスタの状態を追跡する処理を簡素化しました。(これについて詳しくは、Amazon ECSイベントストリームで、クラスタの状態を監視をご覧下さい) この新しいイベントストリームが出たので、我々はカスタムスケジューラの作成をもっと簡単にしたいと思います。 本日、我々はBloxを開始します。この新しいオープンソースプロジェクトには、イベントストリームを処理してクラスタの状態を追跡し、状態をREST APIで利用可能にするサービスが含まれています。また、クラスタ内の各コンテナインスタンスにタスクを1つだけ実行するデーモンスケジューラも含まれています。このコンテナを1つずつ配置するモデルで、ログ処理やメトリクス収集のワークロードをサポートします。 こちらが”ブロック図”です (ダジャレじゃありません ※訳注 BloxとBlockをかけています): これはオープンソースのプロジェクトです; プルリクエストや機能要望を楽しみにしています。詳しい情報は、Amazon EC2 Container Serviceより、Bloxをご紹介をご覧下さい。 — Jeff; 原文: Blox – New Open Source Scheduler for Amazon EC2 Container Service (翻訳: SA岩永)

Read More

AWS CodeBuild ― フルマネージドのビルドサービス

開発者は通常、ソースコードの変更に対する継続的インテグレーションのビルドとテストを実行するために、共有のビルドサーバを構築し運用しなければいけません。継続的インテグレーションを運用するのは面倒なことなので、多くの開発者はそれを避けてローカルマシンでビルドを実行します。これによって、ある開発者の環境では動作するコードが最終的な本番環境ビルドで動作しないという状況が、しばしば引き起こされます。 多くの開発チームは、CI/CD(継続的インテグレーション / 継続的デプロイ)パイプラインの構成要素としてビルドファームを構築します。ビルドファームの構築と運用はコストが高く、また独特のスキルが求められます。普段はビルドファームはあまり使われていませんが、修羅場の時には利用率は100%に達し、未処理のビルドリクエストが増えてしまいます。

Read More

AWS X-Ray – 分散アプリケーションの内部を見る

大統領自由勲章の受賞者であるGrace Hopperが、プログラムからエラーを特定し取り除く作業にデバッグという言葉を与えた最初の人だと思います。 実際にコンピュータから本物のバグ(虫)を見つけたことはないですが、働き初めた頃にアセンブラ言語のデバッグに膨大な時間を費やしました。その当時は、デバッグとはコードを1ステップずつ実行し、各プロセッサのレジスタの中身をステップの前後で比較し、自分の頭の中のモデルと実際に起こっていることが一致しているかを検証するというものでした。これはとてもうんざりするようなものでしたが、バグが残る余地はほとんどなく、自分のコードがどの様に動くかの深い理解も得られるものでもありました。その後、1ステップずつの実行はなくなり、デバック出力(こんにちは、stderr)に取って代わり、それからログファイルとログ分析ツールへと変わっていきました。 最近の過去数十年で、複雑な分散システムが登場してきたことで、デバッグは変化して新しい意味を持つようになりました。単体テストが個別の関数とモジュールが期待通り動作することを保証しているので、難易度の高いポイントは大規模な中での動作のパターンを見ることに変わっています。クラウドコンピューティング、マイクロサービス、そして非同期な通知ベースのアーキテクチャの組合せによって、システムは数百から数千もの可変な箇所を持つようになりました。こうした複雑なシステムでのパフォーマンス課題を特定し対応していく難しさは増していて、個別サービスレベルの観測情報を集約して意味のある上位の結果にすることに難しさがあります。開発者にとって、EC2インスタンス、ECSコンテナ、マイクロサービス、AWSのデータベースやメッセージサービスを辿って”筋道を追う”ことは簡単ではありません。 これを何とかしましょう!

Read More

新しい T2.Xlarge および T2.2Xlarge インスタンス

AWSのお客様はT2インスタンスを使う時に得られるコスト効率のよい、バーストベースのモデルを好まれています。これらのお客様は webサーバや開発環境、継続的なインテグレーション用のサーバ、テスト環境、そして小さなデータベース等の一般的な用途でのワークロードを動作させるのにT2インスタンスを使います。これらのインスタンスは豊富なベースラインパフォーマンスと、必要に応じてフルコアのプロセッシングパワーにまで透過的にスケールアップを提供します。(もしこちらがあなたにとって新しいニュースであれば、バースト可能な性能を持つ新しい低コストEC2インスタンスをご参照ください) 本日2つの新しいより大きなT2インスタンスサイズを追加します。- 16GiB メモリの t2.xlargeと32GiB メモリのt2.2xlarge です。これらの新しいサイズにより、お客様はより大きなリソースの要件のアプリケーション向けに T2のバーストモデルの価格とパフォーマンスのメリットを享受頂けます。(t2インスタンスのレンジを拡大するのは、今回が3度目になります;昨年の6月にt2.largeを、昨年の12月にt2.nanoを追加しました。 こちらがT2インスタンスのすべてのサイズ向けのスペックになります。(価格は最近のEC2の値下げを反映しています。US Eastリージョンの料金になります。) 名前 vCPU ベースラインパフォーマンス プラットフォーム メモリ CPU クレジット / 時間 価格 / 時間 (Linux) t2.nano  1  5%  32bit または 64-bit  0.5  3  $0.0059 t2.micro 1 10%  32bit または 64-bit 1 6 $0.012 t2.small 1 20%  32bit または 64-bit 2 12 $0.023 t2.medium 2 40%  32bit […]

Read More

改善されたAWS IoT Buttonデベロッパーエクスペリエンスの発表

5月には、正式にAWS IoT Buttonを開始し、開発者コミュニティから提供されたボタンのサポートに圧倒されました。 私たちは皆様の提案に耳を傾け、AWS IoT Buttonの改良された開発者体験を発表することを喜ばしく思います。 今日から、iOSとAndroid用の新しいモバイルアプリでAWS IoT Buttonを設定できます。 モバイルアプリケーションは、ボタンの登録、設定、およびプログラミングのプロセスを簡素化します。 あらかじめ設定されたAWS Lambdaのブループリントを使用して、このボタンをクリックするとSMSや電子メールを送信するボタンを素早くプログラムすることができます。 または、あなたが選択した機能のための独自のLambdaコードを書くことができます。 さらに、新しいバージョンのAWS IoT Buttonは、バッテリー寿命を2倍に設計しました。 amazon.comで今予約注文することができます。 それまで待ちたくない場合は、元のAWS IoTボタンは引き続き使用でき、AWSアカウントごとに20ドルのAWSクレジットを提供します。 AWS IoT Buttonの詳細については、製品ページをご覧ください。   原文: Announcing an Improved AWS IoT Button Developer Experience (翻訳: SA福井)

Read More

進行中 ー Amazon EC2 Elastic GPUs

私は過去にGPUベースのコンピューティングのメリットについて書いてきました。最近では最大16個のGPUを搭載したP2インスタンスのリリースがありました。過去に指摘したように、GPUは驚異的なパワーとスケールを提供し、同時に結果を得るまでの時間と全体的な計算コストを削減する可能性があります。 今日、私たちが取り組んでいる新しいGPUベースの機能について少しお話したいと思います。 もう少しすると既存のEC2インスタンスタイプにグラフィックアクセラレーションを追加することができるようになります。 G2またはP2インスタンスを使用する場合、インスタンスサイズによってGPUの数が決まります。 これは多くの種類のアプリケーションでうまく機能しますが、他の数多くのアプリケーションでも、より新しい、より柔軟なモデルを利用する準備が整ったと考えています。 Amazon EC2 Elastic GPUs 発表されたAmazon EC2 Elastic GPUは、それぞれ異なる長所を提供します。アプリケーションに最適なEC2インスタンスのタイプとサイズを選択でき、また、インスタンスを起動する際にElastic GPUの使用を指定し、4種類のサイズから選択できます。 Name GPU Memory eg1.medium 1 GiB eg1.large 2 GiB eg1.xlarge 4 GiB eg1.2xlarge 8 GiB Elastic GPUをM4、C4、およびX1インスタンスで使用できるようになります。 現在、新しいインスタンスを起動するときに新しく作成されたEBSボリュームを設定する機能がありますが、 Elastic GPUについても同様に起動設定の際に希望のサイズを指定したり、実行中のインスタンスを停止、起動することにより変更が可能です。 OpenGLで始める Amazonに最適化したOpenGLライブラリは、自動的にElastic GPUを検出して使用します。 OpenGLのWindowsのサポートから始め、その後、Amazon Linux AMIやOpenGLの他のバージョンのサポートを追加する予定です。 また、DirectXやVulkanなど他の3D APIのサポートも検討しています(興味があるかどうかをお知らせください)。 既存のMicrosoft Windows AMIのリビジョンにAmazonに最適化したOpenGLライブラリを追加します。 OpenGLはレンダリングには最適ですが、レンダリングされたものはどうやって見ますか? 素晴らしい質問です! 1つの選択肢は、レンダリングされたコンテンツをHTML5と互換性のあるブラウザやデバイスにストリーミングするために、NICE Desktop Cloud Visualization(今年初めに買収 – Amazon Web Services to […]

Read More

開発者プレビュー ー EC2 Instances (F1) with Programmable Hardware

あなたは汎用ツールと非常に特殊な目的のために作られたツール、どちらかを決めなければならない経験をしたことはありませんか? 汎用ツールは、さまざまな問題を解決するために使用できますが、特定な用途に最適な選択ではないかもしれません。目的に合ったツールは1つのタスクに優れていますが、頻繁にその特定のタスクを実行する必要があります。 コンピュータエンジニアは、アーキテクチャと命令セットを設計するときに、この問題に直面し、非常に広い範囲のワークロードにわたって良好なパフォーマンスを実現するアプローチを常に追求しています。 時々新しいタイプの作業負荷と作業条件が発生し、カスタムハードウェアによって最もよく対処されます。 これにはもう1つのバランスのとれた行動、すなわち信じられないほどのパフォーマンスと、四半期または何年もかかる開発ライフサイクルの潜在的なトレードオフをする必要があります。    FPGAへ カスタムハードウェアベースのソリューションへの興味深いルートの1つとして、フィールドプログラマブルゲートアレイ(FPGA)が知られています。 単一の機能を念頭に置いて設計され、実装するために配線された専用チップとは対照的に、FPGAはより柔軟性があります。 これは、PCボード上のソケットに差し込まれた後、フィールドでプログラムすることができます。 各FPGAには、固定された有限個の単純な論理ゲートが含まれています。 FPGAをプログラミングするということは、論理機能(AND、OR、XORなど)または記憶素子(フリップフロップおよびシフトレジスタ)を単純に接続していく事となります。 本質的にシリアル(いくつかのパラレル要素)で、固定サイズの命令とデータパス(通常32または64ビット)を持つCPUとは異なり、FPGAは多くのオペレーションを並列に実行するようにプログラムでき、 ほとんどすべてのデータ幅、データ大小を操作できます。 この高度に並列化されたモデルは、数値計算の問題を処理するカスタムアクセラレータを構築するのに理想的です。 適切にプログラミングされたFPGAは、多くのタイプのゲノム解析、地震解析、財務リスク分析、大規模なデータ検索、暗号化アルゴリズムとアプリケーションに対して30倍のスピードを提供する可能性があります。 私はこれが素晴らしいことであると願うとともに、独自アプリケーションをスピードアップするために、あなたがFPGAを使いたくなることを願います! 長い道のりの中でいくつかの面白いチャレンジがあります。 第一に、FPGAは伝統的に、より大規模な専用システムのコンポーネントとなっています。 単にあなたが購入してデスクトップに接続することはできませんが、代わりにFPGAが提供ものにはハードウェアプロトタイピング、ハードウェアアプライアンスの構築、大量生産、長期にわたるセールス&デプロイメントサイクルといったソリューションが含まれています。 リードタイムはFPGAの適用範囲を制限する可能性があり、また、ムーアの法則はCPUベースのソリューションを費用対効果に優れたものにするには時間がかかることも意味します。   私たちはこの分野をより良くすることができると思います!   新しいF1 Instance 今日、新しいF1インスタンスの開発者向けプレビューを開始します。 あなた自身のためにアプリケーションとサービスを構築するだけでなく、AWS Marketplaceで販売して再利用するためにパッケージ化することができます。 すべてをまとめることで、かつてはFPGA駆動アプリケーション利用の前提条件であった資本集約かつ時間のかかるステップをすべて避けることができ、 他のソフトウェアに使用されているビジネスモデルと同様にする事ができます。 あなた自身のロジックを設計し、クラウドベースのツールを使ってそれをシミュレートして検証し、それを数日で市場に出すことができます。 Intel Broadwell E5 2686 v4プロセッサ搭載(全コアにてベース 2.3 GHz、ターボモード 2.7 GHz、3.0 GHzターボモード 1コア)、最大976 GiBのメモリ、最大4 TBのNVMe SSDストレージ、 1から8個までのFPGAであるF1インスタンスは、コアおよびFPGAベースのロジックを補完する豊富なリソースを提供します。 各FPGAは各インスタンスが専有し、マルチテナント環境でも分離されています。FPGAの仕様は次のとおりです(1つのF1インスタンスに最大8つあります): Xilinx UltraScale+ VU9P (16 nm製造プロセス) 288bit幅のバスをもった64 GiBのECC機能付きメモリを搭載 […]

Read More