PS3クラスタのセットアップ
2008年度のコンピュータアーキテクチャ特論で使用したPS3クラスタ構築時のログです.
by 443先生
コンソールサーバのセットアップ †
インストール †
- 通常のPCにFedora7(i386)をインストール
- セットアップするサービスは「オフィスとプロダクティビティ」のチェックを外す(全部未チェック)
- Firewallを有効「信頼できるサービス」には「ssh」のみチェック
- SELinuxは「無効」
- [root password]は「適当なもの」を付ける
- 「testuser」を作成する([testuser password]は適当なものを付ける)
- とりあえずeth0をnotenetに接続
- testuserでログイン
- /sbin/ifconfigでIPを確認しておく(例: 192.168.1.131)
- 外部からSSHで入れることを確認
@canopus
[testuser@mobile4 ~]$ ssh testuser@192.168.1.131
[testuser password]
[testuser@mobile4 ~]$
- アップデートする
@192.168.1.131
$ su
[root password]
# yum update
y y
GPGキーもゲットする
- 終わったらリブート
reboot
各種設定 †
- グラフィカルログインの禁止
- /etc/initabに追記
@192.168.1.131
$ su
# vi /etc/inittab
# id:5:initdefault:
id:3:initdefault:
- rootのLANGを「C」にしちゃう(末尾に追加)
vi /etc/bashrc
export LANG=C
- 再起動
reboot
いろいろツールをインストール †
yumで入るツール郡 †
yum install yum-fastestmirror
yum install zsh
yum install yumex yum-utils gconf-editor hwbrowser
yum install emacs* anthy-el
yum install migemo-emacs
yum install gparted kdebase kdeartwork kdegraphics kdemultimedia
yum install tomoe scim-tomoe
yum install gcc* compat-gcc* compat-lib*
yum install fftw fftw2 lapack blas units octave atlas
yum install gnuplot grace plplot xfig inkscape maxima* TeXmacs
yum install mplayer* vlc gstreamer* xmms xmms-mp3 amarok
yum install ffmpeg mozplugger xscreensaver* cabextract p7zip p7zip-plugins
yum install thunderbird gnubiff gnomebaker k3b
yum search w3m w3m-el w3m-img w3m-el-common w3m-el-xemacs
// yum --enablerepo=flash install flash-plugin
CellSDK3.0のインストール †
CellSDK3.0.0.1 †
- 以下のファイルをここでゲット
- CellSDK-Devel-Fedora_3.0.0.1.0.iso
- cell-install-3.0.0-1.0.noarch.rpm
- CellSDK-Extras-Fedora_3.0.0.1.0.iso (optional)
- yumのデーモンを止める
/etc/init.d/yum-updatesd stop
- SDKインストールに要するツールのインストール
yum install rsync sed tcl wget
- isoイメージをテンポラリにコピー
mkdir /tmp/cellsdkiso
mv *.iso /tmp/cellsdkiso
- SDKインストーラのインストール
rpm -ivh cell-install-3.0.0-1.0.noarch.rpm
- SDKのインストール
export LANG=C
cd /opt/cell
./cellsdk --iso /tmp/cellsdkiso install
yes
1
y
[インストールが行われる
- /etc/yum.confに以下を追加
exclude=blas* kernel* numactl* oprofile
- yumのデーモンの再起動
/etc/init.d/yum-updatesd start
3.1. CellSDK3.0.0.3 †
- SDK3.0.0.3のみのインストールは不可。SDK3.0.0.1からのアップデートしかできない。
- BSCのサイト(アップデートファイルはここ)
- Fixsters(インストール方法)
Cellプログラムのテスト †
- 複数のSPEによるHello, World!
- Fixstersのサイトにサンプルがおいてあります。いろいろ試すと良いと思う。
LDAPの設定 †
- インストール
yum install openldap*
- ICS-wikiを参考に設定
IPの変更(hlab-69netへの参加) †
- h_superuserの部屋を参考にhlabにホストを追加
- joker(131.113.69.180)を新規登録
- ホスト名を設定
@joker
# vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=joker
- ネットワークカード(外向き:eht0)の設定
# vi /etc/sysconfig/networking/devices/ifcfg-eth0
# Intel Corporation 82573L Gigabit Ethernet Controller
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:1C:C0:2B:BB:83
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=131.113.69.180
GATEWAY=131.113.69.24
TYPE=Ethernet
USERCTL=no
IPV6INIT=no
PEERDNS=yes
- サービスの再起動
/sbin/service network restart
natの構築 †
- IP転送の有効化
@joker
vi /etc/sysctl.confを編集(0を1にする)
# Controls IP packet forwarding
net.ipv4.ip_forward = 1
/etc/init.d/network restart
- /usr/local/fw.shの作成
iptableでファイアウォールを作成し,NAT機能を持たせる
@joker
cd /usr/local/bin/
touch fw.sh
chmod 700 fw.sh
vi fw.sh
#!/bin/sh
IPTABLES="/sbin/iptables"
# ルールをクリア
$IPTABLES -F
$IPTABLES -t nat -F
###################################################
# ポリシーの設定
# INPUT:入ってくるパケット
# FORWARD:転送パケット
# OUTPUT:出て行くパケット
##################################################
# 原則破棄
$IPTABLES -P INPUT DROP
# 原則許可
$IPTABLES -P FORWARD ACCEPT
$IPTABLES -P OUTPUT ACCEPT
####################################################
# INPUT
# サーバ機に入ってくるパケットに対するチェイン
####################################################
# icmpを許可
$IPTABLES -A INPUT -p icmp -j ACCEPT
# SSHのアクセスを許可
$IPTABLES -A INPUT -p tcp --dport 22 -j ACCEPT
# 自端末からのアクセスを許可
$IPTABLES -A INPUT -i lo -j ACCEPT
# LAN内の他端末からのアクセスを許可
$IPTABLES -A INPUT -i eth1 -s 192.168.1.0/24 -j ACCEPT
#接続が確立したパケットの応答は許可
$IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
####################################################################
# FORWARD
# サーバ機を経由するパケット
####################################################################
# 宛先ポート135,137〜139,445のパケットを破棄
$IPTABLES -A FORWARD -p tcp --dport 135 -j DROP
$IPTABLES -A FORWARD -p udp --dport 135 -j DROP
$IPTABLES -A FORWARD -p tcp --dport 137:139 -j DROP
$IPTABLES -A FORWARD -p udp --dport 137:139 -j DROP
$IPTABLES -A FORWARD -p tcp --dport 445 -j DROP
$IPTABLES -A FORWARD -p udp --dport 445 -j DROP
# パスMTU問題対策
$IPTABLES -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
##########################################################################
# LANから外に出て行くパケットの送信元IPを書き換える
##########################################################################
$IPTABLES -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
#######################################################################
# OUTPUT
# サーバ機で生成されたパケットに対するチェイン
#######################################################################
# 宛先ポート135,137〜139,445のパケットを破棄
$IPTABLES -A OUTPUT -o eth0 -p tcp --dport 135 -j DROP
$IPTABLES -A OUTPUT -o eth0 -p udp --dport 135 -j DROP
$IPTABLES -A OUTPUT -o eth0 -p tcp --dport 137:139 -j DROP
$IPTABLES -A OUTPUT -o eth0 -p udp --dport 137:139 -j DROP
$IPTABLES -A OUTPUT -o eth0 -p tcp --dport 445 -j DROP
$IPTABLES -A OUTPUT -o eth0 -p udp --dport 445 -j DROP
- 起動時に実行するようにする(rc.localに以下を追加)
vi /etc/rc.local
/usr/local/bin/fw.sh
ネームサーバ †
- /etc/hostsの編集
cp /etc/hosts /etc/hosts.bak
vi /etc/hosts
# Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
192.168.1.1 joker
- bindのインストール
@joker
yum -y install bind bind-chroot caching-nameserver
- BINDの設定ファイルをコピー
cp /var/named/chroot/etc/named.caching-nameserver.conf/var/named/chroot/etc/named.conf
- 設定の編集
@joker
vi /var/named/chroot/etc/named.conf
options {
# listen-on port 53 { 127.0.0.1; };
# listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; localnets;};
forwarders{
192.168.1.1;
131.113.69.24; # galaxy
};
recursion yes;
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
view localhost-resolver {
match-clients { localhost; };
match-destinations { localhost; };
recursion yes;
include "/etc/named.rfc1912.zones";
include "/etc/named.trump.zone";
};
view "internal" {
match-clients { localnets; };
match-destinations { localnets; };
recursion yes;
include "/etc/named.root.hints";
include "/etc/named.trump.zone";
};
vi /var/named/chroot/etc/named.root.hints
zone "." IN {
type hint;
file "named.ca";
};
vi /var/named/chroot/etc/named.trump.zone
zone "trump" {
type master;
file "trump.db";
};
zone "1.168.192.in-addr.arpa" {
type master;
file "1.168.192.in-addr.arpa.db";
};
- named.caの更新
dig . ns @198.41.0.4 > /var/named/chroot/var/named/named.ca
- 正引きゾーンデータベース
vi /var/named/chroot/var/named/fedorasrv.com.db
$TTL 86400
@ IN SOA trump. root.trump.(
2008061501 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS trump.
IN MX 10 trump.
@ IN A 192.168.1.1
* IN A 192.168.1.1
- 逆引きゾーンデータベース作成
vi /var/named/chroot/var/named/1.168.192.in-addr.arpa.db
$TTL 86400
@ IN SOA trump. root.trump.(
2004031901 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS trump.
1 IN PTR trump.
まだできてない('A`)
PS3 †
Fedora 7を入れる.
fixstarsのページを参考
インストール †
- PS3のシステムアップデートを行う(ver2.35)
- 「アドオンCD」を使ってブートローダーをインストールする
設定>システムアップデート
確認画面がいろいろ出るが,全て「はい」
自動的に再起動する
設定>本体設定>フォーマットユーティリティー
カスタム → PS3に10GB
自動的に再起動する
設定>本体設定>他のシステムのインストール
確認画面がいろいろ出るが,全て「はい」
設定>優先起動システム>他のOS
Fedora7-ppcのインストールDVDを挿入してから「はい」を選択
- Fedora7-ppcのインストール
kboot: linux video=720p
各種セットアップ †
/etc/hosts †
# scp root@192.168.1.1:/etc/hosts /etc
LDAP †
# cd /etc/openldap/cacerts/
# scp root@joker:/etc/openldap/cacerts/cacert.pem .
# export LANG=C
# authconfig-tui
LDAP関連のところにチェックを入れ, "Local authorization is sufficient" を消す
[TLSを使用] にチェック
サーバに [ldap://joker]
DNに[dc=cell]を入力して[OK]
# /etc/init.d/nscd start
# chkconfig nscd on
autofs †
# scp spade:/etc/auto.* /etc/
特にauto.homeは変更しているのでメモ.
home -fstype=nfs 192.168.1.1:/home
# /etc/init.d/autofs restart
# chkconfig autofs on
# mv /home /home.bak
# ln -s /export/home /home
- su username などして自分のホームに行けるかどうか確認
rsh関連 †
# yum install rsh
# yum install rsh-server
PS3のマシンならば
# vi /etc/hosts.equiv
+192.168.1.1
でOK
# vi /etc/xinetd.d/{rsh,rlogin}
disable を no にする
- rootで接続できるttyにrshとrloginを追加するよう /etc/securettyを編集
# vi /etc/securetty
rsh
rlogin
を追加
# vi /etc/pam.d/rlogin
auth sufficient pam_rhosts_auth.so
を1行目に持ってくる
# /etc/init.d/xinetd start
# chkconfig xinetd on
# /etc/init.d/iptables stop
# chkconfig iptables off
# hostname spade