openSUSE で作る Thin Client

最近の話題と言えば

「Windows XP のサポート切れからどうやって Windows 7/8 に入れ替えるか」

ということに尽きるわけですが、ここで一つのご提案です。Thin Client にしちゃいましょ。

ということで openSUSE を使ったシン・クライアント端末の作成方法です。

-想定-

ある過疎地の公立学校では 35 台の 5年前のPCが Windows XP で動いているとします。HDDは良く壊れるし、大体この規模のPC教室ではハードウェア、ソフトウェアのライセンス費用を考えるととてもじゃありませんが町の教育委員会から、予算なんて出そうもありません。メモリも僅か 512Mb バイトです。

また、この町の役場にも何台もの Windows XP 端末があり、HDDもよく故障するし、その保守費用も馬鹿にはなりません。

ということで、役場や図書館、町立の病院なんかではどうやって Windows XP を入れ替えるかが悩みの種です。

そこで 今、マザーボードとディスプレーだけはまだまだ元気な機材を USB や フラッシュSSDで起動できるシンクライアント化してしまおうというものです。

最低 openSUSE 12.x が動作すれば良い訳なので、USB メモリやフラッシュメモリの容量は 8G バイトもあれば十分です。別に古い Celeron や atom のマシンでも構いません。

ただしシンクライアントのためのホストサーバーは約 50~70台程度が動作するサーバーがほしいので4Way の 最新の XEON E5 サーバーとします。12コア24スレッド×4Way なので1台のサーバーで最大96スレッド(!)が動作します。これくらいの規模であれば、どうせ実稼動しているクライアントは平均 40 台程度と考えて、2~4 vcpu を与えても十分機能するでしょう。

(かな?自信ないな)

仮に最大60台のシンクライアントを動かすのであれば、 256Gb あれば1台あたり 2G のメモリが積めますので、 Windows 7 の 32 ビット版を使うことにしましょう。これだけあれば、一般的なオフィス製品やブラウザ程度であれば十分軽快に動作します。

あるいは Windows のターミナルサーバーを使うということも考えて見ましょう。

あまり詳しく Windows のライセンスは詳しく知らないので、皆様の突っ込みコメントお願いします。

1台あたり 50G バイトのC:ドライブが必要であると仮定して、3Tバイト以上の SAS ストレージを準備します。

-susestudio.com-

まず、susestudio.com にアクセスして、Live USB イメージを作ります。gnome か KDE の X 環境で rdesktop さえ動作すればよいわけですから、ここでは 32 bit 版で rdesktop と yast の Users & Group 作成のためのパッケージを追加し、シンクライアントのアプライアンスのベースとします。

openSUSE で作る Thin Client_a0056607_10385831.jpg


-openSUSE 12.3 の設定-

まず、各人のUSBメモリに、 suseStudio で作ったアプライアンスイメージを展開します。

openSUSE の Live CD をUSBメモリに作成する。

次に古い PC から HDD を取り外して USB 起動するようファームウェアを設定します。
USB またはフラッシュメモリから起動した openSUSE に root でログインして、yast の「ユーザとグループ」 から Guest でも構わないし、普段固定された環境で使うユーザ "TankTar" がいる場合は、そのユーザを作成して、適当なパスワードを設定しておきます。別にこのパスワードは厳密に管理しなくても構いません。yast のユーザ管理メニューから Advanced > ユーザの自動ログインと「パスワードを必要としない」をチェックします。

openSUSE で作る Thin Client_a0056607_10514291.jpg


作成したユーザのプロファイル /home/TanakTar/.profile に

rdesktop -f xx.xx.xx.xx

を記述します。
openSUSE で作る Thin Client_a0056607_10531984.jpg

xx.xx.xx.xx は接続する先の仮想ホスト、ターミナルサーバーや Windows 7 のシンクライアントホストの IP アドレス、または DNS 名です。

※ RedHat 系の場合は .bash_profile ファイルを書き換えるらしい。

PCはUSBかフラッシュメモリで32bit版 openSUSE を起動します。どうせ gnome と rdesktop が動くだけなので、 512Mb メモリの PC でも十分に起動できます。

起動したら /home/user_name/.profile に書かれた rdesktop を -f で Remote Desktop がフルスクリーン起動します。

仮想ホスト側では「切断」を許可しないポリシーで RDP プロトコルで接続できるように設定しておけば、エンドユーザ側端末は、作業が終われば「ログオフ」して、端末の電源を切るだけです。どうせフラッシュメモリはほとんど読み出しだけなので、電源をそのままオフにしても問題はHDDほど発生しないでしょう。

あるいは Reboot できるようにバッチファイルを用意しておけば Reboot のタイミングでセッションが切れるので、そこでシンクライアント側はログオフして電源が切れる状態になります。
openSUSE で作る Thin Client_a0056607_1172080.jpg


-いくつかの問題点-

rdesktop のパッケージは RDP セッションのバージョンが古いため、16ビットしか色が出ません。ちょっと寂しい画面かも知れません。

また、シンクライアント側のUSBなどの周辺機器の接続に都合が悪い(セキュリティ上逆に都合がいいとも言えますが)とことがあります。

また USB メモリで起動する場合、起動に時間がちょっとかかること、また BIOS の起動設定をいちいち変更しないといけないケースがあります。もっともHDDを抜いて PXE ブートも無効にしておけるようであれば、起動メディアはUSBメモリだけなので、その点は工夫が必要かも知れません。

あと、ここでは過疎地の町役場を想定してみましたが、役場の人達って、なぜか月末になると俄然ヤル気システムが起動して猛烈に働いて5時には終わるという人種です。この集中をどう避けるかがポイントかも知れません。

しかし、5時を過ぎるときっちり帰る人達なので、サーバーの仮想マシンイメージ3Tバイトは週末にたっぷり時間をかけてNASなどにバックアップをとっておけば良いということになります。

また過疎地の場合、通信環境が劣悪で、「100Mbps 光」どころかADSLさえ使えない地区」があります。その点も十分注意が必要でしょう。

また、同じ「役場」の人たちでも「現業」の方と「事務」の人たちは求めるスペックや働く時間帯が違います。例えば公立学校の先生とか、町立病院のお医者さんなどはいつも遅くまで働きますが、事務員の皆さんは8時出勤、5時からは絶対に残業しない、という明確なルールがあるようです。(学校向けのシステムではずいぶんやられました)

こうした現業職の皆さんには優先的に最新のワークステーションを配置すべきでしょう。

役場の中には「わが町の将来のために」一流の大学を出たのに安月給にもかかわらず本当に真剣に仕事をされる方もいらっしゃいます。私など全く頭が上がらない思いなのですが、彼らはUSBメモリだけを持たせて、役場>学校>病院>図書館と移動しながらUSBメモリで端末を起動すれば良い訳です。もしVPNが許されるなら、ご自宅や出張先で「USB起動に変える方法」さえ訓練して覚えておけば、どこでも仕事ができるわけです。たとえUSBメモリを紛失しても、起動だけのメモリなので、安全です。

また、Thin Cleint なので、 iPad や Android のタブレットにワイヤレスキーボードを繋げてしまえば、 Wifi で iPad 用の Remote Desktop アプリケーションが使えるので、ノートPCを職員に配布するくらいなら 激安 Android タブレットを使わせるというのも一つのアイディアですね。

また、マイクロソフトには Windows RT の在庫がたっぷりあるそうなので、格安にまとめて何十台と購入すれば喜んで格安にマケてくれるかもしれません。


islandcenter.jp
by islandcenter | 2013-09-24 07:06 | SUSE | Comments(0)