『効果的な導入・運用のための Amazon Web Services活用入門』特典PDF

Appendix-A
エンタープライズ利用にも対応できる
VPCユースケース
A-1 大規模環境における VPC の使いどころ
A-2 VPC ピアリングを使った賢い WAF の利用方法と
ログ分析
Appendix-A : エンタープライズ利用にも対応できる VPC ユースケース
Appendix-A
A-1
大規模環境における VPC の使いどころ
Appendix-B Appendix-C
TEXT: 山﨑奈緒美
この節では AWS のみならず、AWS 環境とオンプレ環境を連携するような大規模環境でも使える VPC の利
用パターンについて説明します。
VPC 利用のメリット
AWS はパブリッククラウドに分類され、物理的なハード
しかし、VPC を利 用することにより他の AWS ユーザー
ウェアである仮想化基盤を複数のユーザーで相乗りする形
が持つ環境と論理的に分割されたネットワーク空間を利用
で利用していることになります。
できるため、よりセキュアな環境でのクラウド利用が可能と
そう聞くと、他のユーザーから自分のシステムのデータを
盗み見られてしまうことになるのでは?と思われるかもし
れません。
確かに AWS で EC2 が出てきた頃は現在では EC2Classic
なっています。
現在では新規アカウント作成時にデフォルト VPC が作成
され、ユーザーが意図的にデフォルト VPC を削除しないかぎ
りは EC2 や RDS などのインスタンスは VPC の中に作成され
と呼ばれる環境があり、セキュリティグループの設定が甘い
ることとなります。
場合にはそのようなリスクはありました。
※ 2013 年 12 月 4 日以降に作成された AWS アカウントでは EC2Classic は
利用できず、VPC のみを利用するような形となっています。
DirectConnect 利用によりクラウドを第二のデータセンターへ
AWS 上だけで全てが完結するシステムを構築・運用する
AWS では VPC とインターネット VPN を利用した接続を
場合は気にしなくても良いことではありますが、AWS 上に
することも可 能ですがインターネット VPN を利 用する場
社内システムや外部公開しているシステムであってもバッ
合、接続断が DirectConnect よりも頻繁にあることを前
クオフィス利用が発生するようなシステムを構築・運用して
提にネットワーク設計を行ったり、セキュリティや通信品
いる場合、社内からの通信に対するセキュリティの担保とい
質、帯域のスループット、通信経路がインターネット越し
う部分が AWS を利用する上での第二のポイントとなるかと
となるため、通信経路コストがかかるといった点があり、
思います。
DirectConnect を利用する場合はこれらの課題をクリアす
専用線を使用した閉域網接続である DirectConnect を利
ることができます。
用すると、社内と AWS 間の通信接続自体も物理的または論
それにより、ユーザーとしてはオンプレミス環境のデータセ
理的に隔離された環境での接続となるため、よりセキュアに
ンターに接続しているのと変わらない感覚で、AWSを利用し
AWS 環境の利用ができることとなります。
ているということを意識せずに利用することができます。
002
A-1 大規模環境における VPC の使いどころ
オンプレ環境とのハイブリッド環境での利用
現在の日本国内の企業では全システムが AWS 環境にあ
インターネット公開している WEB サーバーのグローバル IP
り、データセンターやオンプレミス環境を一切使用していな
アドレスとすることでオンプレミス環境の WEB サーバーが
いという企業はまだまだ少ないのではないかと思います。
利用するドメインをRoute53でホストすることができます。
既存システムのハードウェアの保守契約や減価償却の関
これにより、わずらわしい DNS サーバーの管理をするこ
係上、まだまだオンプレミス環境のデータセンターにシステ
とがなくなり、アクセス集中時等に DNS サーバーへの DNS
ムがあるといった企業も多くあります。
問合せによる負荷高騰といったこともなくなります。
また、現在データセンターにあるシステムを AWS 環境へ
移行している途中という企業もあるかと思います。
既存のオンプレミス環境のシステムと AWS のサービスや
AWS Directory ServiceとRoute53を利用してVPC内リソー
スの名前解決
システムとを組み合わせて利用することをハイブリッドク
Route53 でインターネット公開しているオンプレミス環
ラウドと呼びます。
境の WEB サーバーの名前解決について紹介しましたが、イ
ここでは典型的なハイブリッドクラウドの例を紹介し
ます。
ンターネット側からの名前解決だけではなく、社内のクライ
アント PC やオンプレミス環境にあるサーバーから VPC 内に
ある EC2 インスタンスや RDS などの名前解決、またはその
逆方向の名前解決を行うことも可能です。
Route53 利用パターン
クライアントPCやオンプレミス環境からAWS側のリソー
AWSではRoute53というフルマネージドのDNSサービス
スの名前解決を行う場合、単純にオンプレミス環境にある
があり、
Route53のみを利用している企業も多数あるようです。
DNS サーバーで EC2 インスタンスのプライベート IP アドレ
スを A レコードで作成したり、RDS のエンドポイント URL
オンプレミス環境の WEB サーバーを Route53 でホストする
Route53 でゾーンの作成をしてドメインの設定をし、A
レコードの名前解決先の IP アドレスをオンプレミス環境で
を CNAME で作成することでも可能ではありますが、ドメイ
ンおよびレコードセットも Route53 で管理したいとなる場
合、一つの制約が出てきます。
オンプレミス環境の WEB サーバーを Route53 でホスト
003
Appendix-A : エンタープライズ利用にも対応できる VPC ユースケース
Appendix-A
Route53 でプライベートゾーンを作成し、VPC 内から名
バーの IP アドレスで設定します。
前解決を行う場合 EC2 インスタンスなどの VPC 内にあるリ
また、EC2 インスタンスによってはオンプレミス環境の
ソースは、VPC 内に作成される VPC Provided DNS を経由
リソースに対する名前解決の必要のないものもあるかと思
することによって名前解決を行います。
います。
Appendix-B Appendix-C
ただし、VPC Provided DNS は VPC 外からの DNS クエ
リには応答しないため、直接クライアント PC やオンプレミ
その場合はインスタンスの DNS 設定はインスタンス起動
時そのままとすれば VPC Provided DNS のみを参照します。
ス環境のサーバーから名前解決を行うことはできません。
そこで AWS Directory Service を利 用して Route53 の
プライベートゾーンのレコードセットへの名前解決を実装
S3 を利用したファイルバックアップ
します。
AWS Directory Service へ の DNS ク エ リ は VPC
Provided DNSを経由してRoute53の名前解決を行います。
このため、AWS DirectoryService で SimpleAD もしく
は MicrosoftAD を作成し、オンプレミス環境にある DNS は
フォワーダーとして DNS クエリを AWS Directory Service
うちの会社では大層なシステムなんて持っていないし、わ
ざわざ AWS を利用するまでもないといった企業でも、NAS
ぐらいは社内に設置されているのではないでしょうか。
NAS の運用で一番頭を悩ませることとして、バックアップ
の問題があります。
へフォワードするように設定すると、クライアント PC やオ
どこまでバックアップを保存すればよいのか、そのための
ンプレミス環境のサーバーからの名前解決ができるように
バックアップ用の領域の確保であったり、エンタープライズ
なります。
向けの高機能な NAS ではなく家電量販店で購入できるよう
逆に VPC 内にある EC2 インスタンスからオンプレミス環境
な NAS を利用していて、バックアップ用に NAS をもう一つ
のサーバーなどの名前解決を行いたい場合はどうでしょう。
用意している場合でも、なぜかバックアップ用の NAS が先
上記の環境をまず構築し、EC2 インスタンスで利用する
に壊れ、それに気づかず本番用の NAS が壊れた時に初めて
DNS サーバーの IP アドレスをオンプレミス環境の DNS サー
バックアップ用NASが壊れていることに気が付く・・・といっ
AWS Directory Service と Route53 を利用した VPC 内リソースの名前解決
004
A-1 大規模環境における VPC の使いどころ
た NAS のバックアップについてはあるあるネタが満載かと
思います。
DirectConnect や VPN 接続で VPC をオンプレミス環境
を接続している場合、WEB サーバーを EC2 インスタンスで
最近では家電量販店で販売しているような NAS でもバッ
クアップを S3 にアップロードできる機能を NAS の管理画面
で設定できる機種も販売されています。
イレブンナイン、
99.999999999%の堅牢性を誇るS3へファ
イルバックアップがお手軽にでき、バックアップしたファイ
オートスケーリングするように設定しておくと、このような
システム構成を構築することも可能です。
また、WEB サーバーも DB サーバーもオンプレミス環境
で運用しているが、キャンペーン時のみ EC2 インスタンスで
WEBサーバーを増やしたいといった要件にも対応できます。
ルの世代管理が楽にできるというメリットがあります。
スケーリングが要求される部分のみ AWS へ切り出す
システム要件によって WEB サーバーは AWS、DB はオン
プレミス環境に置きたいという場合もあるかと思います。
WEB サーバーのみ AWS へ切り出した方式
005
Appendix-A : エンタープライズ利用にも対応できる VPC ユースケース
Appendix-A
VPC の利用パターン
VPCを利用するにあたってさまざまな利用方法があります。
システム種別および環境種別による VPC 分割パターン
どのパターンでもメリットにもなりデメリットにもなる
システム別に AWS アカウントを分けてその中で本番用
Appendix-B Appendix-C
ため、AWS をどのように使用したいかによってパターンを
選択すると良いかと思います。
次に代表的な VPC の利用パターンを紹介します。
VPC と検証用 VPC、開発用 VPC と分割するパターンです。
アカウントが違うため 1 システムあたりの費用がアカウ
ントに対する請求の金額そのままになるため、システムごと
の費用按分をする必要もなく、各環境が相互に影響を与える
こともなく利用ができます。
単一 VPC パターン
VPC の CIDR ブロックは最大で /16 で作成することができ
ます。
一つの大きな VPC を作成し、その中でサブネットを /24 や
ただし、共通システムや他システムとの連携を行うため
に VPC Peering を行う場合、VPC で利用する CIDR ブロッ
クの重複や対向している VPC とさらに接続している VPC へ
の接続ができないため、連携するシステムが多数ある場合、
/26 などの CIDR ブロックで分割することにより、VPC 自体
VPC Peering の数も増えてしまうため VPC Peering の構成
をオンプレミス環境のデータセンターを利用する感覚で利
が複雑化することになります。
用することとなります。
一つの VPC で全ての AWS リソースを管理することになる
ため、AWS 上のシステム同士での連携や DirectConnect
また、リザーブドインスタンスは AWS アカウント間で共
有ができないため、購入したリザーブドインスタンスが余っ
てしまった場合無駄になってしまうこととなります。
やVPN接続も一つのVPCのみとシンプルな接続となるため、
一見単純なように見えますが VPC 内のシステム環境やサブ
ネット利用ポリシーをあらかじめしっかりと設計していな
いと複雑化しやすくなってしまいます。
また、システムごとに費用按分を行う場合、リソースへの
タグ付けをしっかりと行う必要があります。
どのような VPC パターンを選択するか
VPC やアカウントの利用パターンを挙げましたが、どのパ
ターンを利用するかは既存オンプレ環境や拠点ネットワー
ク等の全体のネットワーク設計にも関わってくるため、企業
ごとに様々なパターンを選択することとなります。
また、アカウントや VPC を分ける場合にネットワークアド
用途による VPC 分割パターン
本番用VPCと検証用VPC、開発用VPCといった用途によっ
て VPC を分割して利用するパターンです。
論理的に別の空間での利用となるため、各環境が相互に影
響をあたえることがなく利用することができます。
しかし、単一 VPC パターンと同様に本番環境に複数のシ
ステムがある場合には費用按分の課題は残ります。
レス帯が重複せず、VPC ピアリングができるようにあらか
じめ設計しておくことも重要です。
AWS 費用計上が部門別となる場合にはアカウントを部門
ごとに分けるようにすると、費用按分の手間が省けて請求処
理も楽になります。
クラウドという管理や運用の手間を最小限にできるサー
ビスを使うのですから、構成が複雑になってしまって管理の
手間が増えた、引き継ぎに時間がかかる、といったことのな
いよう、クラウド利用の良い所を活かせるようにしていくと
良いでしょう。
006
A-2 VPC ピアリングを使った賢い WAF の利用方法とログ分析
A-2
VPC ピアリングを使った賢い WAF の利用方法と
ログ分析
TEXT: 吉江瞬
この節では、先述した AWS のサービスを色々と用いて、より AWS 上にセキュアな仮想ネットワークを構築
することを考えてみます。特に CDP:Shared Service パターンに沿った形で、しかし、単に仮想ネットワー
クをセキュアにしただけではないことを考慮して記載したいと思います。
WAF の利用
何をセキュアに守るかということを考えた上でそれが
のため、WAF が監視する対象サーバーでは、HTTP/HTTPS
WAF であるという結論にいたった場合、その WAF をいかに
を受けつけるサーバーがいることが当たり前です。その
効率よく導入し、運用できるかが必要となってきます。WAF
WAF を必要な数だけ理想の形で導入するには、CDP: WAF
は従来の Firewall や IDS/IPS では防ぐことのできない攻撃
Proxy パターンと CDP:Shared Service パターン、この2パ
から Web アプリケーションを防 御するものです。HTTP/
ターンを満たす形で WAF を導入することです。
HTTPS に関するリクエストとレスポンスを監視します。そ
WAF 専用 VPC と SIEM
007
Appendix-A : エンタープライズ利用にも対応できる VPC ユースケース
Appendix-A
WAF 専用 VPC の用意
Appendix-B Appendix-C
前ページの図のように共同で利用できる WAF 専用の VPC
Application Firewall が あ り ま す。BYOL/On-Demand
を用意し、その VPC に対して WAF 監視対象とするサーバー
のいずれの形 式でも提 供されています。この WAF を利 用
が属する VPC が VPC Peering 接続をするという構成です。
すれば、Auto Scaling にも対応した WAF の導入が可能と
オンプレミス環境から各種 VPC までは VPG との VPN 接続
なります。また、最近は Sophos 社の UTM 9 Autoscaling
でも、DirectConnect を使った専用線接続でも、所属する
Web Application Firewall や Barracuda Networks 社の
企業ポリシーによって選択いただければと思います。WAF
Barracuda Web Application Firewall も Auto Scaling
はリバースプロキシ型であり、VPC Peering 先のサーバー
に対応した WAF を提供し始めています。企業としての利用
までリクエストを渡します。たとえば、企業の部門ごとに
であれば、これらサードパーティ製 WAF を利用するのはサ
VPC が作られていたのであれば、WAF 専 用 VPC は企 業で
ポートも行き届いていて良いと考えます。導入コストをもっ
一元管理する形を取ることができます。WAF 監視対象とす
と下げたいという場合は、無償の WAF を利用することも検
るサーバーが増えるとそれ相応のトラフィックに対応でき
討してみましょう。たとえば、OWASP にて開発が進められ
るような構成、まして Web サーバーが Auto Scaling する
ている Mod_Security があります。ただし、これらは Auto
のなら、WAF も Auto Scaling させたいところです。近年
Scaling に対応しているわけではないため、スケールするイ
のサードパーティ製 WAF には Auto Scaling に対応してい
ンスタンスに自動で設定されるようにする必要があります。
るものがありますが、もっとも早い時期に Auto Scaling に
対応した WAF としては Imperva 社の SecureSphere Web
WAF の運用
WAF は導入したらそれで終わりというわけにはいきませ
いものは遮断とするその確認期間をチューニング期間とい
ん。WAF で検知するログの内容から、通すべきものは通す、
います。このチューニング期間が終わってからも、今後更新
止めるべきものは止めるというように WAF そのものを運用
される WAF のシグネチャの適用や、新たに Web アプリケー
する必要があります。WAF の管理画面から WAF の通信内容
ションをリリースするといった場合の誤検知除外対応など、
を確認し、リクエストの内容を詳細に確認し、誤検知してい
WAF の運用は長く付き合っていく必要があります。
るものは除外、検知のみとしたいものは検知のみ、遮断した
008
A-2 VPC ピアリングを使った賢い WAF の利用方法とログ分析
ログ分析と SIEM
WAF による検知ログや遮断ログ、サーバーへのアクセス
理想とする権限やルールを設定することができます。
ログだけでなく、その他 AWS のサービスの取得が可能なロ
逆に、想定外の認証が行われた場合にアラートを発生
グがもたらしてくれる恩恵が大きなものとなる考え方をお
させるということも考えることができます。
伝えしたいと思います。読者の皆さんは、SIEM というキー
ワードをご存知でしょうか? SIEM(Security Information
• CloudTrail:AWS CloudTrail は IAM アカウントに対す
and Event Management) はセキュリティに関する統合ロ
るあらゆるイベントをログに記録します。IAM アカウ
グ管理ツールであり、ログデータの集約や正規化、ログとロ
ントが行った AWS API 呼び出し元の ID、API 呼び出し
グの相関分析によって、異常とみられるイベントが見受けら
元のソース IP アドレス、リクエストのパラメータ、お
れたとき、リアルタイムでアラートを発し、視覚的に分かり
よび AWS サービスから返された応答が含まれるため、
やすくしてくれます。インシデントレスポンスを行う企業
監査の観点からも有効といえるこれらのログはセキュ
ではしばしば用いられているツールや概念となります。ロ
リティイベントを管理するにおいて必要不可欠です。
グを全て人目で追うには限界があるため、可能な限り得ら
れるログを元に、SIEM を用いて相関分析を行い、インシデ
• CloudWatch Logs:Amazon CloudWatch Logs は
ントレスポンスの初期対応を始め、WAF のチューニング、
CloudWatch の拡張された機能で、EC2 インスタンス
Security Group の要件見直し等を図るのに役立ててもらえ
のログ、たとえばアプリケーションログやシステムロ
るのがよいと考えます。このようなログ分析を行うのに HP
グをリアルタイムにモニタリングすることが可能とな
社の Arcsight や IBM 社の QRadar は有 名ですが、AWS で
ります。また、CloudTrail のログをモニタリングする
の利用が可能な Splunk 社や Sumo Logic 社の製品を利用
ことも可能なサービスですので、簡単なフィルタリン
するユーザーも近年は増えているように見受けられます。た
グ設定とアラート設定を本機能で行うことで SIEM ラ
とえば AWS のサービスの中では以下のようなログは有効活
イクなことを実現することが可能です。
用できるものと考えます。
• VPC Flow Logs:VPC Flow Logs は VPC 内 の Network
• IAM(Identify & Access Management):IAM はユーザー
Interface 間の IP トラフィックをログとして保存でき
ごとに AWS リソースの使用に関する認証、リソース
ます。送信元および送信先の IP アドレスだけでなく、
の利用方法に関する承認を行うことができます。ユー
ポートやプロトコル番号や許可 / 拒否したかも確認す
ザー、グループ、ロール、ポリシーを利用することで、
ることができます。
009
Appendix-A : エンタープライズ利用にも対応できる VPC ユースケース
Appendix-A
SIEM による相関分析
たとえば、
Management Console や CloudTrail にて確認するべきでしょ
う。それはあなたが管理している AWS 上の IP アドレスか
Appendix-B Appendix-C
• WAF では検知のみのログ
もしれない。または、AWS を利用する他社サービスがマル
• VPC Flow Logs のアクションは許可
ウェア感染をしているがために、不正アクセスをしてくる
• CloudWatch Logs で示されるサーバーのステータス
という可能性もなくはないでしょう。緊急遮断ができない
コードが 200
といった場合はそのサービス提供元管理者に確認すること
も必要となってきますね。最近ではブラックリスト IP アド
が確認された場合に SIEM でアラートをあげます。不正アク
レスが API で公開されているものも存在します。これらと
セスを行ってきた送信元があからさまに怪しい送信元であ
組合せることで、各種システムから出力される大量のログ
ることを確認できた場合、WAF や Security Group での遮断、
を統合し、ログの相関分析により不正アクセスを検出させ
サーバー側のアクセスログを確認することが必要となりま
ることができるでしょう。クラウド電話 API 等を利用する
す。もし、送信元が Amazon Web Services からの IP アドレ
ことで、少ないリソースでもインシデントレスポンスを実
スであった場合、本来は早急に遮断してしまいたいところ
現することもが可能になると考えます。
ですが、この IP アドレスが何に利用されているのかを AWS
010
Appendix-B
IoT とモバイルネットワークの未来
に触れる
B-1 IoT を取り巻く環境の変化
B-2 IoT プラットフォームを狙うモバイル通信
B-3 IoT 時代のクラウドエンジニア像
Appendix-B : IoT とモバイルネットワークの未来に触れる
Appendix-A
B-1
IoT を取り巻く環境の変化
Appendix-B
TEXT: 片山暁雄
この節では、IoT にフォーカスを当て、なぜ今 IoT が取り上げられているのか、近年の IoT を取り巻く環境の
Appendix-C
変化について説明します。
投資とビジネスモデルとのミスマッチの解消
IoT をテクノロジーの側面でとらえた場合、B3G/LTE な
験を必要がありますが、従来ではそもそもサーバーやデバ
どデバイスのデータを集めるための通信技術は、以前より利
イスの初期コストが高かったり、プロトタイプのシステムと
用することができました。
して一通り稼働するものを完成させるための技術者確保が
またデータを分析するためのアプリケーションも、以前よ
り利用することは可能でした。しかしながら、従来は取得し
ていなかったデータを収集して、意味のある情報を見つけ、
難しく、限られた期間や予算では実現が困難という状況が
ありました。
しかしながら近年、クラウドと通信、そしてデバイスの進
製品や顧客サービスへの還流によって利益を上げられるよ
化により、この検討フェーズにおける先行投資やテクノロ
うにするためには、トライアンドエラーを繰り返し、ビジネ
ジーの敷居が非常に下がってきており、新しいビジネスモデ
スモデルとして成り立つにはどうしたら良いかを検討する
ルを作るための投資が非常にしやすくなっており、企業の
ための検討フェーズが必要となります。
IoT に関する取り組みが活発になり、それに合わせて IoT が
この検討を行うためには先行投資として、様々な実証実
大きく取り上げられるようになっています。
AWS クラウドが推し進めた IoT インフラのコモディティ化
IoT と相性の良い AWS の特性
ありません。
ここまでの章で、数多くの AWS サービスの説明がありま
また実 際に数 多くの機 器とデータの交 換をすることに
した。そのサービスは、EC2 や S3、VPC といったインフラ
なった場合や、一時的に収集したデータを解析するような場
レイヤーに近いものから、Amazon Cognito や Amazon
合になったとしても、必要に応じてスケールアップすること
Elasticsearch Service のようなアプリケーションレイヤー
ができます。
のものまで、幅広く提供されています。
これらは初期費用なしの従量課金で提供されるため、トラ
イアンドエラーを繰り返す IoT の検討フェーズには非常に
マッチします。従量課金自体も安価であるため、データを保
存する際に容量を気にしてデータを間引いたりする必要も
012
こういった AWS クラウドの特徴は、特にトライアンドエ
ラーを繰り返す必要のある IoT と非常に相性が良い、という
ことになります。
B-1 IoT を取り巻く環境の変化
作ることが「競争力」から「リスク」に変化
初期費用なしの従量課金、という費用的なメリットの他
に、AWS クラウドの普及により、様々な IT インフラを「構
築済みで運用も行ってくれるサービス」として利用できるよ
うになりました。
従来との比較
従来であれば、大規模なインフラを構築しそれを運用でき
るリスクとなる可能性もあります。
ること自体が競争力となっていましたが、AWS を利用する
たとえば AWS IoT を利用しビジネスロジックのみに専念
ことでこの優位性はなくなり、企業 / 個人問わず同じサービ
して実証実験を行うのと、AWS IoT で提供される機能(認
スを利用できるようになり、IoT インフラそのものはコモ
証や Device Shadows など)を 1 から構築してから実証実
ディティ化し、ビジネスにおける競争力の源泉ではなくなっ
験をするのでは、成果のアウトプットまでに大きな差が出る
てきています。むしろ AWS が提供しているサービスであれ
のは、容易に想像できるでしょう。
ばそれを積極的に利用しないと、費用や時間に無駄に投資す
013
Appendix-B : IoT とモバイルネットワークの未来に触れる
Appendix-A
デバイスの進化
低価格 / 高性能のデバイス
Appendix-B
IoT では、現実のデータを取得し、またクラウド上で行った
分析結果をフィードバックするために、デバイス側の開発も
当然必要となってきます。
従来であれば、専用の開発キットや言語が必要なマイコ
Appendix-C
ンを利用したりしていましたが、最近では Intel Edison や
AWS でもこういったニーズをとらえ、「IoT Starter Kit
Powered by AWS」という名称で、いくつかのデバイスを販
売しています。
• Intel® Edison and Grove IoT Starter Kit Powered by
AWS
http://www.amazon.com/dp/B0168KU5FK
Raspberry Piなどのプロトタイプ作成に向いたシングルボー
ドコンピューターを安価に入手し、利用できるようになって
います。
ま た こ う い っ た シ ン グ ル ボ ー ド コ ン ピ ュ ー タ ー は、
GPIO(General Purpose Input/Output) や I2C といった
また AWS のパートナー 制 度である「Amazon Partner
Network」でも、クラウドではなく IoT 向けデバイスを提供
する APN テクノロジーパートナーという枠が設定され、日
本ではぷらっとホーム株式会社が認定されています。
各種センサーと接続するためのインターフェースを備え、
さらにこれらのインターフェース経由で値を取得する際に
も、JavaScript(Node.js) や Python などいったクラウド
• https://aws.amazon.com/jp/solutions/solutionproviders-japan/technology-partners/iot-devices/
上での開発で馴染みのある言語用の API やライブラリを利
用することができるため、まずは動くものを作ってトライア
ンドエラーを手早く行うというような目的には非常にマッ
このようにして、クラウドが一つの契機となり、IoT を取
り巻く環境はここ数年で大きく変化しています。
チします。実際に、AWS Summit 2016 Tokyo では、日本
2020年には、500億から1000億のデバイスがインターネッ
電産株式会社がプレス金型の温度分布を AWS で解析し、不
トにつながるともいわれており、向こう数年はこの IoT の大
良品率を改善するというトライアルを 2 週間で行ったとい
きな流れにより、新しいビジネスやサービスが出てくること
う発表がされています。
が予想される、
注目度の高い領域といえるでしょうか。
014
B-2 IoT プラットフォームを狙うモバイル通信
B-2
IoT プラットフォームを狙うモバイル通信
TEXT: 片山暁雄
前節では、クラウドとデバイスの進化とコモディティ化により、IoT システムの構築の敷居が下がってきて
いることを紹介しました。
それでは、
クラウドとデバイスを接続するネットワーク部分は現在どのような状況なのでしょうか。
モバイル通信の利点
IoT システムを構築する場合、クラウドをデバイスを接続するために、幾つかの選択肢があります。
SIM カード
たとえば有線 LAN は、ネットワーク帯域も広く、一度敷設
してしまえば運用コストは安価になります。
しかしながら、有線 LAN が敷設できる場所は限られてお
り、デバイスを配置する場所が限られてします。
えば、運用コストは安価になります。しかしながら、デバイ
スを配布するプロセスを考えた時、無線 LAN に接続する設
定が問題になる場合があります。たとえば 100 の出荷先が
あり、それぞれに異なる ID/ パスワードで無線 LAN に接続す
また自動車などの移動体には接続できません。
る必要がある場合には、事前に ID/ パスワードを収集してデ
では無線 LAN ではどうでしょうか?場所の制約について
バイスに設定して出荷するか、もしくは出荷後に設定を行っ
は、有線 LAN よりも自由ですし、無線 LAN も一度敷設を行
て貰う必要があります。
015
Appendix-B : IoT とモバイルネットワークの未来に触れる
Appendix-A
またこういった手間を省くために、同一の ID/ パスワード
を利用してしまうと、これが漏れた時に出荷したすべてのデ
バイスの ID/ パスワードの変更が必要となり、実際の運用で
Appendix-B
は非常に手間がかかります。またもちろん、無線 LAN がない
場所や自動車などでは利用することができません。
トワークのカバー範囲も広いため、自動車などの移動体でも
利用することができます。
さらにモバイル通信では、通信者を確認するために SIM
カード ( 利用者認識カード)を使用します。
この SIM カードの中には、ID と通信を暗号化するための
Appendix-C
有線 LAN、無線 LAN の欠点を考えると、携帯電話やスマー
鍵が入っています。ID も鍵も SIM カードごとにユニークに
トフォンで利用している 3G/LTE のモバイル通信は、IoT に
なっており、モバイル通信をする場合にこれらを使用して認
向いています。
証と暗号化が行われるため、デバイス側で意識をしなくとも
一つは通信設定の容易さです。モバイル通信の場合、一度
セキュリティを高めることができます。
設定をすれば、日本全国どの場所でも接続できますので、デ
しかしながら有線 LAN や無線 LAN と比べると、通信費用
バイスの出荷先や設置先にによって通信設定を変える必要
や通信モジュールの費用が高い、という問題があるのが現状
がないため、初期設定や管理が非常に楽になりますし、ネッ
です。
SIM カード
016
B-2 IoT プラットフォームを狙うモバイル通信
モバイル通信の動向
次世代の規格
IoT のシステムを構築にモバイル通信を利用する利点は多
くありますが、先ほど述べたとおりで通信料や通信モジュー
ルの問題があります。しかしながら、通信ベンダー / 通信デ
は異なる周波数を使って、モバイル通信の使えないエリア
もカバーできるような LoRa や Sigfox と言った規格も策定
されてきています。
こういった規格は通信速度が上り下りとも 1Mbps 以下と
バイスベンダー各社はこの問題に取り組みをはじめており、
なっており、通信速度以外にも、通信を行うための基地局と
IoT 向けに利用しやすい LTE の規格が、幾つか策定されてい
の定期的な通信を省略する機能や、上りもしくは下りだけし
ます。
か利用しない機能などを備え、消費電力を極力減らすような
通常、スマートフォンやモバイルルーターで利用している
LTE は、多くが「カテゴリー 4」と呼ばれる規格を使用してい
ます。
工夫がされています。
たとえば 1 日 1 回数百バイトの送受信をするのであれば、
2500mA(iPhone6s Plus が 2740mA) のバッテリーで 19 年
カテゴリーにより、通信速度や必要なアンテナ数、変調方
間通信できる、という試算などもあります。もちろんサイズ
式などが異なり、たとえばカテゴリー4の場合は、通信速度
や価格も、カテゴリー 1 よりもさらに小型 / 低コストになる
は上り最大 50Mbps、下り最大 150Mbps の高速通信となっ
ことが見込まれています。
ています。
これに対して、「カテゴリー 1」と呼ばれるカテゴリーの場
合、上り最大 5Mbps、下り最大 10Mbps となっています。
デフォルトでモバイル通信ができる時代に
カテゴリー 4 と比較する通信速度は劣るものの、IoT 用途
IoT 向けのモバイル通信規格が普及し、数百円台でモバイ
を考えると十分ですし、カテゴリー1はカテゴリー 4 よりも
ル通信用の機器が調達できるようになると、様々なモノにモ
通信デバイスの処理が簡単になるため、デバイスの小型化や
バイル通信機器が当たり前のようにつく時代になることが
消費電力の低減、低コスト化が見込まれています。
予想されます。
既に NTT ドコモはこのカテゴリー 1 の導入準備を進めて
います。
またさらに、より IoT 用途に特化した「カテゴリー M」や
「NB(Narrow Band) LoT」と呼ばれる規格、さらには LTE と
今までは費用やデバイスサイズ、消費電力などで難しかっ
た様々なモノがネットワーク接続ができるようになり、デー
タを収集 / フィードバックできるようになると、あらゆる産
業で IoT が活用されるでしょう。
017
Appendix-B : IoT とモバイルネットワークの未来に触れる
Appendix-A
B-3
IoT 時代のクラウドエンジニア像
Appendix-B
TEXT: 片山暁雄
これからより多くのビジネスが見込まれる IoT にエンジニアとして取り組む場合、どのようなスキルや経験
Appendix-C
が必要なのでしょうか?この節では IoT 時代のエンジニア像について掘り下げてみたいと思います。
IoT 時代のエンジニア像
IoT ビジネスにおいては、AWS を含めたクラウドプラッ
最近では Raspberry Pi や Arduino などを手軽に利用す
トホームやクラウドサービスを利用することは、必須といえ
ることができますが、実際に IoT デバイスを使ったビジネス
るでしょう。前節でも紹介したとおり、IoT はビジネス的に
を考えた場合、デバイスの大きさやコスト、運用などを考え
もテクノロジー的にも日進月歩の領域であり、ビジネスがう
ると、そのままビジネス化をするのは難しい場合も多いと思
まくいくかどうかを試行錯誤しながら進めて行く必要があ
います。
ります。このため、インフラ構築などに時間やコストを使う
しかしながら、これらのデバイスを使って実際に手を動か
ことはどんどん難しくなります。このため、AWS やその他
してネットワークに繋げ、AWS のサービスと連携してみる
クラウドサービスが提供しているサービスを自分が目指す
ことで、「デバイスが 1000 台になったときに、初期設定は
ビジネス実現に対して如何に当てはめていくか、というスキ
楽にできるのか」
「デバイスごとにユニーク ID を振らないと
ルは必ず必要となります。
クラウド上でデータを分けられないけど、どうすればいいの
また単にクラウドサービスを知っているだけではなく、実
か」
「パスワードはどこにおけばいいのか」
「通信間隔やタイ
際に手を動かして構築するハンズオンスキルも必要です。時
ミングはどうしたらいいのか、通信が切れたどうしたらいい
間やコストをかけずにプロトタイプを構築することができ
のか」など、今まででとは違う視点を持つことができますし、
れば、検証実施を行うまでの期間を大きく減らすことができ
こういった経験は実際にビジネスで IoT システムを作る際に
ますし、トライアンドエラーも繰り返すことができるように
役に立つでしょう。
なります。
最 近では、AWS のユーザーグループでもある JAWS の
またプロトタイプを構築することを考えると、クラウドだ
IoT 支部や、AWS 上で AP 操作可能なモバイル通信を提供し
けでなくモバイル通信やデバイスについても知識があるこ
ている SORACOM などが、ハッカソンやハンズオンを盛ん
とが望まれます。
に行っています。
少なくとも、どのような通信やプロトコルがあるのか、デ
バイスはどのように動作するのか、センサーはどのように接
続するのか、などを知ることで、IoT システムを作る際には
大きなプラスとなります。
018
B-3 IoT 時代のクラウドエンジニア像
ハンズオンの様子
ハンズオン機材
また大阪ではユニークな取り組みを行っており、4 つの
ループベースのハンズオンとはいえ、ハンズオン資料や設備
ユーザーグループ(関西おうちハック、SORACOM-UG 関西、
も有志により整えてありますので、是非足を運ばれることを
JAWS-UG 関西 IoT 専門支部、kintone Café 大阪)が共同
おすすめします。
で IoT リレーハンズオンを行ったりしています。ユーザーグ
019
Appendix-B : IoT とモバイルネットワークの未来に触れる
Appendix-A
新しいビジネスに対するアーキテクチャ
Appendix-B
この章で説明したとおり、クラウド、通信、デバイスの発展
ス(たとえば VPC ピアリングや S3 のクロスアカウントアク
と低価格化、コモディティ化により、クラウドに閉じたシス
セスなど)を利用することで、専用線などを用意しなくても
テムから、現実のモノとつながって価値を生み出すようなシ
AWS 上だけで瞬時にデータ交換を行える仕組みを作ること
ステムが増えて来ることが予想されます。
ができます。これは既存のオンプレミスやデータセンターで
そのシステムは、今までとは異なるアーキテクチャ、運用、
Appendix-C
セキュリティが必要になってきます。
また今まででは取れなかったデータがモノからクラウド
に集まりだすと、データ自体がビジネス価値を持ち始め、1
はできなかった、画期的なものだと考えます。
今後はこういった可能性も視野に入れながら、アーキテク
チャを作っていく必要があります。
いずれにせよ、AWS クラウドを使いこなすことができ、
つの企業に閉じず、異なる業種の企業間のデータ連携が盛ん
その上でビジネスや新しいアーキテクチャに目を向けられ
になる可能性があります。
るエンジニアにとっては、大きなチャンスとなるでしょう。
AWS を使う企業は、どの企業であっても AWS のサービ
020
Appendix-C
Cloud ならではの大規模 CPU の利用
C-1 キャンペーン・セール特設サイト向きな事前スケー
ルアウト
C-2 オンプレで処理しきれなくなったバッチを AWS に
オフロードして処理を実行
Appendix-C : Cloud ならではの大規模 CPU の利用
Appendix-A
C-1
キャンペーン・セール特設サイト向きな
事前スケールアウト
Appendix-B
TEXT: 山﨑奈緒美・中丸良
Appendix-C
AWS ならではの利用方法としてインスタンスのスケールアップ・ダウンとスケールアウト・インというもの
があります。スケールアップ・ダウンとは 1 つのインスタンスに割当てている CPU やメモリ量を増やしたり
減らしたりすることを指し、スケールアウト・インとはスケールアップ・ダウンとは違ってインスタンスの数
を増やしたり減らしたりすることを指します。
AutoScaling の概要
EC2 インスタンスの CPU やメモリ使用量やアクセス状況
WEB サイトに使用している WEB サーバーやゲームに使用
を CloudWatch で監 視し、CloudWatch でしきい値を超
しているアプリケーションサーバーに AutoScaling を設定
えた際にトリガーを設定することによって EC2 インスタン
することにより、サーバーに対するアクセスが増えてリソー
スのスケールアウト・インを自動的に行うようにする仕組み
ス負荷が高くなった際にスケールアウトをさせるというの
を Auto Scaling と呼びます。
は有名な使用方法となります。
キャンペーン・セール特設サイトの特性
AutoScaling はサーバーのリソース負荷が高くなった際
LINE などによる広告を打つことが多く、その際のサイトへ
に自動的にサーバーインスタンスを増やすことによって各
のアクセスの増え方として広告配信完了直後から急増する
サーバー単位の負荷を分散させるという意味で有効な手段
パターンが多くあります。
となりますが、逆にデメリットも有ります。
そして、広告配信後 5 分間でアクセス増のピークを迎え、
CloudWatch の監視間隔が 1 分間ごととなっており、し
10 分〜 15 分後にはアクセスが落ち着くというパターンが
きい値を超えたことを検知してから AutoScaling が発動し
ほぼとなるため、起動しきるまでに 10 分〜 15 分ほどかかる
EC2 インスタンスを起動させるのですが、EC2 インスタン
AutoScaling でのスケールアウトでは対応しきれない状況
スが起動してアクセスを受け入れられるようになるまで約 5
となります。
分〜 10 分ほどかかることとなります。
昨今では EC サイトや企業の商品サイトなどでキャンペー
ンやセールの特 設サイトを設けて Twitter や Facebook、
022
このような急激かつ短時間で収束するアクセス増に対応
するための手法を紹介します。
C-1 キャンペーン・セール特設サイト向きな事前スケールアウト
どのような準備が必要か
企業が主体となってキャンペーンやセールの広告配信、ま
このため、
それらの部門との連携を密に取る必要があります。
たはテレビやラジオ放送を行う場合、広告配信やテレビ放送
どのような媒体で、いつ広告配信やメディアでの放送が行
が行われるタイミングは事前に広報部門やマーケティング
われるのか、各部門から事前に、遅くても 3 日前までには連
部門などが把握していることがほぼであると考えられます。
絡をもらえるようにしましょう。
EC2 スケジュール起動
予めスケールアウトさせておくべき時間が確定したら、
EC2 インスタンスのスケジュール起動の設定を行います。
注意事項として、EC2 インスタンスが起動するまでにか
かる時間の考慮が必要となります。
せるインスタンス数の指定および繰り返しパターン、開始時
刻、終了時刻を設定します。
開始時刻は UTC( 世界標準時 ) となるため、日本時間から 9
時間をマイナスした時刻を入力します。
繰り返しパターンの設定は一度のみのパターンや Cron 形
式での設定など、
柔軟なパターン設定を行うことができます。
AutoScaling による時刻起動
既に EC2 インスタンスを AutoScaling 設 定している場
合、AutoScaling グループでスケジュ ール起 動させたい
AutoScaling グループの「スケジュールされたアクション」
また、AutoScaling の起動アクションは最大で 2 分間遅
延することがあります。
このため、遅延時間とインスタンスの起動時刻を考慮した
起動時刻を設定するようにしましょう。
タブで「予定アクションの作成」をクリックし、スケールさ
AutoScaling による時刻起動
023
Appendix-C : Cloud ならではの大規模 CPU の利用
Appendix-A
OpsWorks による時刻起動
OpsWorks による EC2 インスタンスのスケールアウトも
可能です。
OpsWorks での時刻起動も AutoScaling での時刻起動と
同じく、インスタンスの起動時間を見込んで時刻設定を行う
必要があります。
Appendix-B
OpsWorks の Management Console で「Time-based
また、OpsWorks がインスタンスの起動または停止する
Instances」ページで時刻ベースによるインスタンスの追加
かのポーリングをバックグラウンドで行っており、ポーリン
設定を行います。
グ間隔が数分間隔となるため、起動させたい時刻が 10 時で
OpsWorks では毎日もしくは特定の曜日の何時から何時
Appendix-C
まで起動するかを設定することができます。
ある場合、起動時刻は 9 時としておくほうが 10 時を過ぎて
起動する可能性を考えると安全です。
曜日ごとに起動時刻を変えて起動させることも可能です。
OpsWorks による時刻起動
サーバーレスアーキテクチャーの採用
事前に予期できない負荷の急増など、EC2 インスタンス
スマートフォンアプリはもちろんのこと、通常の Web サ
のスケール速度が許容できない場合、AWS ならサーバーを
イトでも近年の JavaScript フレームワーク、例えば React.
使わないという選択肢もあります。具体的には画像などの
js を用いれば違和感なく実装できるかと思います。
静的なコンテンツは S3 から配信し、ユーザーごとに異なる
または各種 SDK と Cognito を組み合わせることで、ユー
コンテンツは API Gateway を通じて Lambda に処理させ
ザーごとの処理をユーザー自身の端末に任せてしまうこと
るといった方法です。
も AWS なら簡単に実装でき効果的です。
024
C-1 キャンペーン・セール特設サイト向きな事前スケールアウト
CloudFront による可用性の向上
AWS で急激な負荷に対応する方法は、EC2 のタイムベー
AWS WAF でのアクセス制御
スのスケーリングやサーバーレスなアーキテクチャ ーの
ログインなどを伴う新規登録キャンペーンや一時的な特
採用だけではありません。それらと併用でき、さらにサー
設サイトにおいては、善良でないユーザーからのアクセスを
ビスの可 用 性を高めることのできるサービスが Amazon
受けることもしばしばあります。悪意ある攻撃にもさまざ
CloudFront です。
まな種類がありますが、急激に負荷が上昇する類のものも、
データベースへアクセスしようとする類のものも、AWS の
サービスを組み合わせるとそれらを緩和することができま
キャッシュによるオリジンの負荷軽減
CloudFrontは、高性能なコンテンツ配信サービスです。
す。CloudFront はもとより分散サービス妨害攻撃(DDoS)
対策が施されていますが、AWS WAF を組み合わせれば、あ
世界中のサーバーが近隣のユーザーからのリクエストを
る程度の脆弱性攻撃も防げますし、CloudFront のアクセ
受け付け、E C2 や S3、または L a m b d a といったオリジン
スログに Lambda と WAF などを組み合わせることで一時
へのアクセスを極力軽減し、ユーザーへ高速にデータを届
的に特定の悪意ある IP アドレスをブロックするといったこ
けます。通 常キャ ッシュしにくいといわれるユーザーご
ともできます。
とのコンテンツも扱いやすいよう設計されています。数秒
でも再利用可能なコンテンツがあればかんたんにキャッ
シュ設定を追加でき、急激なアクセスにも耐えられるサイ
トを構築できます。
025
Appendix-C : Cloud ならではの大規模 CPU の利用
Appendix-A
C-2
オンプレで処理しきれなくなったバッチを
AWS にオフロードして処理を実行
Appendix-B
TEXT: 金春利幸
Appendix-C
システムにバッチ処理はつきものです。データクレンジングや集計処理など様々な処理がバッチ処理として
行われます。最初からAWSでの稼働を前提に設計されたシステムであればLambdaやEMRなどを用いてバッ
チ処理をスケーラブルかつ高速に処理することも可能ですが、オンプレで稼働させる場合、データ量に合わ
せてスケーリングすることは困難です。
全面的に AWS に移行することが難しいという場合でも AWS は便利に使えます。
オンプレでは処理することが難しいバッチ処理を AWS にオフロードすることができます。
捌ききれなくなったデータを AWS で処理
データセンターと AWS を DirectConnect を用いた専用
線接続あるいは VPC への VPN 接続しオンプレミスの DB の
立ち上げ、バッチ処理を実施します。このとき、結果の書き
込み先はオンプレの DB になるようにします。
レプリケーションを RDS で取得するようにします。
(RDS は
こうすることで計算量の必要なバッチ処理のみを AWS に
オンプレや EC2 で稼働しているデータベースのスレーブに
オフロードし、捌ききれなくなった計算を必要な時間内で処
なることもできます)
理することができるようになります。
そして、必要な計算量が得られるだけ EC2 インスタンスを
AWS らしい方法ならどうなる?
AWS の利用を前提としたときのバッチ処理の方法として
動機能を用いて必要なタイミングで処理を起動して処理
はどういう方法があるでしょうか? いくつか考えられる方
します。この場合 1 処理が 5 分以内に終わるように注意
法を挙げておきます。
する必要はありますが、EC2 インスタンスを用意する必
要がないため、かなり簡単に処理を実装することができ
• バッチ処理専用の EC2 をバッチ処理実行時のみ起動し
て処理する:必要な時間のみ高性能なインスタンスを起
チェインして処理することを検討する必要があります
動し短時間で処理を終わらせ、終了したらインスタンス
• バッチ処理という考え方を変える:逐次処理可能な場合、
を停止あるいは削除します。こうすることでコストを抑え
処理可能になるごとに SQS に計算を指示するキューを追加
ながら短時間で処理を実行することができます。この方
し、キューに指示が入れば処理を行います。このとき EC2
法の場合、処理する時間は夜間に限る必要はありません
を使うことも Lambda を使うこともできます。オンプレミス
(DB にかかる負荷にもよるため夜間が適している場合
の場合は計算リソースの都合から夜間バッチを前提として
もあります)。
• AWS Lambda を利用する:Lambda のスケジュール起
026
ます。5 分を超える処理を行う場合は、Lambda 関数を
考えていた処理であっても AWS を前提に考える場合は、
夜間バッチを前提として考える必要もありません。