Amazon Web Services ブログ

Category: Compute

[AWS Black Belt Online Seminar] Amazon ECS Deep Dive 資料及び QA 公開

先日 (2019/7/31) 開催しました AWS Black Belt Online Seminar「Amazon ECS Deep Dive」の資料を公開しました。当日、参加者の皆様から頂いた QA の一部についても共有しております。 20190731 Black Belt Online Seminar Amazon ECS Deep Dive from Amazon Web Services Japan AWS クラウドサービス活用資料集(すべての過去資料が閲覧できます) Q. Fargateのタスクスケジューリングにおいても、AWS Secrets Managerを利用できるのでしょうか?(以前検証した時、タスクスケジューリングではAWS Secrets Managerを利用できなかったため) A. はい、ご利用いただけます。ご利用の際考慮する点としては、タスクに付与されたタスク実行ロールにて AWS Secrets Manager や KMS の操作が許可されている必要があります。詳細はこちらをご覧ください。 Q. 複数ECSサービスを起動する場合、同数のALBが必要になるのでしょうか?Targetgroupの数だけでよい認識です。 A ご指摘ありがとうございます。ご指摘通りの構成をご利用いただけます。ウェビナー中に紹介したような複数 ALB 構成は、例えば各マイクロサービスにおける各チームの独立性をAWSリソースのレベルで担保したいような場合に効果的です。設計に応じて使い分けくださいませ。 Q. ECS Agentがコントロールプレーン、コンテナホストのDockerdへのどのような制御を行っているか網羅的に理解できる資料はございませんか? A 現時点で紹介できる資料はございません。具体的な動きを確認したい場合、GitHubにて公開されているAmazon ECS […]

Read More

Fluent Bit による集中コンテナロギング

本投稿は Wesley Pettit と Michael Hausenblas による寄稿を翻訳したものです AWS はビルダーのために作られています。ビルダーは常に最適化の方法を模索し、それはアプリケーションのロギングにも当てはまります。全てのログの重要性が同等ということはありません。あるログはリアルタイムの分析を必要とし、他のログは必要となった時に分析が行えるよう単に長期間保管しておくことを必要としたります。それ故に AWS とパートナーが提供する様々なストレージや分析のツールに容易にログをルーティングできることが重要です。 そこで私たちは Fluent Bit をサポートし、コンテナ化されたアプリケーションから AWS やパートナーのログ保存ソリューション、ログ分析ソリューションへのログストリーム向けに、容易に利用可能な拡張ポイントを作成できるようにします。新しくリリースしたAWSコンテナイメージ向けの Fluent Bit プラグインを用いて、ログを Amazon CloudWatch と Amazon Kinesis Data Firehose の送信先 (Amazon S3、Amazon Elasticsearch Service、Amazon Redshift を含みます)へルーティングすることが可能です。 本投稿では、Fluent Bit プラグインのECS、EKS 両クラスタでの動作をご紹介いたします。ツール自体に慣れていない場合は、こちらの記事(basics of Fluentd and the Kinesis Firehose)にあるチュートリアルを確認いただくと参考になるかもしれません。よろしければ AWS containers roadmap の関連するイシュー #10 と #66 もご参照ください。

Read More

AWS Fargate で AWS Secrets Managerを使用して認証情報を保護する

本投稿は AWS コンテナサービスのプリンシパルディベロッパーアドボケートである Massimo Re Ferreによる寄稿です クラウドのセキュリティはAWSの最優先事項であり、コンテナチームの取り組みがその証でもあります。およそ1か月前、私たちは AWS Secrets Manager や AWS Systems Manager パラメータストアと、AWS Fargate タスクの統合機能を発表しました。 これにより Fargate のお客様は、ご自身のタスク定義から秘密情報を安全に、パラメータを透過的に利用することができます。 この記事では、秘密情報を確実に保護しつつ Secrets Manager と Fargate の統合を利用する方法の例を紹介します。 概要 AWS は複数の重要なセキュリティ上の基準を以って Fargate を高度にセキュアに設計しました。その 1つは、各Fargate タスクはそれぞれに分離境界があり、下層のカーネル、CPUリソース、メモリリソース、またはElastic Network Interface(ENI)を他のタスクと共有していないところです。 セキュリティに重点を置くもう 1 つの領域は、Amazon VPC ネットワーキング統合です。これにより、ネットワーキングの観点から Amazon EC2 インスタンスを保護する手法で Fargate タスクを保護できます。 この発表は、責任共有モデルの観点でも重要です。例えば、AWSのプラットフォーム上でソリューションを構築して実行するようなDevOpsチームは、アプリケーションコードの実行時に秘密情報、パスワード、機密パラメータをセキュアに管理する適切な仕組みや機能を必要とします。そして、プラットフォームの機能によって彼ら/彼女らがまさにそのようなことを可能な限り簡単に実行できるようにすることが私たちの役割なのです。 私たちは、時に一部のユーザーがセキュリティ面をトレードオフとして俊敏性を得るために、ソースコードに AWS 認証情報を埋め込んだままパブリックリポジトリにプッシュしたり、プライベートに格納された設定ファイルに平文でパスワードを埋め込んでいるのを見てきました。私たちは、さまざまなAWSサービスを利用している開発者が IAM ロールを Fargate タスクに割り当てることができるようし、AWS 認証情報を透過的に取り扱えるようにすることで、この課題を解決しました。 これはネイティブな […]

Read More

Amazon EKS バージョンライフライクルの更新

本投稿は Nathan Taber と Michael Hausenblas による寄稿を翻訳したものです re:Invent 2017で、私たちは Amazon Elastic Container Service for Kubernetes(Amazon EKS) を紹介しました。当時発表した次の tenets(信条) は、現在に至るまで引き続き確かなものであると考えています。

Read More

Apache Spark を実行しているAmazon Kinesis Data Firehose と Amazon EMR によるダウンストリームデータ処理の最適化

増え続けるデータを処理し、新しいデータソースを取り込むことは、多くの組織にとって大きな課題となっています。  多くの場合、AWS のお客様は接続中のさまざまなデバイスやセンサーからメッセージを受け取っていますが、それらを詳しく分析する前に、効率的に取り込み、処理する必要があります。  結果として、あらゆる種類のデータが行き着くソリューションが Amazon S3 となるのは当然と言えるでしょう。  ただし、データが Amazon S3 に格納される方法によって、ダウンストリームデータ処理の効率とコストに大きな違いが生じる可能性があります。  具体的に言うと、Apache Spark では少数の大きなファイルを処理する場合に比べて、小さいファイルを数多く処理すると、ファイル操作に負担がかかります。  これらのファイルにはそれぞれ、メタデータ情報のオープン、読み込み、クローズの処理に数ミリ秒のオーバーヘッドがあります。これらのファイルを数多くファイル操作すると、このオーバーヘッドのために処理が遅くなります。このブログ投稿では、Amazon Kinesis Data Firehose を使用して、Amazon S3 に配信する多数の小さいメッセージを大きいメッセージにマージする方法を説明しています。  この結果、Spark を実行している Amazon EMR の処理が高速化します。 Amazon Kinesis Data Streams と同様、Kinesis Data Firehose は最大で 1 MB のメッセージサイズを受信できます。  単一のメッセージが 1 MB を超える場合は、ストリームに配置する前に圧縮できます。  ただし量が多い場合、メッセージのファイルサイズが 1 MB 以下だと通常小さすぎます。  正しいファイルサイズというものはありませんが、多くのデータセットでは 1 MB を指定するとファイルの数とファイル操作が多すぎることになるでしょう。 この投稿では、Amazon S3 にある Apache Spark を使用して、圧縮ファイルを読み込む方法についても説明します。この圧縮ファイルには適切なファイル名拡張子がなく、parquet […]

Read More

Amazon Connectのスケジュールされた レポートを自動的に送信する

コンタクトセンターではデータが重要です。 スーパーバイザとマネージャは、レポートを使用して、チームのパフォーマンスを確認し、要員配置の計画を立てます。 必要なときに必要なデータを人々に提供することは不可欠です。 このブログ記事では、レポートの生成を有効にしてEメールで自動的にユーザーに送信する方法について説明します。 以下のサービスを使用します。 Amazon S3 AWS Lambda Amazon SES Amazon CloudWatch with Amazon Connect このブログでは、 AWS CloudFormationを使用してデプロイを簡素化する方法についても説明します。 このブログのソリューションでは、 Amazon Connectのネイティブレポート機能を使用してレポートを設定およびスケジュールします。 そのスケジュール設定されたレポートは、Amazon Connectの設定で指定したS3バケットに作成されます。 レポートがS3に作成されると、Lambda関数を起動するイベントが発生します。 Lambda関数はイベントを読み取り、S3からレポートを取得して、指定されたEメールアドレスに送信します。 すべてのアクティビティは追跡目的でCloudWatchに記録されます。 では始めましょう。 このセットアップを完了するには、次のものが必要です。 アクティブなAWSアカウント us-east-1(バージニア北部)またはus-west-2(オレゴン)のいずれかにあるAmazon Connectインスタンス。 Amazon SESはこれらのAmazon Connectリージョンでのみ使用可能であるため、この設定ではこれら2つのリージョンのみがサポートされています。 インスタンスを作成したら、電話番号を取得します。 詳細については、Amazon Connect の使用開始を参照してください。 あなたのアカウントに設定されたAmazon SES。 このソリューションでは、Amazon SESを使用してレポートを指定の受信者にEメールで送信します。 SESを使用してEメールを送信するには、送信元アドレスを確認して、自分が所有者であることを示します。 サンドボックスにいる場合は、 送信先アドレスも確認する必要があります。 あなたは、Eメールアドレスまたはドメイン全体を確認することができます。 検証プロセスについては、Amazon SES のIDの検証を参照してください。 アカウントをサンドボックスから削除する方法については、Amazon SES サンドボックスの外への移動を参照してください。 このCloudFormationテンプレートを実行するための適切なIAM権限。 これには、IAMロールとLambda関数を作成する権限が含まれます。 […]

Read More

高度な Amazon CloudWatch メトリクスと AWS Lambda を使用したアイドルチェックとリソースの自動終了による Amazon EMR コストの最適化

多くのお客様が、その開発環境で Apache Spark および Apache Hive のクエリなどのビッグデータワークロードを実行するために Amazon EMR を利用しておられます。データアナリストとデータサイエンティストは、分析 EMR クラスターとして知られるこれらのタイプのクラスターを頻繁に使用しますが、ユーザーは、作業終了後にクラスターを終了し忘れることがしばしばあります。これはクラスターのアイドル実行につながり、不必要なコストが生じることになります。 このオーバーヘッドを避けるため、EMR クラスターのアイドル状態を追跡し、アイドル状態で長時間にわたって実行される場合にクラスターを終了する必要があります。YARN ジョブが実行されているかどうかをチェックすることによってクラスターのアイドル状態を判断する Amazon EMR ネイティブの IsIdle Amazon CloudWatch メトリックがありますが、クラスターがアイドル状態かどうかを判断するためにも、接続されている SSH ユーザー、または実行中の Presto ジョブなどの追加のメトリクスを検討するべきです。また、Apache Zeppelin で Spark ジョブを実行する場合、ジョブの実行が終了した後でも、IsIdle メトリックが長時間アクティブ (1) 状態のままとなります。このような場合、IsIdle メトリックはクラスターの非アクティブ状態を判断するには適切ではありません。 このブログ記事では、このオーバーヘッドコストを削減するソリューションを提案します。このため、EMR クラスターのマスターノードにインストールされるバッシュスクリプトを実装しました。このスクリプトは 5 分ごとに実行されるようにスケジュールします。スクリプトはクラスターを監視し、5 分ごとにカスタムメトリック「EMR-INUSE」 (0 = 非アクティブ、1 = アクティブ) を CloudWatch に送信します。CloudWatch が事前定義されたデータポイントセットの一部に対して 0 (非アクティブ) を受け取ると、CloudWatch がアラームをトリガーし、アラームがクラスターを終了する AWS Lambda 関数を実行します。 […]

Read More

【アップデート】AWS 大阪ローカルリージョンで最新世代の Amazon EC2 インスタンスが利用可能に

本日より最新世代のAmazon EC2 T3、M5、C5、およびR5インスタンスがAWS 大阪ローカルリージョンで利用可能です。 これらのインスタンスには最新世代のIntelプロセッサが含まれ、仮想化のオーバーヘッドを削減しながら、高性能、高可用性、高セキュリティを提供するためAWS Nitro Systemを使用し構築されています。

Read More

SAP on AWS最新情報 – お客様ケーススタディ、スケールアップ、スケールアウトほか

SAP SAPPHIRE NOW 2019が今週フロリダで開催されます!私のAWSの同僚もたくさん現地にいるでしょう。そして、彼らは皆さんと喜んで会話したいと思っています。今日は、SAPが推進するOLTPとOLAPのエンタープライズワークロードを稼働するのにAWSが最適な環境であることを確かめるために、私たちが実施してきた取り組みについて、いくつかのお客様のサクセスストーリーを共有し、簡潔な最新情報をお知らせします。

Read More

データカタログと ETL ジョブの AWS Glue トリガーを使用してサーバーレスデータレイクを構築および自動化する

今日、データは、IoT センサー、アプリケーションログ、クリックストリームなどのリソースの非構造化データ、トランザクションアプリケーション、リレーショナルデータベース、スプレッドシートの構造化データなど、あらゆる場所から流れています。データはすべてのビジネスにとって非常に重要な部分になりました。そのため、データから迅速にデータを抽出するために、信頼できる唯一の情報源を維持し、データの取り込みから変換、分析まで、パイプライン全体を自動化する必要があります。 データ量、速度、種類が増えるにつれて、データ分析の複雑さに対する懸念が高まっています。この懸念は、データをビジネスユーザーが使用できる状態にするために必要な手順の数と複雑さから生じています。多くの場合、データエンジニアリングチームは、パイプラインの構築と、その抽出、変換、ロード (ETL) の最適化に時間を費やしています。プロセス全体を自動化することで、価値実現までの時間と運用コストを削減できます。この記事では、完全に自動化されたデータカタログと ETL パイプラインを作成してデータを変換する方法について説明します。 アーキテクチャ この記事では、以下のアーキテクチャを構築して自動化する方法を学びます。 プライマリデータストアとして Amazon Simple Storage Service (Amazon S3) を使用して、サーバーレスデータレイクを構築します。Amazon S3 のスケーラビリティと高可用性を考えると、データの信頼できる唯一の情報源として最適です。 Amazon S3 にデータを取り込み、保存するためにさまざまな手法を使用できます。たとえば、ストリーミングデータを取り込むために Amazon Kinesis Data Firehose を使用できます。既存のデータベースからリレーショナルデータを取得するために AWS Database Migration Service (AWS DMS) を使用できます。また、AWS DataSync を使用して、オンプレミスのネットワークファイルシステム (NFS) からファイルを取り込むこともできます。 取り込まれたデータは Amazon S3 バケットに入り、これを raw ゾーンと呼びます。そのデータを利用できるようにするには、そのスキーマを AWS Glue のデータカタログに登録する必要があります。これを行うには、Amazon S3 トリガーによって呼び出される AWS Lambda 関数を使用して、データをカタログ化する AWS Glue クローラを起動します。クローラによるテーブル定義の作成が完了したら、Amazon […]

Read More