令和のシンクライアント?Amazon WorkSpacesでWindows仮想マシンを作成しOffice 365を導入してみた の続き?です。インストール後に試したこと、確認してみたこと、ざっくりまとめてみました。
仮想マシンのネットワーク周り
まずは Amazon WorkSpaces 上に作成した Windows 仮想マシンのネットワーク周りについて、ざっと見ておきます。ネットワークカードは2つ見えますが、赤枠のカードがインターネットアクセスを提供している模様。
ちなみに Tracert は以下のような感じで、
外から見える IP Address (たぶんインターネットゲートウェイの外向けアドレス) は以下のような感じでした。
そして自分は Windows のリモートデスクトップで、コンソールセッションに接続しているようです。
たぶんですが、もう一枚 (198.19.128.0/18) のネットワークカードのほうが、Amazon WorkSpaces 専用にセットアップされたリモートアクセス用な気がします。
【追記】リモートアクセス用かどうか不明ですが、Elastic IP アドレスっぽいです
さらに追記
すみません、探し方が足りませんでした… ネットワークインターフェースありました!
そして、Elastic IP? がアタッチされていたのは、こちらでした…
そしてディレクトリの設定にある、以下が「有効化」されているので、このパブリックIP付与が実施されていると思われます。(たぶんこれが理由で、この Elastic IP? はコンソールの EIP リストには出てこない)
またまた追記
黒帯セミナー動画 で詳細に説明されていました。スライドを引用します。
ちゃんと2つのネットワークインターフェースについて説明されています。(9) の画面のストリーミング (PCoIP) で用いられているのが、↑で謎だったインターフェースですね。次のスライドもわかりやすいので引用します。
このスライドで右にある "Direct connect/VPN" が、今回の私の場合はインターネットゲートウェイになっています。そして右のオンプレミスがインターネット、って感じですね。
なお同じ 黒帯セミナー動画 の中で、サブネットが2つ作成されている理由も説明がありました。Amazon WorkSpaces では負荷分散と障害対応のため、AZ をわけて2つのサブネットを作成し、WorkSpaces インスタンスを振り分けて配置するとのこと、今回の私の場合、1台しかインスタンスが無いため、片方は空のまま放置されていたわけですw
WorkSpaces 用に作成された VPC
AWS コンソールから探してみましたが、今回の仮想マシン用の EC2 インスタンスなどは見当たりませんでした。このあたりは Amazon WorkSpaces サービス内部で隠されているのかもしれません。
ただし WorkSpaces 用に作成された VPC 環境は確認できましたので、ちょっと見てみます。
ざっと眺めると、以下の要素が含まれているようです。
- サブネット x2
- IPv4 172.16.0.0/24
- IPv4 172.16.1.0/24 (現時点で未使用?)
- ネットワーク ACL
- DHCP オプションセット
- ルートテーブル
- インターネットゲートウェイ
2つ作成されていたサブネットのうち、仮想マシンのローカルアドレスは 172.16.0.170 だったことから、以下のサブネットに含まれると思われます。
このサブネットのルートテーブルを確認すると、VPC (172.16.0.0/16) 内のアクセス以外は、インターネットゲートウェイに飛ばすよう設定されていました。
ガイド にある図を改変して、今の状況を整理してみました。NAT ゲートウェイは見当たらなかったので、クイックスタートで作成した環境を利用者から見た構成としては、たぶんこんな感じなのかと思いますw
【追記】Amazon WorkSpaces で IPアドレスを固定する などを読みますと、上記で X になっている public subnet と NAT ゲートウェイを追加し、それに EIP (Elastic IP アドレス) を付与して、private subnet のルーティング先をそれに変更すれば固定アドレスを設定できそうです。なるほどなぁ。
インターネットアクセスに関する追記
インターネットゲートウェイ のドキュメントを参照すると、以下のような記述がありました。
IPv4 でインターネット通信できるようにするには、パブリック IPv4 アドレス、またはインスタンスのプライベート IPv4 アドレスに関連付けられる Elastic IP アドレスが必要です。インスタンスは、VPC とサブネット内で定義されたプライベート(内部)IP アドレス空間のみを認識します。
インターネットゲートウェイはインスタンスに代わって 1 対 1 の NAT を論理的に行います。そのため、トラフィックが VPC サブネットから出てインターネットへ向かうとき、返信アドレスフィールドは、インスタンスのプライベート IP アドレスではなくパブリック IPv4 アドレスまたは Elastic IP アドレスに設定されます。
やはりインターネットゲートウェイには NAT 機能があり、これが使われているような気がします。高速セットアップしたせいかもしれませんが、WorkSpaces インスタンスの詳細がコンソールから確認できないのですが…
上記の説明に合致する設定としては、WorkSpaces インスタンスのネットワークカードに「Elastic IP アドレス」が関連付けられている、と考えられます。
そして同じガイドページの図にある「Elastic IP アドレス」の例が、仮想マシンで実行した ipconfig の結果として出てきた、2つ目のネットワークカードと同じ 198. アドレスで始まっていますね。public / private サブネットは異なりますが。ほほぉ… 違ってました、もう一方のほうでした
VPC (EC2) 周りは AWS を理解するうえで最重要な気がするので、もう少し学んで、クリアにしていきたいと思いますー。
いろいろインストールしてみる
デスクトップエクスペリエンス無しの (しかも機能追加オプションに無い気がする…) Windows Server 環境ですので、登録アプリが少ない状態です。幾つかインストールしてみます。
CPU-Z
vCPU がどんな拡張命令をサポートしているか確認したくて CPU-Z を入れてみました。結果は以下のような感じ。
てかこれ、拡張命令のサポートだけでなく、コア数以外は家のメインマシンよりスペック良いですね… さすがはパフォーマンスバンドル!
なおデフォルトのままインストールすると、C ドライブに配置されるので、バックアップの対象外となります。バンドル変更とかで、アプリ消えちゃいそうですね。
afxw
X68000 の TF.x からの由緒正しき系譜(?)、2画面ファイラーの afxw をインストールします。何故か c: ドライブが見えないので、d:\Users 配下に作成された自分用のフォルダ内に、解凍したファイルを置いて起動します。
設定を変えてもエクスプローラーに出てこない謎の c: ドライブも、afxw からは普通にアクセス可能のようです。
nodist + node
node を直接インストールしても良いのですが、今回はバージョン管理ツール Nodist の最新版 (v0.9.1) をインストールします。
v11.13.0 の node コマンドが設定されたので、安定してそうな偶数バージョンの v12.16.3 に変更しておきます。
一応、バージョンを確認しておきましょう。
なおデフォルトのままインストールすると、nodist も node も C ドライブに配置され、バックアップの対象外となります。これもバンドル変更とかで、アプリ消えちゃいそうですね。
Visual Studio Code
開発者に人気のテキストエディタ Visual Studio Code もインストールします。オプションはお好みで
特に問題なくインストールできました。
拡張機能が豊富なので、テキストエディタと言うより、もはや総合開発環境な気がしますね。
パズルゲームとか
手元にあった DRM Free のパズルゲームをインストール (ユーザーディレクトリ配下に解凍して実行) してみました。激しいアクションとかは厳しいかも?ですが、これぐらいなら普通に遊べますねー。
Hyper-V はさすがに駄目
仮想環境なので無理っぽいとは思ったのですが、一応は試してみました。
と、入りそうな風なのですが、実行すると…
やはり駄目でした。まあ、そりゃそーですよねw
というわけで
Amazon WorkSpaces 上の Windows 仮想環境ですが、Office 365 がインストール出来た時点で、既に OA 環境としては必要十分な気もします。今回、自分が普段使うツールを幾つか導入してみましたが、特に大きな問題は無いようでした。
ただし Hyper-V が使えないので Docker が、WSL も機能リストに無くて、そしてストアが無いので Windows Terminal が無いのが個人的に寂しいかな。ただこれ、素直に Linux 仮想マシン使えばいいじゃん、コンテナは ECS/EKS 使えばいいじゃん、なんて気もしてきます。Windows に依存した、私自身の開発スタイルも観直さないとな、ということかも。
というわけで、まとまりのないメモになってしまいましたが、もしどなたかのお役に立つ情報が含まれていましたら嬉しいです。
【追記】その3 Tips も投稿してみました
それではまた!