Amazon Web Services ブログ

AWS Japan Staff

Author: AWS Japan Staff

サーバレス JavaScript アプリケーションで SAML: Part I

このブログ記事は AWS の Richard Threlkeld, Gene Ting, Stefano Buliani によって AWS Compute Blog に投稿された「SAML for Your Serverless JavaScript Application: Part I」の翻訳記事です。 このブログ記事に掲載したコードや SAM テンプレートの全体は samljs-serverless-sample GitHub レポジトリにあります。手動でリソースを作成する事もできますが、GitHub レポジトリにある SAM テンプレートを使ってリソースを作成することを強くお勧めします。 SAML 認証連携を実現したくありませんか? AWS プラットフォームで使うことができる一時的なセキュリティ認証情報の発行を、短期間の SAML アサーションを交換で実現できます。 エンタープライズ Web アプリケーションを構築する時は、認証や認可が一貫して行われ業界のベストプラクティスに沿っている事が必須事項です。AWS では、ユーザに一意のIDを作成し、AWS のサービスにアクセスできる短期間の認証情報を使えるようにできる Amazon Cognito と呼ぶサービスを構築しました。これらの認証情報は、IAM ポリシーに基づくロールと関連付けて、異なるリソースへのアクセスを許可や拒否する事ができます。 この記事では、Amazon Cognito で SAML プロバイダと認証連携を行う異なる方式を紹介していきます。応用すると、異なるタイプの認証プロバイダ (IdP) と連携させることができます。Facebook、Twitterやその他のサードパーティのソーシャルメディアを IdP にする事もできます。Amazon Cognito […]

Read More

R で Amazon Athena を活用する

データサイエンティストはしばしば、R から SQL クエリを投げるときに、その裏側のビッグデータ基盤のインフラ管理を気に掛けなければなりません。Amazon Athena はインフラ管理の必要がなく、標準 SQL で簡単に S3 上のデータを直接分析できる、インタラクティブクエリサービスです。R と Amazon Athena の連携によって、データサイエンティストはインタラクティブな分析ソリューションのための、強力なプラットフォームを手に入れることができます。 このブログポストでは、Amazon EC2 インスタンス上で動作する R/RStudio から Athena に接続します。 事前準備 Athena との連携を開始する前に、以下のステップを完了してください。 AWS アカウントの管理者に依頼して、Athena にアクセスするのに必要な権限を、Amazon の Identity and Access Management (IAM) コンソール経由で、自身の AWS アカウントに付与してもらってください。具体的には、IAM にあるデータサイエンティストのユーザーグループに対して、関連する Athena のポリシーをアタッチします Amazon S3 バケットに、ステージングディレクトリを作成してください。Athena はクエリする対象のデータセットと、クエリ結果を置く場所として、このバケットを利用します。このポストでは、ステージングバケットを s3://athenauser-athena-r とします 注意: このブログポストでは、すべての AWS リソースは us-east-1 リージョンに作成します。ほかのリージョンでも Athena が利用可能かどうか、製品およびサービス一覧で確認してください。 EC2 上での […]

Read More

新機能 – Amazon EMR インスタンスフリート

今日は、インスタンスフリートと呼ばれる クラスターの新機能をご紹介します。インスタンスフリートは、インスタンスのプロビジョニングに広範囲な選択肢やインテリジェンスをもたらします。対応する加重容量やスポット入札価格 (スポットブロックを含む) を最大 5 つのインスタンスタイプのリストに追加できるようになりました。EMR は、クラスター作成時にこれらのインスタンスタイプの間でオンデマンドおよびスポット容量を自動的にプロビジョニングします。そのため、これまでよりも簡単かつ低コストに、希望のクラスター容量をすばやく取得して管理することができます。また、アベイラビリティーゾーンのリストを指定することもでき、EMR は、このうちのいずれかの AZ で最適にクラスターを起動します。また、EMR は、インスタンスをフリートの利用可能ないずれかのタイプに置換することで、スポットインスタンスの中断に備えてクラスターの再分散を続けます。その結果、クラスター容量全体を容易に管理できます。インスタンスフリートは、インスタンスグループの代わりに使用することもできます。グループと同様、クラスターには、マスター、コア、タスクフリートが作成されます。コンソールのアップデートを確認し、フリートの動作について詳しく調べてみましょう。EMR コンソールを開き、[クラスターの作成] ボタンをクリックします。なじみのある EMR プロビジョニングコンソールが表示されたら、左上隅付近にある詳細オプションに移動します。最新の EMR バージョン (インスタンスフリートは、5.0.x を除く 4.8.0 以上の EMR バージョンで使用可能) を選択し、[次へ] をクリックします。これで正常に表示されます。ハードウェアオプションの新しい [インスタンスフリート] を選択します。 ここで、コアグループを変更して、クラスターのニーズを満たす一組のインスタンスタイプを選択します。 EMR は、最もコスト効率の高い方法で要件を満たせるように、各インスタンスフリートとアベイラビリティーゾーンの容量をプロビジョニングします。EMR コンソールでは、インスタンスタイプごとに vCPU を加重容量と簡単にマッピングできるため、vCPU を容量ユニットとして使用しやすくなります (コアフリートに合計 16 個の vCPU が必要)。vCPU ユニットが、インスタンスタイプの分量指定に関する条件に一致しない場合は、[Target capacity] セレクタを変更して、任意のユニットを追加し、容量を定義します (API/CLI によるキャパシティーユニットの消費量も変更されます)。クラスターがプロビジョニングされており、ユーザー定義のタイムアウト内に希望のスポット容量を入手できない場合は、オンデマンドインスタンスを終了またはフォールバックして、残りのキャパシティーをプロビジョニングできます。また、インスタンスフリートで使用されるこれらの機能はすべて、「AWS SDK」および「CLI」より入手できます。インスタンスフリートをプロビジョニングする方法を詳しく見てみましょう。まず、my-fleet-config.json に configuration json を作成します。 [ { “Name”: “MasterFleet”, “InstanceFleetType”: “MASTER”, […]

Read More

発表: Amazon ElastiCache で Redis バックアップおよび復元を実現、クラスターのサイズ変更も可能に

インメモリキャッシュは、アプリケーション設計時またはソリューション構築時の大規模なパフォーマンス強化やコスト削減と同等に扱われます。ここで、サービスが 1 つのみの場合は、スケーリングする機能を強化しながら、継続的にクラウド内のインメモリキャッシュをより簡単にデプロイおよび活用できるようにします。冗談はさておき、この優れた機能を実現するクラウドサービスとは、もちろん Amazon ElastiCache です。Amazon ElastiCache は、パフォーマンスの高いインメモリデータストアまたはキャッシュをクラウドで実現する AWS マネージドサービスです。I/O 集約型または計算量の多いデータの低レイテンシー、安全性、アクセスを実現するための分散環境を作成、スケール、管理する簡単な方法を提供します。また、ElastiCache では、Amazon CloudWatch を通じて、キャッシュシステムのノードの主要なパフォーマンスメトリクスの可視性を強化すると同時に、障害が発生したノードを検出して置換することで、インメモリデータ構造サーバやキャッシュのインフラストラクチャを管理するオーバーヘッドを抑えることができます。この優れたサービスで、Redis バックアップおよび復元とクラスターのサイズ変更を実現しました。 Amazon ElastiCache に精通している方であれば、ElastiCache で次の 2 つのインメモリキー値エンジンがサポートされていることをご存じでしょう。 Memcached: パフォーマンスの高いオープンソースの分散メモリオブジェクトキャッシュシステム。データベースの負荷を軽減して動的なウェブアプリケーションを高速化することを当初の目的として 2003 年に開発されました。 Redis: オープンソースのインメモリデータ構造ストア。Redis クラスターを使用して、組み込みレプリケーション、アトミックオペレーションサポート、さまざまなレベルのオンディスクの永続性、高可用性を実現しながら、キャッシュ、メッセージング、データベースのブローカーとして開発され、2009 年に発表されました。 2016 年 10 月、Redis 3.2.4 使用の Redis クラスターがサポートされるようになり、ElastiCache Redis のユーザーは Redis クラスターを活用できるだけでなく、次のことが行えるようになりました。 クラスターレベルのバックアップの作成 バックアップ内のクラスターのシャード単位でのスナップショットの生成 最大 15 シャードの間で 3.5TiB のデータのワークロードのスケール ElastiCache や関連する機能を活用した Redis の使用については、「Amazon ElastiCache for Redis」の製品ページを参照してください。Redis […]

Read More

発表: Amazon GameLift がすべての C++ と C# ゲームエンジンをサポート

すべてのゲーム開発者の方にお知らせします。数週間前にサンフランシスコで行われた GDC 2017 は大人気でした。そのため、クールなゲームの学習と構築に刺激を受け、情熱を注ぐには今が最適なタイミングです。ここで、Amazon GameLift がすべての C++ と C# ゲームエンジンで利用可能になったことをお知らせします。これには、Amazon Lumberyard、Unreal Engine、Unity が含まれ、そのすべてでゲームセッションのマッチング機能が向上しています。Amazon GameLift に詳しくないお客様向けに、ゲーム開発者が楽しく革新的なオンラインゲーム体験を提供できるよう支援するために設計された、このマネージド型サービスについてご紹介します。 Amazon GameLift は、専用ゲームサーバーをホストするためのマネージド型の AWS のサービスで、ゲーム開発者が簡単にゲームのキャパシティーをスケールし、利用可能なゲームセッションでプレイヤーをマッチングできるようにします。Amazon GameLift を使用すると、サーバーのホスト、ゲームの可用性の追跡、分散サービス拒否 (DDoS) 攻撃からのゲームサーバーの防御が可能なほか、ゲームをオフラインにすることなくアップデートをデプロイできます。Amazon GameLift サービスは Amazon Game Studios の専用ゲームサーバーや外部のゲーム開発顧客に役立ち、指定された時間内に開始、終了するゲームループで、セッションベースのゲームをサポートするよう設計されています。最新の Amazon GameLift リリースではサービスの最新機能が強化されているほか、開発者向けにゲームの開発とデプロイの簡略化を支援する優れた新機能が追加されています。Amazon GameLift サービスのクールな機能のいくつかについて見てみましょう。 複数エンジンのサポート: 当初、Amazon GameLift サービスは Amazon Lumberyard ゲームエンジンのみで使用できました。現在、このサービスは強化され、Unreal Engine や Unity のような一般的なゲームエンジンをはじめ、カスタム C# と C++ ゲームエンジンと統合されます。 新しいサーバー SDK 言語のサポート: より多くのお客様と開発者をサポートするため、このサービスでは C# […]

Read More

Amazon Rekognitionを使ってMacOS Finderのタグ機能を更に良いものにしよう

こちらは、AWSのGlobal Startup EvangelistであるMackenzie Kosut(@mkosut)によってAWS Startups Blogに投稿された「Using Amazon Rekognition to enhance MacOS Finder Tags」の翻訳記事です。 日曜の朝、私はラップトップにある何百枚もの写真が保存されている大きなフォルダを眺めていました。サムネイルは素晴らしいのですが、私が本当にやりたかったことは、簡単にそしてクイックに”崖”の写真を探し当てることでした。 OS X Mavericksからタグ機能が使えるようになり、Finderウインドウでタグ付けされたファイルを探せるようになっています。そこで、私はラップトップからAmazon Rekognitionに写真を送信し、それぞれの写真についてAmazon RekognitionのDeep Learningベースの画像認識を行い、そして、識別情報をタグとしてファイルに登録し、Finderでそのファイルを開けるようにする、という一連の処理に関してどの程度の手間がかかるのか知りたいと思っていました。 これが実現できると、FinderもしくはSpotlight(MacOSの検索機能)において、Tag:<term>という形で検索できるようになります。例えば、全ての猫(cat)の写真を引き当てたい場合は Tag:Cat と入力することで結果を得ることが出来る、というものです。 writexattrsファンクションのコードスニペットをオンラインで見つけた後、そうこうするうちに、Amazon Rekognitionに写真を送り、Tagの結果を得て、それらをファイルに登録することが出来てしまいました。約30分の間に50行ほどのコードを書いて、それが実際に動作するプロトタイプになりました。 コードは https://github.com/mkosut/rekognition_osx_tagfile にありますので、是非ご覧になさってください。 多数の写真がある大きなフォルダーについても正しく動作しました。そして、パフォーマンス向上のため、アップロードの前にイメージのリサイズを行い、プロセスをマルチスレッドで行えるようなpull requestをチームの中のメンバーが送ってくれました。 私が本当に欲しかったものは、画像がフォルダに追加された時に自動でタグ付けされる、というものでした。私はそのためにMacOS Automatorを活用しました。Automatorでは使い勝手の良い簡単なインターフェースを通じてフォルダーのアクティビティをウォッチすることができ、新しいファイルが書き込まれたらアクションを走らせることができます。これはAmazon S3にファイルのファイルが変更された時にAWS Lambdaの処理をいつでも自動的に稼働させるものと似ていると言えるでしょう。 このワークフローは”TagMe”フォルダーに新しいファイルが書き込まれるのを待ち受け、それらを rek_osx_tagfile.py スクリプトにファイル名をパラメーターとして渡して起動します。 それでは最終テストです: 成功しました! このhackを通して私は大きな気付きを得ました。それは、AWSはどんなことにも活用できるケーパビリティを持っているということです。ここには非力な1台のラップトップしかありませんが、私はAmazon Rekognitionの巨大なDeep Learning基盤を用いることで大量の写真の解析をすることができましたし、何より少ないコードでそれを実現できました!   翻訳:篠原英治(原文:「Using Amazon Rekognition to enhance MacOS Finder Tags」 – https://aws.amazon.com/blogs/startups/using-amazon-rekognition-to-enhance-macos-finder-tags/)

Read More

Amazon WorkDocs の更新 – コメントやレビュー機能の強化と新しいアクティビティフィード

以前にも触れましたが、Amazon では自社のシャンパンを好んで飲むようにしています。つまり、独自で開発したサービス、ツール、アプリケーションを仕事の一部として使用し、その上で改善に役立ちそうなアイデアや予想どおりに機能していないものについて開発チームにフィードバックを提供するようにしています。 (旧名: Zocalo) を初めて紹介したのは 2014 年の中頃ですが、私はそれ以来ずっとこのサービスを使用しています (忙しい時は下書きの段階にあるブログが同時に 7 件~8 件あることも稀ではありません)。新しいブログ投稿の下書き (通常 PDF 形式) を WorkDocs にアップロードし、プロダクトマネージャー、プロダクトマーケティングマネージャー、指定されているその他のレビュー担当者と共有します。レビュー後にフィードバックを追加してもらい、下書きを更新して次のフィードバックを待ちます。このプロセスを何度か繰り返した後に下書きが完了し、ブログ投稿の許可を待ちます。このレビュープロセスには開発者、シニアマネジメントなども含まれます。私はドキュメントを共有してフィードバックを待つだけです。できる限り早急にフィードバック (いくつもの提案と場合によっては質問) をすべて読みプロセスし、見落としがないか確認するのが私の仕事です。そこで、今回はこれまで以上に WorkDocs を便利にする最新の機能強化についてご紹介します。コメント機能やレビュー機能の他にアクティビティフィードも追加しました。 コメント機能の強化 レビュープロセスを行っている間に追加されたコメントからディスカッションが始まる場合もあります。特定の機能やイメージが適切であるかどうか検討が必要な場合もあります。会話を簡単に始めたり続行できるようにするため、WorkDocs がスレッドで構成したコメントをサポートできるようになりました。[Reply] をクリックしてコメントに返信するだけです。 次のように表示されます。 [Private] をクリックすると、これにアクセスできるのは最初のコメントを書いたユーザーのみになります。メッセージを分かりやすくするため、コメントでシンプルな形式 (太字、斜体、取り消し線) を使用することもできます。詳しくはこちらをご覧ください。 使用例をご覧ください。 [?] をクリックすると、形式に関する簡単なガイドが表示されます。 コメントのプロセスが完了したら、クリック 1 回でフィードバック機能を無効にすることができます。 詳細については 「フィードバックを追加するには」を「WorkDocs ユーザーガイド」でご覧ください。 レビュー機能の強化 コメントが増えるにつれて、場合によってはレビュー担当者たちに特に注目して欲しいコメントもあると思います。そのような時は、コメント内で @ を入力しポップアップメニューからユーザー名を選択します。 ユーザーにはフィードバックが必要なことをメールでお知らせします。これまでは、レビュー担当になる可能性があるユーザーに WorkDocs ドキュメントの URL が渡っても、そのドキュメントへのアクセスは付与されていませんでした。今後は、そうしたユーザーでも次のようなドキュメントへのアクセスをリクエストできるようになりました。 リクエストはメール経由でドキュメントの所有者から承認を受けるために転送されます。同様に、読み取り専用のアクセス権を許可されていたユーザーも寄稿者レベルのアクセス権をリクエストできるようになりました。 繰り返しますが、リクエストはメール経由でそのドキュメントの所有者から承認を受けるために転送されます。   アクティビティフィード 常時、複数のブログ投稿がレビュープロセスにあるので、これらを上手に整理することはなかなかのチャレンジです。全体図をより分かりやすく提供するため、WorkDocs にアクティビティフィードが追加されました。フィードを見れば、共有しているドキュメントで何が起きているのかが分かります。ファイルやフォルダの作成、変更、削除や追加されたコメントを確認できます。さらに誰が変更を追加したのか、そして変更した日時を確認することもできます。 検索用語を入力してフィードに何を表示するか管理できます。 […]

Read More

Amazon Elasticsearch Service が Elasticsearch 5.1 をサポート

Amazon Elasticsearch Service は、オープンソース検索および分析エンジンである Elasticsearch を容易にデプロイ、運用、拡張できるようにするマネージド型サービスです。このたび Amazon Elasticsearch Service で Elasticsearch 5.1 および Kibana 5.1 がサポートされるようになったことを、ここにお知らせいたします。Elasticsearch 5 は非常に多くの新機能と機能拡張を備えており、Amazon Elasticsearch Service をご利用のお客様はそれらを活用いただけるようになりました。今回の Elasticsearch 5 のリリースには、次のような内容が含まれています。 インデックス作成のパフォーマンス: ロックの実装の更新および非同期のトランザクションログ FSYNC による、インデックス作成のスループットの向上 取り込みパイプライン: 受信データは一連の取り込みプロセッサを適用するパイプラインに送信できます。これにより検索インデックスに必要なデータに正確に変換できます。単純な付加アプリケーションから複雑な正規表現アプリケーションまで、20 個のプロセッサが含まれています Painless スクリプティング: Amazon Elasticsearch Service は Elasticsearch 5 のための新しい安全でパフォーマンスに優れたスクリプト言語である、Painless をサポートします。スクリプト言語を使用すると、検索結果の優先順位を変更したり、クエリでインデックスフィールドを削除したり、検索結果を修正して特定のフィールドを戻したりすることができます。 新しいデータ構造: 新しいデータ型である Lucene 6 データ構造をサポートし、半精度浮動小数点、テキスト、キーワード、さらにピリオドが含まれるフィールド名を完全にサポートします 検索と集計: リファクタリング検索 API、BM25 関連性計算、Instant Aggregations、ヒストグラム集計と用語集計の機能強化、再設計されたパーコレーターと完了サジェスタ ユーザーエクスペリエンス: 厳密な設定、本文とクエリ文字列パラメーターの検証、インデックス管理の向上、デフォルトで廃止予定のログを記録、新しい共有割り当て API、ロールオーバーと圧縮 API […]

Read More

Amazon EC2 Systems Manager を使用して AMI メンテナンスとパッチ適用を合理化 | 自動化

EC2 シニアプロダクトマネージャーの Taylor Anderson が自動化を利用して AMI メンテナンスとパッチ適用を合理化する方法についてご説明します。-Ana 去年 12 月の re:Invent でリリースした Amazon EC2 Systems Manager では、ソフトウェアインベントリの収集や OS パッチの適用、システムイメージの作成そして Windows や Linux のオペレーティングシステム設定などのプロセスを自動化することができます。こうした機能は自動設定や継続的に行う大規模なシステム管理を自動化し、Amazon EC2 やオンプレミスで実行しているインスタンスのソフトウェアコンプライアンスを維持することができます。Systems Manager には自動化の機能が含まれています。パッチの適用やエージェントの更新、Amazon Machine Image (AMI) にアプリケーションを組み込む場合に、この機能を使用することができます。自動化を使用することで、イメージの更新を手動で行うための時間や労力を省くことができます。代わりに、合理化し繰り返し可能で監査可能なプロセスを通じて AMI を構築することができます。先日、AWS は自動化に関する公開ドキュメントを初めてリリースしました。詳しくは AWS-UpdateLinuxAmi をご覧ください。 このドキュメントは Ubuntu、CentOS、RHEL、Amazon Linux AMI のパッチ適用を自動化できるようしたり、その他のサイト固有のパッケージと設定のインストールも自動化します。さらに、自動化ドキュメントを最初に書く必要を排除することで自動化を取り入れやすくしています。 AWS-UpdateLinuxAmi は、ご自分の自動化ワークフローを構築する場合にテンプレートとして使用することもできます。Windows ユーザーを対象にした、今後公開予定の AWS-UpdateWindowsAmi ドキュメントはこれと同等の内容を提供します。AWS-UpdateLinuxAmi は次のワークフローを自動化します。 ソース Linux AMI から一時 EC2 インスタンスを起動 インスタンスのアップデート インスタンスでユーザー提供の更新前のフックを起動 […]

Read More

EC2 リザーブドインスタンスの新たなインスタンスサイズの柔軟性

リザーブドインスタンスは AWS のお客様がご利用されている EC2 の使用量に対し、大幅な割引を提供します (オンデマンドの料金に比べ最大 75% の割引)。また、特定のアベイラビリティーゾーン (AZ) で使用する RI を購入される際のキャパシティー予約においても同様です。去年後半には、リージョン内の AZ すべてを対象に割引を適用するリージョン RI をリリースし、今まで以上にリザーブドインスタンスの柔軟性を高めました。また、リザーブドインスタンスに関連付けられたインスタンスファミリーやその他のパラメーターを変更できるようにするコンバーティブル RI も提供しました。どちらのタイプの RI も管理に掛かるコストを削減し、追加オプションを提供します。リージョン RI を使用すると、RI 割引の対象になる AZ で起動することを心配せずにインスタンスをスタートできます。コンバーティブル RI を使用する場合、時間が経過するに連れて選択するインスタンスタイプやサイズが変わっても、RI が使用量に適しているか確認することができます。 インスタンスサイズの柔軟性 3 月 1 日より、すでにご利用されているリージョン RI の柔軟性が今まで以上に高まります。一括請求により、複数のアカウントで使用している場合でも、共有テナンシーを持つすべての Linux/UNIX RI をインスタンスファミリーと AWS リージョン内のあらゆるサイズのインスタンスに適用できるようになりました。これにより、RI の管理時間を節約したり、コンピューティングリソースをよりクリエイティブで革新的に使用できるようになります。新しい RI や既存の RI のサイズはインスタンスサイズに基づいた正規化係数により決定されています。 インスタンスサイズ 正規化係数 nano 0.25 micro 0.5 small 1 medium 2 […]

Read More