先週のAWS関連ブログ〜8/21(日) - AWS Summit NYC, 国勢調査サイトをサーバーレスでコストダウンするハッカソンなど

どうも、セクションナイン吉田真吾@yoshidashingo)です。

ここ2週間は日本はお盆ウィークということでしたが、私のほうはServerlessConfのトークセッションやチケット販売やプレカンファレンスの準備やらいろいろやっていました。なかなか思っていたより手間がかかるものですね。それではこの2週間のAWSのアップデートを振り返ってみましょう。

AWS公式

先週、今週は結構機能リリースが多かったですね。

1. サーバーレスでChatbotコンテスト開催

  • Slack / API Gateway / Lambda を使ったChatbotコンテストが開催される
  • 顧客に対する価値、アイデアの質、実装内容の3点を評価される→ルール
  • ビデオや説明文、ソースコードのリポジトリ、使用手順などを2016/9/29までに英語で提出する

リンク:サーバーレスでChatbot コンテスト開催 | Amazon Web Services ブログ

2. Amazon Elastic Block Store(EBS)アップデート-スナップショットストレージの値下げとPIOPSボリュームのIOPS/GB比率の改善

  • PIOPS EBSのIOPS/GB比率が30IOPS/GB→50IOPS/GBに引き上げられた
  • EBSスナップショットの費用が47%値下げされた(Storage Gatewayのゲートウェイキャッシュ型ボリュームのスナップショットも同様)

リンク:Amazon Elastic Block Store(EBS)アップデート-スナップショットストレージの値下げとPIOPSボリュームのIOPS/GB比率の改善 | Amazon Web Services ブログ

3. 【新発表】AWS アプリケーションロードバランサー

  • コンテントベースルーティングできるL7LB、ALBが利用可能に
  • リクエストされたURLパスに応じてルーティング先のサーバー群(ターゲットグループ)を指定可能に

リンク:【新発表】AWS アプリケーションロードバランサー | Amazon Web Services ブログ

4. 強力なAWSプラットフォームの特徴、コンテナ向けに

  • ECSのタスク定義で「動的ポート(EC2ホスト側のポートに自動で未使用のポートを割り当てる)」:ALBを先に作っておき、ECSでタスク定義を作成する際にHost portを0と指定する
  • (リリース済み)「ECSタスクにIAMロール指定(5月)」「サービスAuto Scaling(7月)」がいずれも7月から「東京リージョンで利用可能」になっている。
  • Docker 0.11で入ったホストネットワーク機能としてBridge/Host/Noneが指定可能になっている。
  • ECRが東京リージョンでも利用可能になった。

リンク:強力なAWSプラットフォームの特徴、コンテナ向けに | Amazon Web Services ブログ リンク:Amazon EC2 Container Service Now Supports Networking Modes and Memory Reservation リンク:Amazon EC2 Container Registry Region Expansion

5. Amazon API Gatewayのための利用プラン

  • アクセス元のユーザーごとにAPIキーを払い出し、APIのステージを選択して、プラン名/スロットリング(RPSやバースト可能なリクエスト数)/クォータ(期間内の上限リクエスト数)を指定可能になった。
  • ステージごとにプランを指定し、プランに対応するAPIキーを指定することで、利用制限はユーザーごとの優先度などが設定できる。
  • 利用実績はダウンロード可能なので、クォータでアクセスを止めたくないリクエスト数で後払いのような課金にも対応可能。

リンク:Amazon API Gatewayのための利用プラン | Amazon Web Services ブログ

6. AWS Snowball アップデート – ジョブ管理API & S3 アダプタ

  • APIコールでSnowballを配達してもらえるようになった。->ジョブ管理APIのCreateJob/ListJobs/DescribeJob
  • Snowballへのデータの出し入れは「S3 アダプタ」をインストールすると、aws s3サブコマンドでs3を扱うようにSnowballを指定して利用可能になる。

リンク:AWS Snowball アップデート – ジョブ管理API & S3 アダプタ | Amazon Web Services ブログ

7. AWS Key Management ServiceでのBring Your Own Keys機能

  • マネージメントコンソール/AWS CLI/KMS APIを使って、外部HSMから鍵をインポートしてアプリなどから利用可能になった。
  • インポートする際に鍵のコントロールが可能なIAMユーザーの指定が必要
  • 鍵は有効期限を設定でき、CloudWatchアラームを指定すれば、有効期限が近づいた場合に再度インポート(Lambdaとかで実装するとよさげ)することで、外部HSM側でのコントロールを行うことが可能(若干タイムラグが起こるだろうが外部HSM側でのインバリデート処理と連携など)

リンク:新発表 – AWS Key Management ServiceでのBring Your Own Keys機能 | Amazon Web Services ブログ

8. 東京リージョンのOpsWorksのリソースへのアクセスを東京リージョンのエンドポイントで実行可能に

  • 従来、東京リージョンのOpsWorksのリソースへのアクセスをUS-Eastのエンドポイントを指定して実施する必要があったが、これが東京リージョンのエンドポイントができたことでそちらで実行可能に。APIアクセスが少し速くなったりUS-Eastの障害に左右されなくなったという話。

リンク:AWS OpsWorksが9つのリージョンエンドポイントとアジアパシフィック(ソウル)リージョンをサポート | Amazon Web Services ブログ

9. Amazon Kinesis Analytics - SQL を使用してリアルタイムにストリーミングデータを処理

  • 昨年のre:Inventで発表されたAmazon Kinesis AnalyticsがUS-East/US-West(Oregon)/EU(アイルランド)で利用可能に(Firehoseと提供範囲は同じ)。東京リージョンはまだ。
  • Kinesis StreamやKinesis Firehoseのストリームをソースとして指定し、クエリ範囲となるウィンドウのタイプを選択し、SQLエディタで書いたクエリを実行(ウィンドウ範囲に対してフィルタになる)して、出力先のストリームを指定して連携することができる。
  • また、フィルタ結果はS3/Redshift/Elasticsearch Service/Kinesis Streamの指定先で最大4箇所にルーティング可能とのこと。(手元で試している限り、直接Destinationに指定可能なのは「Kinesis Stream」「Kinesis Firehose」のみに見えるので、Firehose経由でその他のリソースに連携するということに思える)

f:id:yoshidashingo:20160821191904p:plain

リンク:Amazon Kinesis Analytics - SQL を使用してリアルタイムにストリーミングデータを処理 | Amazon Web Services ブログ

www.slideshare.net

10. Transit VPC

  • 複数のVPCやオンプレミス環境やサードパーティサービスからの接続を、各ネットワーク間ごとに管理していくと、複雑なネットワーク構成になってしまい管理が大変になることがある。「Transit VPC」方式は中央にすべてのネットワーク同士の接続を中継するVPC(CISCOの仮想ルーターCisco Cloud Services RouterをMarketplaceから使う)を配置することで、複数のネットワークの接続を一元管理できる方式
  • サンプルとなるCloudFormationのテンプレートを使って作成することができる。

リンク:AWS ソリューション – Transit VPC | Amazon Web Services ブログ

11. Amazon S3 が IPv6 をサポート

  • 従来のエンドポイントとは違うデュアルスタックエンドポイントを解決するとIPv6アドレスが返ってくるようになった。
    • http://BUCKET.s3.dualstack.REGION.amazonaws.com または http://s3.dualstack.REGION.amazonaws.com/BUCKET という形式
  • IPv6でもS3のすべての機能が利用可能。

リンク:サービス開始 – Amazon S3 が IPv6 をサポート | Amazon Web Services ブログ

12. WorkSpacesが時間課金可能/自動停止できるようになり、ルートボリュームが大きくなった

  • WorkSpacesはAlwaysOnか時間課金か選択できるようになり、時間課金の場合、スタートから何時間後に自動停止するかも指定可能になった。
  • 一定時間経過して自動停止した場合、再度接続するときに「Resuming...」になり、1〜2分で接続可能になる。

f:id:yoshidashingo:20160821194053p:plain

(まぁ、何回かエラーになったりもするが...)

  • 既存のWorkSpacesも「Modify Running Mode Properties」で変更可能になった。
  • 各バンドルのルートボリュームが大きくなった。(たとえばPerformance Modelは100GB)

ということで、仕事で使っている場合、トータルでかなり安くなるので、これはもう1人1WorkSpace利用してローカル環境を持ち上げてもよいのではないかと思います。

f:id:yoshidashingo:20160821193009p:plain

リンク:Amazon WorkSpaces Update – Hourly Usage and Expanded Root Volume | AWS News Blog

13. AWS利用料をRedshiftとQuickSightに自動連携可能に

  • 毎時/毎日のAWS利用料をRedshiftとQuickSightに直接連携可能になり、簡易的なダッシュボードなどが非常に簡単につくれるようになった
  • Billing and Costマネジメントコンソールのreport欄で設定が可能

f:id:yoshidashingo:20160821195718p:plain

リンク:AWS Cost and Usage Report Data is Now Easy to Upload Directly into Amazon Redshift and Amazon QuickSight

14. Netflix OSSのデプロイメントツール「Spinnaker」をAWS上に構築する方法

  • リファレンスが公開された

リンク:Netflix OSS Spinnaker on the AWS Cloud: Quick Start Reference Deployment

www.spinnaker.io

https://s3.amazonaws.com/quickstart-reference/spinnaker/latest/doc/spinnaker-on-the-aws-cloud.pdf

15. EC2 Dedicated Hosts ReservationsがマネジメントコンソールやCLIから指定して購入可能に

  • ホストサーバー単位のライセンスを利用するためのDedicated Hostsのリザーブド購入をマネジメントコンソールやCLIから可能に。
  • 操作的には「オンデマンドでDedicated Hostsを用意して」「起動中のDedicated Hostsを指定してリザーブド購入」

リンク:Amazon EC2 Dedicated Hosts Reservations are available in the AWS Management Console and AWS CLI

AWS関連

16. PowerShellがOSSになり、LinuxやMacでも利用可能に

  • GitHubでソースコードが公開されるとともに、(Windowsはもとより)LinuxやMac用のバイナリの配布が開始された。

https://msdn.microsoft.com/en-us/powershell

  • これに合わせてAWS用のモジュールである「AWS Tools for PowerShell Core Edition(AWSPowerShell.NetCore)」も同様にマルチプラットフォームをカバーすることになり、数日以内にPowerShell Galleryに公開予定と発表

※8/21現在はまだなさそうだ。

https://www.powershellgallery.com/items?q=AWS+Tools+for+PowerShell+Core+Edition&x=0&y=0

https://blogs.aws.amazon.com/net/post/TxTUNCCDVSG05F/Introducing-AWS-Tools-for-PowerShell-Core-Edition

17. オーストラリアの大学1年生2人が政府の国勢調査サイトのハッカソンにおいてサーバーレスアーキテクチャで置き換えて優勝

Make Census Great Again

eftm.com.au

  • ABS Censusというオーストラリア政府の国勢調査のサイトが、ここ5年ほどアンケートに答えるためにたくさんの人がログインするたびに24時間以上ダウンしている。
  • これを置き換えるコンセプトで開催された54時間のハッカソンで、大学1年生2人がでサーバーレスアーキテクチャに置き換えるデザインで構築し、負荷テスト(100万PV/時間)をクリアし優勝した。

www.mailonsunday.co.uk

※当の国勢調査サイトはずっとダウンしてますね

http://census.abs.gov.au

その他

18. Amazonのソフトウェアエンジニア面接

  • 電話面接や丸一日かけて何人とも面接をしたこと、またはいろいろとそれに合わせて準備したことなどが書かれている。
  • 外資系のIT企業に面接に行くときに参考になりそうだ。

postd.cc

19. Otto、廃止へ

  • 昨年のHashiConfで発表されたOtto、Vagrantの後継+開発プロセス全体の統合を図っていたが、コアの抽象度の保持と独自機能が当初目指していたゴールにまで到達できそうにないということで早々と廃止を決定し再出発となった。
  • 積極的な開発は今後行われないが、リポジトリは引き続き公開される。
  • 意思決定の速さについては評価する声が多い。

https://www.hashicorp.com/blog/decommissioning-otto.html