iPod touch (第4世代)を家庭用のサーバーマシンにする。ついでに古いマシンと冗長構成にする。

大学院の時から使い続けているiPod touch 第2世代がそろそろ古くなってきたので
& きのうたまたまアキバでiPod touch 第4世代 64GBが13000円で売っていたので


購入。



こいつが2年以上サーバに使ってたほう。彼女との交際期間よりなg(ry
構築したときのメモは→ http://plog.web-hack.org/2011/02/ipod-touch-iphone-php.html

んで、こっちが新しいの。
カメラがついてたり。iOS 6だったり。

・・・。
ん、、iOS 6???

JailBreakできねーじゃん!!!!

しかたがないので、tethered jailbreakで我慢。

蛇足:
 ソフマップさん、頼むからiOS 5.1で初期化処理やってください。
 Jailbreakなんて例外にしても、マップがあれだと、価値が半減ですよ。
 そもそもiOS 6のっけると動作がモッサリしてるし。

で、

iPod touchをサーバにしていて、不安定になったりしてrebootかけた、ってことは
ここ2年以上一度もないわけだが、
だけども、やっぱりクラッシュしてしまうと(Just Bootをいちいち手元でやってあげないと)サーバとしての機能が果たせないということになるのは困る。

よって、古いiPod touchも残しつつ冗長構成をとることに。


ちなみに、うちはプライベートIPしか振ってくれないマンションゆえ、
OpenVPNとさくらVPSをつかって、ちょっと特殊なネットワーク構成にしていて、

 [web-hack.org]
   ↓
さくらVPS上の鯖 …192.168.123.1
↓  ↓  ↓  ↓
○  ○  ○  ○ …192.168.123.0/24

構築方法は→http://plog.web-hack.org/2011/11/vpsopenvpnipod-touchweb.html

こういうネットワーク構成を前提に説明をすすめます。
以降の作業は、さくらVPS上の鯖でのものです。(新旧iPod touch側は同じHTTPサーバを2つ用意するだけなので、省略)

apache2の下記のモジュールを有効化。
sudo a2enmod proxy
sudo a2enmod proxy_balancer
sudo a2enmod proxy_http

そんで、/etc/apache2/sites-available/defaultに
<VirtualHost *:80> 
ServerName web-hack.org

<Proxy balancer://web-hack/>
BalancerMember http://192.168.123.10/
BalancerMember http://192.168.123.18/
</Proxy>

ProxyPass / balancer://web-hack/
ProxyPassReverse / balancer://web-hack/
</VirtualHost>
って書く。
192.168.123.10が古いiPod touch
192.168.123.18が新しいiPod touch

これで、あとは
sudo /etc/init.d/apache2 restart
とやるだけで、簡易ロードバランサのできあがり。


なんか
balancer://web-hack/

balancer://web-hack
と書いてしまうと、よくわからない
[Mon Dec 24 23:33:21 2012] [warn] proxy: No protocol handler was valid for the URL /favicon.ico. If you are using a DSO version of mod_proxy, make sure the proxy submodules are included in the configuration using LoadModule.
みたいなエラーが出ます。けっこうはまりました。