BFT名古屋 TECH BLOG

日々の業務で得た知識を所属するエンジニアたちがアウトプットしていきます。

【Citrix】初めての人のためのCitrix概要

はじめまして!
BFT名古屋支店 亀井(仮名)です!
本日より、いろいろな技術に触れる中で気づいた点、悩んだ点などについて記事を書いていきたいと思います。

はじめに

初めて触れる技術って、概要を理解するだけでも難しかったりすることってありませんか?
私は毎回そうなのですが、でもちょっと理解できると楽しくなってきたりするんですよね。
さて今回はCitrixの概要として、
 「そもそもCitrixって何ができるの?」
 「登場人物が多いけど、それぞれ何をしているの?」
この2点を中心に記載していきます。
初めてCitrixを触る方が少しでも概要を掴めたらいいなと思っております!
それではよろしくお願いします。


Citrixって何ができるの?

Citrixとは、デスクトップやアプリケーションなどのリソースを仮想化して1つに集約し、個別の端末からの利用を可能としたシステムです。
この機能をVirtual Apps and Desktopsといいます。
(厳密にはCitrixには他にもいろいろな機能があるのですが、今回はこのVirtual Apps and Desktopsに絞って見ていこうと思います)

例えば、オススメのランチを教えてくれるアプリケーションがあるとしましょう。
このアプリは自宅にあるPCにインストールされているので、自宅PCにログインしなければ利用することはできません。

これでは外出先でランチの情報を得ることができません。

しかし、Citrixを利用することで自宅PCでなくとも、外出先のPCからもアプリケーションを利用することができるようになります。


これで外出先でもおいしいランチを見つけられますね。

さらに別のPCに入っているお得なクーポンアプリも登録しておけば、先ほどと同じPCで同様に利用することができます。

この機能を利用すると、使っている側からはまるで自分の端末でそのアプリが動作しているように見えますが、実際に処理を行っているのは元のアプリが入っている端末となります。
またアプリケーションだけでなく、デスクトップ自体を利用することもできます。

Citrixを利用する利点は、上記の例のようにそれぞれ別の端末にインストールされた複数のアプリケーションであっても、場所にとらわれずに1つの端末で利用できる点があります。
また、データの保存をリソース側にしかできないような設定が可能なため、万が一端末を紛失しても情報漏洩のリスクを抑えることができます。


Citrixの登場人物と役割

Citrixを利用するためには主に以下のコンポーネントが必要となります。

結構いろいろあります。
コンポーネントの構成例は以下の通りです。


それでは、それぞれの役割について簡単に確認してみましょう。

Storefront

Storefrontの役割は、クライアントからアクセス情報を受け取った際に管理サーバー(DeliveryController)と通信を行い、そのユーザーが利用可能なデスクトップやアプリケーションの情報を返すことです。

Storefrontは、大まかに以下の流れで仕事をしています。

  1. ユーザーからログイン情報を受け取りADに認証処理を行う
  2. 認証成功の場合DeliveryControllerにユーザーが利用可能なデスクトップやアプリケーションの情報を問い合わせる

例えるなら、ビルの受付のお姉さんです。
来館したお客様はまずは受付に来ますよね。
そこで名前を伺って、使える施設を案内してあげるようなイメージです。

DeliveryController

DeliveryControllerは、大まかに以下の流れで仕事をしています。

  1. Storefrontから情報を受け取る
  2. 受け取った情報を元にActive Directoryと照らし合わせ、資格情報を確認する
  3. License Serverと連携し、ライセンス情報を確認する
  4. 照らし合わせた情報を元に、ユーザーが利用できるデスクトップやアプリケーションの情報をStorefrontに返す
  5. ログインしたユーザーの情報をSQL Serverに書き込む

先ほどのビルの例えで言うならば、まず受付から「〇〇さんが来客しましたよ」という連絡を受けます。
このお客様の情報を調べて受付に「〇〇さんは3階と6階の施設が使えるよ!」と返してあげます。

License Server

License Serverは、各ユーザーのライセンス情報を管理しています。
DeliveryControllerから受け取ったユーザーの情報を元に該当するライセンス情報を返します。

Citrix VDA

Citrix VDAは接続先となるデスクトップやアプリケーションが入った端末側に導入するコンポーネントとなります。
Citrix VDAを導入することで、端末に入ったリソースをクライアント側でも利用できるようになります。

これを例えるなら、デスクトップやアプリケーションは実際に利用する施設に、端末は施設のあるフロアに、VDAはそのフロアに入るための入り口に当たります。
先ほど受付で「3階と6階が使えるよ!」と言われたお客様は、この入り口を通してフロアに入り、施設を利用することができるわけです。

Citrix WorkspaceApp

Citrix WorkspaceAppは、クライアント側の端末に導入するコンポーネントとなります。
Storefrontにログイン情報を送信し、認証が通るとVDA側と直接通信を行います。

これはお客様が持っている会員証、あるいは入館証といったところでしょう。

Citrix Gateway

Citrix Gatewayは、インターネットを通して外部から利用する場合などに認証を行う場所となります。

ビルに入る前の警備員のような立ち位置です。
ここで入館チェックを受けて初めて受付にたどり着きます。

Active Directory

Active Directoryはユーザーの情報を管理する機能です。
Citrixの機能ではなく、Windows Serverによって提供されている機能となります。

SQL Server

SQL Serverは各種情報を保管しておく場所です。
ログインしたユーザーの情報や、設定した値などを保存しておきます。


終わりに

今回はCitrixの概要についてまとめましたがいかがだったでしょうか。
実際にCitrixを触ってみると、もっといろいろ細かい設定も可能で使いこなせればとても便利な仕組みですが、その分構築時には詰まることも多々ありました。
今後はそういったことも記事にしていければと思います!

それでは、また!