みなさまこんばんは、箕面市役所の那谷です。
LTSPシステムを構築する際には、「1台のLTSPサーバに何台のシンクライアント端末を設置するか」に悩むところです。
サーバーの処理能力にもよるでしょうが、経験・感覚的には、端末10台ぐらいが、快適に使える目安かな、と感じています。
我々のところでは、20台ぐらいぶら下がっているところもあるのですが、それでは端末を一斉に使うと、さすがに動作がもたついてしまいます。
ところがそのような、端末がたくさん接続して反応が悪くなるような状況でも、LTSPサーバのシステムモニターを見ると、CPUやメモリは振り切っているわけではなかったりして、どうも、ボトルネックはネットワークなのではないか、と常々考えていました。
そこで、LTSPサーバに3枚目・4枚目のLANカードを増設してそのLANカードでもLTSPを動かすことで、シンクライアント端末側のネットワークをいくつかに分割したらパフォーマンスが向上しないものか、テストをしようと思っています。
その準備として、テスト環境で動作確認してみましたので、今日のエントリはその備忘録です。
なお、本件は、
http://jwalanta.blogspot.com/2010/12/load-balancing-ltsp-clients-using.html
を参考にして着想し、Ubuntu Japanese Team の吉田さんにいろいろご助言をいただきました。
いつもありがとうございます。
●【写真1】システム全容
3台のパソコンのうち、真ん中がLTSPサーバで、両脇がシンクライアント端末として起動しています。
ポイントは、左側はPCカードタイプのLANカード、右側はUSBタイプのLANカードにより、それぞれ独立したHUBにおいてLTSPが動作している、というところです。
左右の端末同士自体は、ネットワーク的には直接はつながっていないわけです。![]()
●【写真2】左側:PCカードタイプのLANカードでLTSP動作。![]()
●【写真3】右側:USBタイプのLANカードでLTSP動作。![]()
概要としてはそんな感じです、では環境構築のご説明です。
前半でLTSPサーバを構築し、後半でLANカード増設に対する設定をします。
●前半(Ubuntu10.04LTSで構築しています。)
1.まず普通に eth0 をブロードバンドルーターに接続し、システムをインストールし、アップデートなども済ませます。
2.「 ltsp-sever-standalone」をインストールします。
3.「 sudo ltsp-build-client 」して、シンクライアント配布用の環境イメージを作成します。
4.「 /opt/ltsp/i386 」へ移動して、日本語環境を適用します。
前半はここまでです。
![]()
●後半(「 bridge-utils 」をインストールして、LANカードを増設して設定します。)
「 bridge-utils 」については、以下などをご参考に。
http://www.linuxfoundation.org/collaborate/workgroups/networking/bridge
ソフトウェア的にLANカード(eth0 などに対して、「br0」などと指定します。)を作って、それに実際のハードウェアなLANカードを結びつける、というようなことをしてくれるようです。
1.「 bridge-utils 」をインストールします。
![]()
2.PCカードタイプやUSBタイプのLANカードを適宜増設します。
3.「 /etc/network/interfaces 」に、設定を書きます。
オンボードのeth0 はひきつづきインターネット接続としてブロードバンドルータに接続し、増設した eth1 と eth2 でLTSPを動かす、という想定です。
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
iface eth1 inet manual
iface eth2 inet manual
auto br0
iface br0 inet static
address 192.168.0.1
netmask 255.255.255.0
bridge_ports eth1 eth2![]()
4.「 /etc/default/dhcp3-server 」で、dhcp を「 br0 」のみで動かすように設定します。![]()
5.「 /etc/init/bridge-network-interface.conf 」の最後に、
post-start script
service dhcp3-server restart
end script
と追記します。
前項まででいいかと思ったら、dhcp3-server の自動起動に失敗していました。
起動順として、ブリッジが構成される前にdhcp3-server を起動しようとして、失敗しているようです。
そこで、ブリッジを構成するスクリプトが実行された後に、改めてdhcp3-server を再起動してあげます。![]()
6.IPアドレスを指定(変更)しましたので、LTSPまわりをアップデートします。
$ sudo ltsp-update-sshkeys
$ sudo ltsp-update-image
いかがでしょうか?
これで、実際にeth1、eth2 それぞれに10台ずつ、計20台ぐらいのシンクライアント端末を接続したらどうなるのか、というのを、近日検証してみたいと考えています。
続報をお楽しみに。
●追記:
これまで特に明記しておりませんでしたが、このブログの内容(本文・画像)は、すべて「 CC BY−SA 」です。










