オンデマンドな低維持コストWindows環境構築 2017年版
ベルリンのしがひです。入社して1ヶ月が経ちました。クラスメソッドでは常識の範囲でAWSが自由に使えるので、何かを覚えた中学生のように日々アレコレ試しているところです。
ここベルリンオフィスの従業員の業務端末は全てMacで、つい最近サポート用のCeleronラップトップを購入するまでWindows環境がありませんでした。軽いWindowsアプリケーションを試したいならBoot CampでOSを入れればいいのですが、少ないSSDを圧迫しますし、たまにしか使わないのに自分の端末に別OSが眠っているというのも気持ちがいいものではありません。
Windowsでストレージをかなり食うアプリケーションを使う必要があり、オンデマンドで維持費が低い環境を考えてみました。
On-Demand Windows 10 Desktop as a Service
Citrix XenDesktop Essentials
今年はじめ、CitrixがXenDesktop EssentialsというMicrosoft Azureに特化したVDIサービスを開始しました。最低利用数25ユーザー、サブスクリプション価格1月12ドルと、Desctop as a Service (DaaS)が一気に現実に近づいた感がありますが、見積もりツールでコストを試算すると違った景色が見えてきます。
1ロケーション、ユーザーあたり20GBストレージ、ストレージの冗長化なし、10時間のサーバーアップタイム、50%の常時使用というタスクワーカー向けのスペックですが、1月1ユーザーあたりのコストは10000円に迫ります。
もちろん弊社ベルリンオフィスは25人もいませんし、オンデマンドで一時的に使いたいというニーズからは最初から外れますが、1000人規模のユーザーと端末管理コスト低減といったVDIのベネフィットを多めに見積もらないと、物理端末比較でROIはまだまだ出にくいのが現実です。
Amazon WorkSpaces
では我がAWS軍はどうでしょうか。WorkSpacesはWindows 7/10が1ユーザーから即時使える現時点で最もお手軽なDaaSです。AWS無料利用枠でも40時間まで試せます。
インフラを提供するAWS自身のサービスなので見積もりやすい明朗会計です。月極定額と月額固定費+時間課金が選択可能で、スタンダードバンドルの月極定額は47ドルとなります。3年利用で1692ドルなので、物理端末の管理コストを考えれば特に中小企業で検討に値するパフォーマンスだと言えます。また、外注や取引先にWindows端末とアプリケーションを使ってもらう必要があるユースケースでは、即座に自社環境を安全にプロビジョニングできて月額14ドルの固定費で維持できるので非常に有用です。
ただ、それでも14ドルはかかるわけで、オンデマンドというベルリンオフィスの用途にはもう一絞り欲しいところです。
参考までにMicrosoftのリモートデスクトップをEC2に展開するベストプラクティスはこちらです。企業の使用用途に合わせて最適化すればWorkSpacesからさらにコストを下げることができます。
Windows Server 2016 on EC2 + mounted S3 IA storage
結論はEC2上のWindowsサーバーを必要なときに起動して使うという原始的な方法です。ほとんどのWindows10アプリケーションはWindows Serverでも動作するので低頻度な使用でクライアントOSのUXが必要ないならば選択肢の一つになります。また、サーバーアプリケーションでもGUI操作が必要でLinuxのX11転送では生産性が落ちるケースでは、(苦行を選ばず素直に)WindowsでRDPを使いましょう。
注意点としてEC2のWindows Serverのリモートデスクトップはサーバーアプリケーションの管理用にライセンスされていて、Microsoft Officeのような明らかなクライアントアプリケーションの使用は想定されていません。そういった場合はリモートデスクトップのCALを新たに購入するか持ち込む必要があります。
EC2は停止している間は課金されないのですが、データを保存しているEBSはリリースしない限り課金されます。そのため、EBSの容量は必要最小限にして、コスト比 1/10近くになるS3の低頻度アクセス(IA)ストレージをマウントして使います。
EC2を立ち上げる前に、上記のようにS3アクセス用のIAMロールを作成しておきます。出来合いのAmazonS3FullAccessをアタッチすればいいです。
フランクフルトリージョンでWindows Server 2016 Baseのマシンイメージ(注: Nano AMIではRDPが使えません)とt2.mediumを選択。
ステップ3で作成したIAMロールを選択。この後セキュリティグループやKeyペアを新規作成するか既存を使うかを選択してEC2プロビジョニング完了です。
同じフランクフルトリージョンにS3バケットを作成します。
ではRDPでEC2にアクセスしてみましょう。
EC2インスタンス画面で接続ボタンを押して出てくるポップアップから、接続用のファイルをダウンロードします。
さらにGet Password画面にKeyペアをアップロードしてAdminパスワードを復号します。
接続用ファイルをリモートデスクトップクライアントで開き、編集で復号したパスワードを入れて接続します。こうすることでログイン画面でパスワードを入力する必要がなくなります。また、必要に応じてRedirectionで端末のローカルストレージをマウントしておきます。ファイルのやり取りやクリップボードをリモートと共有できて便利です。
なんら違和感のない画面と操作性です。
次はS3をマウントするためのツール、Cloudberry Drive ServerをRD上のIEを使ってダウンロードします。LinuxマシンイメージにS3をマウントする場合はgoofysが最適ですが、Windowsの場合、実用に耐えうるのはCloudberry Driveのみといっても差し支えありません。
クラスメソッド・ヨーロッパはCloudberry Explorer やManaged Backupなどのライセンスやソリューションを販売しているCloudberrylab社のパートナーです。ユースケースによっては気持ちばかりのディスカウントができますので、商用ライセンスをお求めの際はお問い合わせください。
ダウンロードしたインストーラーを開いてパチパチボタンを押せば順当にインストールできます。
デスクトップ右下に常駐しているCloudberry Driveをクリックして設定に入ります。Add Storage AccountタブからUse AWS IAM role policyを選択して接続試験をします。あっけないほど簡単に繋がりました。
Pathに作成したS3バケットを選択指定してDドライブにマウントします。
マウントできました。これでEC2の30GBを超えて堅牢かつ高速なS3をファイルシステムのように使えます。
コスト考察
フランクフルトリージョンでこれを使った場合、おおよそどのくらいのコストがかかるのでしょうか。
停止中月額 | 5日稼働月額 | フル稼働月額 | |
EC2 | $- | $8.64 | $51.84 |
EBS 30GB | $2.38 | $2.38 | $2.38 |
S3 IA 20GB | $0.27 | $0.27 | $0.27 |
合計 | $2.65 | $11.29 | $54.49 |
ベルリンオフィスのオンデマンドでWindows環境を使うという要件を満たすには十分なコストパフォーマンスです。
アウトバウンドトランザクションなどを加味していませんが固定費は月額300円に収まるほか、フル稼働させても現実的なコストです。フル稼働させる場合は通常このようなオンデマンドスタンスではなくリザーブドインスタンスを使用するので、さらにコストを圧縮できます。
Windowsのドメインコントローラーやプリンタサーバー、そしてファイルサーバーをAWSに構築することは、今日び、お財布の面からも有利な戦略と言えるでしょう。
クラスメソッドで、ヨーロッパリージョンで勤務しませんか? クラスメソッドでは、日本、バンクーバー、ベルリンで一緒に働く仲間を募集しています! 採用情報 | クラスメソッド株式会社