Amazon Web Services ブログ

週刊AWS

週刊AWS – 2019/10/14週

こんにちは、AWSソリューションアーキテクトの小林です。つい最近まで残暑が厳しかったのに、最近は急に寒くなってきたような気がします。年々秋が短くなっているような気がするのですが気のせいでしょうか?そういえば、私は暑い時期に冷やし中華を食べるのが好きなのですが、毎年食べ納めをやることができず残念な思いをしています。冷やし中華が始まるタイミングはきちんと認識できるのですが、終わるタイミングは人知れずひっそりと終わってしまっているような気がします。来年こそはしっかりと、食べ納めをしたいところです……

Read More

お使いの AWS Organization で、サービスコントロールポリシーを使用して、複数アカウントのアクセス許可のガードレールを設定する方法

AWS Organizations では、複数アカウントに対する集中ガバナンスおよび集中マネジメントを提供します。集中セキュリティ管理者の皆さんは AWS Organizations を使用してサービスコントロールポリシー (SCP) を適用することで、IAM プリンシパル (ユーザーおよびロール) が忠実に順守するコントロールを確立しています。今回、SCP を使用して、AWS Identity and Access Management (IAM) ポリシー言語がサポートする精緻なコントロールでアクセス許可のガードレールを設定できることになりました。これにより、ポリシーを微調整して、組織内のガバナンスルールの要件に厳密に適合させることがこれまで以上に簡単になります。 SCP を使用すると、Conditions、Resources、NotAction を指定して、組織全体または組織単位で複数アカウントにわたるアクセスを拒否できます。たとえば、SCP を使って、特定の AWS リージョンへのアクセスを制限できます。また、お客様の集中管理者が使用する IAM ロールのような共有リソースを、IAM プリンシパルが削除できないようにすることも可能です。さらに、お客様のガバナンスコントロールの例外を定義できると同時に、特定の管理者ロールを除いてアカウント内のすべての IAM エンティティ (ユーザー、ロール、ルート) に対するサービスアクションを制限できます。 SCP を使ってアクセス許可のガードレールを運用するには、AWS Organizations コンソールにある新しいポリシーエディタを使用します。このエディタ内でアクション、リソース、条件を追加することで、SCP を簡単に作成できます。この記事では、SCP の概要をご説明し、新機能をご紹介して、さらに皆さんの組織でも今すぐ使えるような SCP のサンプルの作成方法をご覧いただきます。 サービスコントロールポリシーという概念の概要 例をいくつかご紹介する前に、SCP の機能と AWS Organizations について説明します。 SCP は、アカウント内のすべての IAM エンティティに対するアクセス権限を一元管理できる機能を提供します。そのため、皆さんが必要だと考えるアクセス許可を社内の対象者全員に対して施行できます。SCP を使用すると、開発者が自分のアクセス許可を管理する自由度が増しますが、これは開発者のオペレーションが皆さんが定義した境界線内に限られるからです。 SCP は AWS Organizations によって作成、適用します。組織を作成すると、AWS […]

Read More

Amazon EC2 インスタンスの起動時にカスタム暗号化キーを使用して、暗号化された Amazon EBS ボリュームの作成が可能に

Amazon Elastic Block Store (EBS) は Amazon EBS ボリュームの暗号化ソリューションを提供するため、ブロックストレージの暗号化キーを管理するための独自のインフラストラクチャを構築、維持、保護する必要はありません。Amazon EBS 暗号化は、暗号化されたの Amazon EBS ボリュームを作成するときにAWS Key Management Service (AWS KMS) のカスタマーマスターキー (CMK) を使用し、AWS KMS の使用に関連する 利点をすべて提供します。Amazon EBS ボリュームを暗号化するには、AWS 管理型 CMK またはカスタマー管理型 CMK のいずれかを指定できます。カスタマー管理型 CMK を使用する場合、AWS KMSでの CMK を毎年ローテーションするなど、暗号化キーをきめ細かく制御できます。CMK の作成の詳細については、のキーの作成を参照してください。 この投稿では、EC2 コンソール、AWS CLI、AWS SDK から EC2 インスタンスを起動するときに、カスタマー管理型 CMK を使用して暗号化された Amazon EBS ボリュームを作成する方法を示します。 EC2 コンソールから暗号化された Amazon EBS ボリュームを作成する […]

Read More

AWS re:Invent 2019 で開催予定の Amazon DynamoDB セッション、ワークショップ、およびチョークトークのご案内

 AWS re:Invent 2019 がもうすぐ開催されます! この記事には、AWS re:Invent 2019 で行われる、Amazon DynamoDB セッション、ワークショップ、チョークトークの全リストを掲載しています。この記事の情報で、今年のラスベガスでのコンファレンスウィークをうまくスケジューリングしましょう。上司を説得できず、まだ AWS re:Invent 2018 に登録していない方々は、こちらの 出張の必要性についてのメモをお読みください。 レベル 200 – 入門 DAT205 – Verizon Media が Amazon DynamoDB を使用してプッシュ通知を実施する方法 Verizon Media は Verizon の象徴的なブランドの要件に対応し、3 分未満で 2,700 万台のデバイスのプッシュ通知完了時間を実現し、すべてのユーザーにプッシュ「トースト」を一貫して表示するために、より優れ、強力で高速のプッシュ通知システムを作成する必要がありました。Verizonは、Amazon DynamoDB と Amazon ElastiCache や Amazon SQS などの他の AWS のサービスを独自の Vespa 検索エンジンと組み合わせて使用し、ブランドのすべてのユースケースを強化することにしました。Verizon はまた、Kubernetes も使用して、多くの Amazon EC2 インスタンスにわたるマイクロサービスを調整します。このセッションにご参加いただき、Verizon がこれらのすべてを達成してきた方法を学んでください。 レベル 300 […]

Read More

新しい edX コースで Amazon DynamoDB を使用した NoSQL データベース指向アプリケーションを構築する方法

 最近の組織は絶えずデータからより大きな価値を得る方法を探しており、そのことによりチームや個人が AWS クラウドでデータ指向のアプリケーションを構築する方法を理解することがますます重要になっています。 データ環境はさらに多くのクラウドベースのデータベースを含むように進化し続け、ますます多くの開発者がアプリケーションの特定のニーズを満たす専門的に構築された非リレーショナルデータベースを選択するようになっています。 データベースサービスをご使用のお客様は、必要なデータタイプ、アクセスモデル、そして拡張性に適したデータベースを評価して選択することが求められます。このために、この AWS トレーニングと認定がコースを設定して、Amazon DynamoDB の専門のデータベースサービスを使用する方法を教えてきました。 NoSQL データベースを詳しく説明する NoSQL データベースとそれらが解決する課題を詳細に説明するために、AWS トレーニングと認定は当社のデジタルトレーニングパートナーである edX Amazon DynamoDB: Building NoSQL Database-Driven Applications デジタルコースを独占的に提供します。このコースでは、バックアップと復元、セキュリティと暗号化、グローバルテーブル、そしてベストプラクティスを含むさまざまな Amazon DynamoDB のトピックを見ていきます。また、次のことについてもお教えします。 NoSQL データベースがリレーショナルデータベースと異なる点とそれらが解決する課題 DynamoDB テーブルのプロビジョニング、管理、およびインターラクトの方法 DynamoDB データベースのセキュリティを保護する方法 パーティションキーとスケーリングオプションを使用して、最適なパフォーマンスを確保する方法 このコースについて Amazon DynamoDB: NoSQL データベース指向のアプリケーションを構築することは、以前のアプリケーション開発と AWS マネジメントコンソールの経験で学習者と edX に関する AWS 開発者シリーズ を修了した方々に推奨した中程度のコースです。 4 週間のレッスンに分けて、1 週間あたり 2 時間から 5 時間の学習時間、12 時間のビデオベースの講義、デモ、および実践演習が想定されています。学習者は自分のペースと締め切りを設定できます。 毎週、学習者は自分の知識をテストするために、オプションのクイズにもアクセスすることもできます。 このオンデマンドコースは無料でご利用になれます。ただし、期限があります。検証済みの証明書を取得するため、またはコースの利用可能性を広げるために、学習者は edX の検証済みの証明書トラックに 99 USD の […]

Read More

AWS DeepRacer リーグと re:Invent チャンピオンシップカップ 2019 へのカウントダウン

 AWS DeepRacer リーグは、誰でも参加できる世界初の自走型レーシングリーグです。re:Invent 2018 で発表され、楽しくてエキサイティングな方法ですべての開発者が機械学習を利用できるようにしています。2019 年を通じて、あらゆるスキルレベルの開発者が、Amazon re:MARS や一部の AWS Summit を含む世界中の 21 回の Amazon イベントでリーグに参加し、AWS DeepRacer コンソールを通じてリーグの仮想サーキットでスキルを試しました。リーグは、re:Invent 2019 で閉幕します。すぐにログインしてレースを始めましょう。全費用無料の re:Invent への旅行を勝ち取る時間が残り少なくなっています! トロントでの最終 AWS Summit レース サンタクララで開幕してから 8 か月で、リーグは 17 か国で開催され、何千人もの開発者が 13,000 ラップと 165 マイルの競争を完了しました。各都市でチャンピオンが誕生しており、re:Invent 2019 で彼らの雄姿を見ることができます! 2019 年 10 月 3 日、カナダのトロントでの AWS DeepRacer Summit で 21 戦目であり最後のレースが開催されました。このイベントで、AWS DeepRacer リーグの本人によるレースが終了しましたが、1 回ではなく、4 回の全費用無料の旅行が獲得されました。 最初はトロントのチャンピオン、Mohammad Al […]

Read More

AWS DataSync を使用して VPC を離れることなく、オンプレミスから AWS にファイルを転送する

 AWS DataSync は、Amazon Elastic File System (EFS) や Amazon S3 など、オンプレミスストレージと AWS 間のデータ転送を簡素化、自動化、高速化するために re:Invent 2018 でリリースしたサービスです。最近、すべての S3 ストレージクラスへの直接転送をサポートするようにサービスを拡張しました。多くのお客様は、DataSync を使用してオンプレミスストレージを AWS に移行し、データセンター全体をシャットダウンしたり、コールドデータをより費用対効果の高いストレージに移動したりしています。DataSync は情報セキュリティにおいて高度な基準を順守しています。送信元と送信先の間で転送されるすべてのデータは TLS で暗号化され、DataSync によってデータが永続化されることはなく、AWS ストレージの場所へのアクセスが完全に管理されます。DataSync は、IAM (S3 の場合) やセキュリティグループ (EFS の場合) などの標準 AWS ツールでも管理されます。これらのセキュリティ対策に加えて、一部のお客様は、コピーされたデータのセキュリティをさらに高めるために、パブリックインターネットを経由せずに、Direct Connect または VPN を介してオンプレミスストレージから AWS にデータを移動する必要があります。この投稿では、このようなネットワーク設定を可能にするサービス、そのサービスが提供するセキュリティ上の利点、および転送を設定するためのベストプラクティスについて簡単に説明します。 VPC エンドポイントで DataSync を使用する利点 DataSync では、オンプレミスのソースストレージの場所 (NFS または SMB 共有)、および AWS ストレージサービス (Amazon […]

Read More

Amazon Neptune で Streams、グラフ用 SPARQL フェデレ―テッドクエリなどの新機能がリリース

 最新の Amazon Neptune リリースでは、グラフによって開発者の生産性を強化する多数の新機能をご用意しました。本記事では、今回発表した重要機能と、それらを使用する際のヒントをまとめ、詳しくご紹介します。 開始方法 この新しいエンジンリリースは、既存のクラスターには自動適用されません。リリースノートに記載された手順に従って、既存のクラスターのアップグレードを選択することができます。または、エンジンの最新バージョンを受信する既存のクラスターのクローンを作成できます。 Amazon Neptune クラスターが現時点で存在しない場合は、バージョン 1.0.1.0.200463.0 のデータベースを作成します。Neptune Streams は、テストする前にラボモードで有効化する必要があります。Neptune では、お客様からのフィードバックに基づいて、初期段階の機能をプレビュー版としてリリースしています。実際のユースケースで試験使用、検証することができます。そうしたプレビュー版機能は今後のリリースで製品化されるまではラボモードです。ラボモードでは、neptune_lab_mode クラスターパラメータを使用して、Neptune エンジンの実験機能を有効 (または無効) にできます。ラボモードの設定には、AWS コンソールまたは CLI を使用します。 AWS コンソール Neptune 用 AWS コンソールで、左側のナビゲーションメニューから [パラメータグループ] を選択します。Neptune クラスターに関連付けられたクラスターパラメータグループに移動し、[パラメータの編集] を選択します。 neptune_lab_mode パラメータでは、以下を追加して、ストリームおよびトランザクションのセマンティクスを有効にします。 Streams=enabled, ReadWriteConflictDetection=enabled AWS CLI コンソールではなく CLI を使用して、クラスターパラメータグループの値をチェックし、ラボモードのパラメータを設定することもできます。次の 2 つのコマンドをそれぞれに使用します。 aws neptune describe-db-cluster-parameters –db-cluster-parameter-group-name my-test-param-group –region us-east-1 aws neptune modify-db-cluster-parameter-group –db-cluster-parameter-group-name my-test-param-group […]

Read More

Amazon SageMaker を使用したメジャーリーグベースボールでの新しいスタッツの計算

 ファンに沢山の新しい展開を見せてくれた爽快なレギュラーシーズンが終わり、2019 年のメジャーリーグベースボール (MLB) ポストシーズンがやってきました。MLB とアマゾン ウェブ サービス (AWS) は、MLB ゲームで盗塁成功確率、シフトの影響、およびピッチャーの類似点マッチアップ分析の 3 つの新しいリアルタイムの機械学習 (ML) スタッツを開発して実現するためにチームアップしました。これらの機能は、莫大な量の野球データを収集し、ファンが野球の試合を楽しむあらゆる面において、より多くの洞察、見解、および背景を提供するための MLB の最新鋭テクノロジー、Statcast Ai を通じて、ファンが野球をより深く理解できるようにしてくれます。 この記事では、ゲームへの深い洞察をファンに提供することにおいて機械学習が担う役割について見ていきます。また、これらの洞察の裏にある Amazon SageMaker でのトレーニングとデプロイメントプロセスを表すコードスニペットも提供します。 機械学習が二塁盗塁 盗塁成功確率は、ピッチャーと盗塁ランナー間におけるいたちごっこへの視聴者の理解に新たな奥行きを提供します。 盗塁成功確率を計算するため、AWS は MLB データを使用して、選手が盗塁しようとする場合に安全に二塁を踏むことができるかどうかを判断する 37 の変数を対象とした何千ものデータポイントを分析する ML モデルをトレーニングし、テストしてデプロイしました。これらの変数には、ランナーのスピードと瞬発力、キャッチャーの平均ポップタイム (二塁送球時間)、ピッチャーの球速と利き手、打者、ピッチャー、およびランナーの履歴的な盗塁成功率、そして試合状況についての関連データが含まれます。 私たちは、MLB によって提供された、約 5,500 の盗塁成功と約 1,800 の盗塁死の約 7,300 の盗塁試行に相当する 2015 年から 2018 年の履歴的なプレイデータを使用することで、ロジスティック回帰、サポートベクターマシン、ランダムフォレスト、およびニューラルネットワークなどのさまざまな分類アルゴリズムを探索する 10 分割交差検証アプローチをとりました。クラス不均衡に対応するため、クラスの重み、カスタム損失関数、およびサンプリング戦略を含む多数の戦略を適用し、盗塁成功の確立を予測するために最適なモデルが、人気の DL フレームワークで事前設定されている、Amazon Deep Learning (DL) AMI で訓練されたディープニューラルネットワークであることを突き止めました。トレーニングされたモデルは、予測をリアルタイムで試合時のグラフィックに統合するために必要な […]

Read More

Amazon DynamoDB での優先度付きキューの実装

 キューイングは、分散処理システムで計算コンポーネントを分離するために一般的に使用されるソリューションです。これは、サーバーレスおよびマイクロサービスアーキテクチャで使用する非同期通信システムの形式です。メッセージは処理のためにキューで待機し、1 人のコンシューマーが受信するとキューから出ます。このタイプのメッセージングパターンは、ポイントツーポイント通信と呼ばれます。 この記事では、他の大規模なキューイングシステムで行うように、Amazon DynamoDB テーブルのいずれかを、エンキュー (メッセージをキューに配置) とデキュー (メッセージを読み取り、キューから削除) が行えるキューに変換する方法について説明します。 DynamoDB は、任意の規模で 1 桁のミリ秒のパフォーマンスを実現するキーと値のドキュメントデータベースです。これは、モバイル、ウェブ、ゲーム、広告技術、IoT、および大規模で低レイテンシーのデータアクセスを必要とするその他のアプリケーションに使用できる、サーバーレスで完全マネージド型のサービスです。 永続性、単一メッセージ処理、および分散コンピューティングを提供する多くのキュー実装があります。一般的なキューイングソリューションには、Amazon SQS、Amazon MQ、Apache ActiveMQ、RabbitMQ、Kafka などがあります。これらのサービスは、実装方法、スケーリング、パフォーマンスなど、いくつかの異なる特性を持つさまざまなキュー機能を処理します。 ただし、キューシステムのほとんどは、アイテムがキューに到着した後、アイテムの順序を簡単に変更することはできません。DynamoDB で議論された実装は、処理前にキュー内の順序を変更したり、アイテムをキャンセルしたりできます。 この記事では、DynamoDB のキューイングシステムの重要な側面についても説明します。たとえば、アイテムの優先度の変更、メッセージごとに 1 人のコンシューマーのみの許可、処理成功時のメッセージの削除、メッセージ処理の順序の保証方法、例外の処理方法などです。 通常のキューと優先度付きキュー キューは、アイテム (メッセージ) のコレクションを順番に保持する線形データ構造を定義する抽象データ型です。1 人のコンシューマーは、個々のメッセージを 1 回だけ処理します。最も一般的なキューイング方法の 1 つは、先入れ先出し (FIFO) 構造です。この構造では、新しいアイテムがキューの最後に結合し、キュープロセスは前 (ヘッド) から順番に処理されます。 この記事では、キュー内のメッセージをメッセージの特性でソートする機能を追加することにより、典型的なメッセージキューの実装を強化する方法を示します。これは、優先度付きキューとして知られています。 優先度付きキューでは、各アイテムにキュー内の優先度を定義する追加の属性があります。優先度が変わると、キュー内のアイテムの順序が変わります。優先度付きキューは、ヒープと呼ばれる構造を頻繁に使用するか、自己バランスツリーを使用します。 DynamoDB は、アイテム (レコード) を動的に並べ替えるためにグローバルセカンダリインデックス (GSI) を使用します。キュー項目が表示されている (まだ処理されていない) 限り、キュー内の項目の順序を変更できます。 ソリューションのアーキテクチャ この記事では、DynamoDB のテーブルを使用するマイクロサービスがあるシナリオを使用します。この記事では、キューイングの主なアイデアを説明するために、仮想アプリケーションオブジェクトであるシップメントも紹介します。倉庫内のすべてのアイテムを見つけて、発送の準備ができていることを確認するまで、シップメントを発送できません。シップメントの準備ができたら、それをマークし、ダウンストリーム処理のために FIFO キューに入れることができます。キューでは、アイテムのタイムスタンプが優先度属性として使用されます。 次の図は、このワークフローを示しています。 この記事のアーキテクチャは比較的単純です。JSON […]

Read More