「AWS Black Belt Tech Webinar 2014 – Amazon WorkSpaces」レポート

aws_icon_workspaces_white

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、虎塚です。

本日夕方に開催された「AWS Black Belt Tech Webinar 2014 - Amazon WorkSpaces」を聴講したので、レポートします。

Workspacesは、つい先日東京リージョンで使えるようになりましたね。

今回の講師は、アマゾンデータサービスジャパンの渡邉源太さんで、東京リージョンローンチを記念して、Webinarを大阪から配信とのことです。

Amazon WorkSpacesとは

Amazon WorkSpacesは、(小売のAmazon.comと同じような)黒い矢印がついた、AWSサービスの中では珍しいロゴ。Zocaloも同様。

30以上あるAWSのサービスの中で、WorkspacesとZacaloは「アプリケーション」というカテゴリに位置する。昔は「コンピュート処理」だったが、移動した。「アプリケーション」は、「モバイル」と合わせてAWSがいま力を入れているカテゴリの1つである。

Amazon WorkSpaces

  • AWSクラウド上に仮想デスクトップを立ち上げて、エンドユーザに提供するサービス
  • 任意のデバイス(Windows/Mac/iPad/Kindle Fire/Androidタブレットなど)から、ネットワークを通じてどこからでもアクセスできる
  • Management Consoleを数回クリックするだけで、新しいDesktopを作ったり、ユーザをプロビジョンしたりできる
    • 既存の仮想デスクトップ製品よりも使いはじめるのが簡単で、運用も簡単

自社構築 vs. EC2 vs. フルマネージド

仮想デスクトップの運用方法によって、顧客が担当する作業の種類には、大きな違いが生じる。

オンプレミスで運用した場合
エンドユーザにデスクチップやアプリケーションを提供するまでに、ハードウェアの電源の調整やラッキング、サーバメンテナンスを含め、たくさんの作業が必要
XenDesktopのような製品をAWSで運用した場合
オンプレミス運用より随分ラクになるが、OSへのパッチ当て、ミドルウェア導入、高可用性対応、バックアップなどの作業は依然として必要
WorkSpaces
アプライアンス製品をAWS上で運用したときに残った作業も、AWSが提供してくれる。デスクトップ上にアプリケーションをインストールするだけで、すぐに使える

WorkSpaces Bundle

利用できるWorkSpaceは、現在は4種類ある。Bundleによってハードウェアのスペックやインストールされているアプリケーションが異なる。

  • Standard
    • メモリ3.75GB、ユーザストレージ50GBを持つ標準構成
  • Standard Plus
    • Standardと同じスペックで、MS Officeとトレンドマイクロのアンチウイルスがインストールされている(アプリケーションのライセンス料も含まれる)
  • Performance
    • Standardのほぼ倍のスペックで、Standardと同じアプリケーション構成
  • Performance Plus
    • Performanceと同じスペックで、MS Officeとトレンドマイクロのアンチウイルスがインストールされている

※「ユーザーストレージ」とは、ユーザ専用領域(Dドライブ)のサイズのこと。

セットアップ

Amazon WorkSpacesセットアップ

WorkSpacesのセットアップ方法は2種類ある。

Quick Setup
自動的に作成
20分くらいでWorSpaceを利用できる
このセットアップ方法は、初回セットアップ時だけ使える。作った環境をたとえ消しても、Quick Setupをもう一度実行することはできない
Advanced Setup
VPCやディレクトリを選べる
社内のActive Directoryと統合できる

WorkSpacesをちょっとだけ試すならQuick Setupを使い、既存VPCや社内環境と繋ぐにはAdvanced Setupを使う。

Quick Setup

  1. WorkSpacesのBundleを選択する
  2. ユーザを作成する
  3. WorkSpacesのプロビジョンを開始する

なお、東京リージョンでWorkSpacesを利用する場合のみ、環境の言語に日本語か英語かを選択できる。東京リージョンローンチ時にデスクトップの日本語化も合わせて行ったため。日本語を選択すれば、OSやデスクトップを日本語で利用できる。

WorkSpaceのステータス確認

  • WorkSpacesのプロビジョンを開始して20分ほどたち、Statusが「Running」に変わったら完了
  • ユーザに完了がメールで通知される

メールの受信とユーザーの登録

ユーザがシステムから受け取るメールは従来英語だったが、東京リージョンで利用した場合は日本語と英語で記述されている。日本の顧客にも分かりやすい。

ユーザは、メールに記載されたリンクをクリックして、自分のパスワードを設定する。

つまり、管理者はユーザの作成時に、ユーザ名とログオンネームだけを設定する。初期パスワードはユーザ自身が設定するので、セキュアに利用できる。

WorkSpacesクライアントのダウンロード

http://clients.amazonworkspaces.com/からクライアントをダウンロードする。メールにリンクが記載されているので、クリックしてもよいし、このURLに直接アクセスしてもよい。

Windows, Mac, Android, iOS用のクライアントがある。複数のデバイスにインストールしてもよい。

WorkSpaceへの接続

ユーザ名とパスワードを入力して、サインインするだけ。簡単!

Quick Setupで実行されるプロセス

Quick Setupで実行されるプロセスを時系列に追うと、次のようになる。

  • WorkSpaces用のVPCを作成
  • VPCにユーザとWorkSpaces管理用のディレクトリをセットアップ
  • ディレクトリ管理者アカウントを作成
  • ユーザーアカウントの作成とディレクトリへの追加
  • WorkSpaceインスタンスの作成
  • ユーザーへの招待メールの送信

上記の一連の流れが、バックグラウンドで自動的に実行される。

Quick Setupで作成される環境

InternetGatewayがアタッチされたVPCの中で、Domain Controllerが2つのAvailabilityZoneにそれぞれ1台ずつ(合計2台)配置される。それぞれのAvailabilityZoneにWorkSpacesが作られる。

Advanced Setup

既存VPCやオンプレミスのActive Directoryと連携する場合は、こちらの方法を使う。

  1. 前提としてVPCをあらかじめ作っておく
  2. ディレクトリを作成する
  3. WorkSpaceをプロビジョンする

ディレクトリ作成についての詳細は、次の項で説明する。

ディレクトリの選択

aws_icon_workspaces

ディレクトリを作成する際に、種類を選択する。

WorkSpaces Cloud Directory
QuickSetupで作成されるディレクトリと同じ環境が作成される
Active Directory管理者がいなくても簡単に立てられる
Domain Controller(ディレクトリサービス)の管理はAWSにおまかせ
すぐにWorkSpacesを使いたい場合に利用する
WorkSpaces Connect
社内のActive Directory環境と連携することができるので、別途ディレクトリを立てる必要がないのが特長
既存のユーザやグループによる権限付与ができる
グループポリシーによる集中管理ができる

WorkSpaces Cloud Directory

  • ドメインと管理者アカウントを作成する
    • Organization Name: AWS内でユニークな名前である必要がある
    • Directory DNS
    • NetBIOS Name
    • Administrator Password
  • ディレクトリを作るVPCを選択する
    • 異なるAvailabilityZoneに2つ以上のSubnetが存在するVPCである必要がある

作成されたCloud Directory

  • ディレクトリサービスはMulti-AZ構成で展開される
    • EC2インスタンスとして顧客のManagement Consoleから見えるようにはならない
    • EC2インスタンスとしての管理(Stop/Start)は不要
    • Domain ControllerのIPアドレスだけがManagement Consoleから見える
  • 従来のActive Directory管理ツールから管理できる
    • Redircmp.exe
    • イベントビューア
    • Active Directory ユーザーとコンピュータ

ディレクトリの管理

  • Active Directory管理ツールをインストールすることで、WorkSpaces Cloud Directoryの管理が可能
    • %SystemRoot%¥system32¥dsa.msc

Security Groupの設定

  • Domain Controller用およびWorkSpaces用のSecurity Groupが自動作成される
    • _controllers
    • _workspacesMembers
  • Management ConsoleのEC2のところに見える。確認や設定変更ができる
  • WorkSpacesからドメインにログオンできるように、Domain Controllerとの通信はデフォルトで許可されている
    • 特に追加の要件がない限り、そのままでよい

Domain Controllerとの疎通のために開放が必要なポートはたくさんある。(DNS, Kerberos, LDAP...詳細は発表スライドをご確認ください)

RPCのための動的ポートは、レンジで許可する必要がある点に注意する。Windowsのバージョンによって異なるので、自社の環境に合わせる。次のサポートページを参照。

ディレクトリ設定

Organizational Unit (OU)
Active Directoryの中の管理単位
デフォルトではComputer OUにコンピュータが作成される
分けたい場合は特定のOUを指定して変更できる
Security Group
WorkSpacesのSecurity Groupを指定する
デフォルトのSecurity Groupと合わせて有効になるので、デフォルトの設定はデフォルトSecurity Groupに残し、追加要件を加えたSecurity Groupを新規に付けるといった運用が可能

WorkSpaces Connect

WorkSpaces Connectは、既存のActive Directoryと接続して、ディレクトリ認証を行う仕組み。前提として次のものが必要。

  • VPC
    • Internet Gateway
    • (オンプレミスのActive Directoryと連携させる場合)VPN接続またはDirect Connect
  • ドメイン アカウント
    • ユーザーとグループへの読み取り権限と、コンピュータ アカウントの作成権限が必要
    • ドメインのAdministratorである必要はない
  • DNSサーバ/Domain Controllerの2台のIPアドレス

社内ディレクトリとの統合

次のようなイメージになる。

  • WorkSpacesが配置されたVPCは、オンプレミス環境とVPNまたはDirect Connectで接続する
  • ユーザはインターネットを通じてWorkSpaces APIのエンドポイントへ接続する
    • 443番ポートのHTTPSでアクセスして、OAuth Gatewayでパスワード認証をする
    • 認証がOKならWorkSpacesにログインできる

WorkSpaces Connectの作成

先ほどのWorkSpaces Cloud Directoryとの違いは、既存ドメインの適切な権限のあるアカウントとパスワードを指定すること。

  • Active Directoryドメイン情報を入力
    • Organization Name
    • Directory DNS
    • NetBIOS Name
    • Account username
    • Administrator Password
  • ディレクトリを作るVPCを選択する
    • 異なるAvailabilityZoneに2つ以上のSubnetが存在するVPCである必要がある

作成されたWorkSpaces Connect

  • VPC上に認証用のプロキシが作成される
    • WorkSpaces自体が認証用プロキシのように振る舞い、Domain Controllerに対して認証する。WorkSpaces自体がユーザアカウントやパスワードを持たないのがポイント
    • 既存のユーザ認証およびポリシーを適用できる

Multi-Factor Authentication

WorkSpaces Connectでは、オンプレミスにあるRADIUSサーバを利用した多要素認証に対応している(WorkSpaces Connect限定)。

(例)Google Authenticatorを使った方法

例として、無償のGoogle Authenticatorを使った場合の認証の流れを説明。

  • クライアント側: Google Authenticator
  • サーバ側: OSSのFreeRADIUSとGoogle AuthenticatorのPAM(Pluggable Authentication Module)

※ユーザ登録時はGUIがないのでコマンドライン操作になる。

  1. デバイスから初めてWorkSpacesを使う時に、招待メールに記載されていた登録コードを入力する
  2. Active Directoryで利用しているユーザ名とパスワードを入力する
  3. トークンに表示されるワンタイムパスワードを入力する

ユーザー名とパスワードだけの認証では心もとない場合や、自社のセキュリティポリシーにそぐわない場合は、多要素認証を使うことで、よりセキュアにWorkSpacesを利用できる。

インターネットへの接続

aws_icon_vpc

ネットワークインターフェース

  • それぞれのWorkSpacesは、2つのネットワークインターフェース(ENI)をもつ
    • VPCおよびインターネット接続用(ユーザから見える)
    • WorkSpaces管理用および画面転送用(AWS側が使用する)
  • 管理用ネットワークでは次のポートを使用する
    • インバウンド: TCP/UDP 4172(PCoIPでの画面転送), TCP 8200
    • アウトバウンド: UDP 55000

管理用ネットワークで使用するポート番号をOS側でブロックすると接続できなくなるので注意する。

インターネットへの接続

WorkSpacesは、デフォルトではインターネットに出られる経路を持っていないため、次のいずれかの方法で経路を作る必要がある。

  • Cloud Directory NAT Instanceパターン
  • Connected Directory NAT Instanceパターン
  • On-Premise Firewallパターン
  • Elastic IP Addressパターン

要は、NATインスタンスまたはElastic IPを付与する。

構成1: Cloud Directory NAT Instanceパターン

PublicなサブネットにNATインスタンスを用意し、それを経由してインターネットにアクセスする。NATが1つだけだとダウンした時にまずいので、要件によってはHA構成にした方がよい。

構成2: Connected Directory NAT Instanceパターン

オンプレミスのデータセンターとVPNまたはDirect Connectで接続していることを前提として、社内への接続はVPNを経由し、インターネットへの接続はNATを経由する。オンプレミスとインターネットの両方のリソースにアクセスできる。

構成3: On-Premise Firewallパターン

Internet Gatewayを設置せず、Virtual Private Gateway経由でオンプレミスを通してすべての通信を行う。自社の堅いセキュリティポリシーを遵守する必要がある場合などに採用を検討する。

構成4: EIP (Elastic IP Address)パターン

WorkSpacesのENIに、直接EIPを付与する。Management Console上で確認しながらENIに直接アサインする作業が少し面倒だが、小規模なら可能。VPNやDirect Connect接続がなく、AWS内独立した環境の場合に有効なパターン。

なお、Quick Setupを利用すると、WorkSpacesに自動的にEIPが割り当てられる。

Amazon WorkSpacesのIAMポリシー

IAMポリシーでWorkSpacesのアクセスコントロールができる。WorkSpaces関連のアクションの他に、IAM、EC2、Zocaloの特定のアクションに対しても権限を付ける必要がある。WorkSpacesへのアクションだけを許可しても使えないので注意する。

WorkSpacesのポリシー管理・パッチ管理

WorkSpacesクライアントは、Active Directoryドメインのコンピュータとして管理される。

    既存の管理ツールを利用できる

    • たとえば、Windows Server Update Services (WSUS) によるパッチ管理が可能
    • WSUSサーバは、同じVPC内のEC2インスタンスに配置してもよいし、オンプレミスに配置してもよい

Tips - ローカルポリシー

WorkSpacesには、次のポリシーがデフォルトで適用されている。

  • コンピューターの構成: 管理用テンプレート
    • Windowsコンポーネント: リモート デスクトップ サービス(例: オーディオのリダイレクト)
    • システム
  • ユーザーの構成: 管理用テンプレート
    • Windowsコンポーネント: エクスプローラー(例: Cドライブの非表示)
    • コントロールパネル: 個人設定

Tips - ソフトウェア配布

後からソフトウェアの配布が必要なときは、次のような方法がある。

  • WSUSでWindowsパッチの適用を管理
  • グループポリシーを使ったアプリ配布(.msi / .zip)
  • ログオンスクリプトでインストール
  • サードパーティソフトを使ってアプリ配布
    • (例)Microsoft System Center Configuration Manager

WorkSpacesクライアント

  • サポートするプラットフォーム
  • ネットワーク要件
    • TCP/UDP 4172
    • TCP 443 (HTTPS)
    • TCP 22 (SSH)
    • RTT 100ms以下推奨

WorkSpacesのエンドポイントはパブリックな場所に存在することに注意する。また、企業のFireWallはSSHを通さないことにしているポリシーが多く、調整が必要な場合がある。

RTTは250ms以下ならギリギリ快適だが、ベストは100ms。オレゴンリージョンにだけWorkSpacesがあった頃は、140ms程度出ていたが、東京リージョンに来て10〜30msecで繋がるようになった。

Registration Code(登録コード)の入力

別のディレクトリに接続するときは、クライアントからRegistration Codeを再入力すればよい。Registration Codeはディレクトリごとに固有になっている、

言語の選択とプロキシサポート

  • WorkSpacesクライアントの詳細設定から言語を設定できる
      英語/日本語
  • プロキシを設定できる
    • 社内ネットワークからプロキシを経由して接続できる
    • (画面転送用でなく)HTTPSのプロキシなので注意

ローカルプリンターのサポート

  • ローカルPCに接続されているプリンタをWorkSpacesから使えるようになった(ただし2014年9月10日の時点でWindowsのみ対応)
    • プリンタはWorkSpaces側で自動認識する
    • WorkSpaces側にドライバがない場合は、別途インストールが必要
  • CortadoのThinPrintGoogle Cloud Printなども使える

Amazon Zocalo Sync (WorkSpaeces Sync)

  • ローカルのフォルダをWorkSpacesと同期できる
    • 1ユーザあたり50GB
    • 管理者がディレクトリ単位で有効化/無効化できる
  • WorkSpacesとは独立して動作する
    • 本機能はZocaloサービスの一部
    • クライアントは、Amazon Zocalo Client DownloadsからAmazonZocaloSetup.exeを別途導入して実行する
    • WorkSpacesユーザは、Zocaloに対する追加課金なしで利用できる

(参考)Amazon Zocalo

  • フルマネージド型の企業向けの文書保存・共有サービス
    • データはデフォルトで暗号化され、S3にすべて保存される
    • WorkSpacesと同様に、既存のActive Directoryと連携してユーザの権限管理ができる
  • Zocaloを単体の場合、1ユーザあたり200GBを$5/月で利用できる
  • WorkSpacesユーザは50GBまで無料でZocaloを利用でき、$2/月で200GBにアップグレードできる

ただし、東京リージョンではまだZocaloのフル機能が提供されていない。WorkSpacesからは、現在Zocalo syncだけが使えることに注意する。

Amazon WorkSpacesアップデート

次のリージョンで利用可能。

  • US-East-1
  • US-West-2
  • EU (Ireland)
  • Asia Pacific (Sydney)
  • Asia Pacific (Tokyo) ←New!!

さらに、東京リージョンにやってきたタイミングで日本語化も実施された。

まとめ

  • Amazon WorkSpacesは東京リージョンで使える
    • デスクトップもクライアントも日本語化されている
  • WorkSpaces Connectで、既存ディレクトリとの連携ができる
  • Amazon Zocaloとの連携で、ドキュメントの同期やバックアップに対応した

Q&A

Q: AWS上にActive Directoryを立てたいとき、Cloud Directoryは、Active Directory on EC2で手動で立てることの代わりになりますか? 両者の違いは?
A: Cloud DirectoryはActive Directoryとほぼ同等の機能を提供しますので、Cloud Directoryを立てて、ドメインの中にEC2インスタンスを追加することも可能です。Active Directory on EC2と同じ使い方ができるでしょう。課金はWorkSpacesに対して行われますので、WorkSpacesのユーザが利用できるものと考えてください。なお、FAQに書いてあるとおり、Cloud Directoryが起動して30日経った後、WorkSpacesが使われていないと、ディレクトリ機能が停止されることがありますので、ご注意ください。
Q: WorkSpacesは、EC2のダッシュボードに表示されないのですか?
A: Yes. ただし、Security GroupやENIは、EC2のコンソールに表示されます。
Q: WorkSpacesのAMIを作成して、他の場所へ展開できますか?
A: 現在はサポート外です。ユーザからの要望が多いため、カスタムWorkSpacesバンドルとして、将来的に追加される予定です。
Q: Zocaloの容量の上限を管理者が設定することはできますか?
A: ユーザ単位で容量を設定できます。それを超えての保存はできません(保存できないので課金もされません)。超えた場合は追加課金が発生します。
Q: ローカルPCとの間でデータを転送した場合の費用は、WorkSpacesの費用になるのでしょうか?
A: Yes. Zocaloを単体で使う場合はZocaloの費用になります。WorkSpacesとZocaloの同期によって、追加の転送料がZocalo側にかかることはありません。
Q: Direct ConnectやVPNで接続した拠点からのみ、WorkSpacesに接続するような構成は可能ですか?
A: 現時点ではエンドポイントがパブリックなので、特定拠点のみからの接続はできません。ただ、VPNを通じての(社内からのみの)接続はできませんが、Direct Connectの専用線を通して画面転送をすることは、Direct Connectの設定で可能です。
Q: 週末メンテナンスの具体的な内容は何ですか?
A: (補足しますと、WorkSpacesではメンテナンス時間があらかじめ決められています。リージョンの時間帯にあわせて週末の0〜4時などです)メンテナンスは、かならずしも毎週行うわけではありません。WorkSpcaesのインフラ修正が必要になった時などに行います。その時にはWorkSpacesの一時停止がありえます。メンテナンス時間を利用してアップデートを行いますので、一時的に接続できなかったり、WorkSpacesが再起動されたりすることがあります。
Q: ユーザプロファイルは保存されないのでしょうか? そうだとすれば、どのタイミングでリセットされるのでしょうか?
A: ユーザプロファイル自体はDドライブに保存されます。Windowsの世界からみるとローカルプロファイルということになります。ちなみに、Dドライブは12時間に一度、スナップショットでバックアップが取られますので、ドライブが破損しても最悪12時間前の状態に戻すことができます。
Q: オンプレミスのActive DirectoryからCloud Directoryにドメインを移行できますか?
A: Cloud Directoryを立てるときは、完全に新規のドメインになってしまうので、オンプレミスの情報を引き継ぐことはできないと思われます。オンプレミスのIDを引き継ぐ必要がある場合は、WorkSpaces Connectをご利用ください。
Q: クライアント1セッションあたりのネットワーク帯域は、どの程度を見込めばよいでしょうか。
A: 使い方によりますが、たとえば、テキストデータであれば100k〜200kbpsに収まるでしょう。動画再生のように画面が激しく動く場合は、画面転送に必要な帯域も増えますので、極端な場合で数MBbpsもありえます。平均的には100kbpsくらいを見込めばよいと思います。

参考資料

感想

いやー、Q&Aも含めてすごい情報量でしたね。

多要素認証ができること、企業のプロキシサーバからの接続ができること、そしてZocaloと連携してZocaloのサービスを使えることなどを初めて知りました。

認証周りを含めサーバをWindows系で揃えている企業が、今後オンプレミスからAWSへ移行する時には、ぜひ活用したいサービスになるのでしょうね。

お客様の移行をお手伝いする時までに、しっかりキャッチアップしておきます!

それでは、また。