シンクライアントシステムのSKYDIV Desktop Client(以降、SKYDIVと記述します)は、「VDI方式」「SBC(RDS)方式」「仮想ブラウザ方式(Linux)」の3つの仮想化方式に対応しています。
この記事では、仮想ブラウザ方式(Linux)について、どのような技術要素で成り立っているのかを説明します。
仮想ブラウザ(Linux)とは
SKYDIVの仮想ブラウザ(Linux)は、Linuxサーバーで動作するブラウザの画面のみを手元の端末に転送する仕組みのことを指します。ブラウザは、Google ChromeとMicrosoft Edgeに対応しています。「SBC(RDS)方式」のRemoteAppを使った公開アプリケーションに近い使用感となります。
次の画像は、転送されたブラウザの画面(Google Chrome)を手元の端末で表示したイメージです。
システム構成
SKYDIVの仮想ブラウザ(Linux)のシステム構成について簡単に説明します。
※1 ランチャーの端末がドメインに参加するかは任意です。
仮想ブラウザを利用するユーザーの認証や、この後説明するコンテナを登録するディレクトリシステムを利用するため、Active Directoryは必須となっています。
ランチャーは、センターサーバー/SQL Serverにアクセスし、接続先の仮想ブラウザを割り当ててもらいます(①)。割り当てるときに、既に使用している仮想ブラウザがあるのか、新たに割り当てる必要があるかを判断して割り当てます。
センターサーバーからリモート接続サーバー(Linux)に仮想ブラウザの起動を依頼します(②)。
ランチャーから接続先の仮想ブラウザにRDP(Remote Desktop Protocol)でリモート接続してブラウザの画面のみ転送されます(③)。
ランチャー、センターサーバー/SQL Server、Active Directoryなどの構成は、「VDI方式」「SBC(RDS)方式」と変わりません。
仮想ブラウザ(Linux)の根幹部分となる上記図の★の部分について詳細を説明します。
※具体的な動作環境については、弊社の動作環境仕様も参照してください。
コンテナについて
仮想ブラウザ(Linux)では、仮想化方式としてコンテナを使用しています。コンテナの特徴は、OSはホストOSを共有して利用し、アプリケーションだけ分離することができます。似た方式にVDIがありますが、VDIでは仮想マシンごとにOSも分離されます。
使用するアプリケーションがブラウザに限定されており「VDI方式」「SBC(RDS)方式」のように自由度もないことから、アプリケーションを分離してパッケージングしやすくLinuxでは一般的に利用されているDockerエンジン(※1) を使用したコンテナを採用しました。
仮想ブラウザ(Linux)方式のイメージ
VDI方式のイメージ
仮想化方式の詳細については、弊社ホームページも参照してください。
※1 Docker Community Editionを利用しています。
まとめ
SKYDIVの「仮想ブラウザ方式(Linux)」で使用している技術要素について説明しました。
SKYDIV内部では、コンテナ仮想化の技術を使用しており、「VDI方式」「SBC(RDS)方式」と異なる技術で成り立っています。
しかし、ユーザーの使用感は最初にも記載しましたが、「SBC(RDS)方式」のRemoteAppを使った公開アプリケーションと同じ使用感になるように独自の工夫がいくつもあります。
また、LinuxではDockerなどオープンソースを活用しておりますが、制御プログラムは弊社独自で開発しています。
今までWindowsで動作するアプリケーションやサービスプログラムを開発することが多くを占めていましたが、Linux版を開発するにあたって、Windowsとの違いなど新しく学ぶ部分が多くありました。
今後の記事ではその部分をご紹介できればと思いますので、楽しみにしてください。