■Scientific Linux 5.6でSNSサーバを構築するメモ
 CentOS5系で運用中のSNSサーバをScientific Linux5系に移行するため、試験環境としてDell D520にインストールを行った時のメモ。ここからはSNS等アプリケーション導入前までの構築メモ。OS自体は前記事を参照。

 D520にScientific Linux 5.6をインストールしたメモ
 http://blog.isnext.net/issy/archives/1281

■高機能メールサーバCommuniGate Proをインストール
 phpアプリで必要なケースが多いのでpostfixを活かしたままCGPを有効にする
・postfix側の設定変更
 # vi /etc/postfix/master.cf
  smtp inet n – n – – smtpd
   ↓
  #smtp inet n – n – – smtpd
 # vi /etc/postfix/main.cf
  mydestination = $myhostname, localhost.$mydomain, localhost
   ↓
  mydestination = localhost
  追記
  relayhost = 自IPアドレス
  myhostname = po.ホストネーム セルフループ回避呪文
・postfixを再起動
 # service postfix restart
・postfixがsmtpをLISTENしてないことを確認
 # lsof -i

・CommuniGate Proの最新版をインストール
 (商用だがCommunityライセンス下で5ユーザまで無料で利用可能)
 # wget http://www.communigate.com/pub/CommuniGatePro/CGatePro-Linux.x86_64.rpm
 # rpm -ivh CGatePro-Linux.x86_64.rpm
 # service CommuniGate start
・CGPの管理画面にアクセスするためにiptableでポート追加
 # vi /etc/sysconfig/iptables
  -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 8010 -j ACCEPT 追記
 # service iptables restart
・ブラウザでhttp://サーバIPアドレス:8010/へアクセスして設定
 postmasterのパスワード設定
 Basic認証が表示されるのでID:postmasterと設定したパスワードでログイン
  japanese japanese(ISO) (+0900)japan/Korea expert で設定

■日本語全文検索対応mysql/Tritonnインストール
・標準導入のMySQLを削除する
 # yum remove mysql
・perl-DBIのインストールを確認(あればOK)
 # rpm -qa | grep -i perl-DBI
・最新のtritonnパッケージ群をダウンロード
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/MySQL-client-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/MySQL-devel-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/MySQL-server-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/MySQL-shared-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/mecab-0.98-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/mecab-ipadic-2.7.0.20070801-tritonn.1.0.12a.x86_64.rpm
 # wget http://iij.dl.sourceforge.jp/tritonn/44614/senna-1.1.4-tritonn.1.0.12a.x86_64.rpm
・以下の順番でインストール
 # rpm -ivh mecab-0.98-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh mecab-ipadic-2.7.0.20070801-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh senna-1.1.4-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh MySQL-shared-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh MySQL-client-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh MySQL-server-5.0.87-tritonn.1.0.12a.x86_64.rpm
 # rpm -ivh MySQL-devel-5.0.87-tritonn.1.0.12a.x86_64.rpm
・MySQLのパスワード設定を行う
 # /usr/bin/mysqladmin -u root password ‘rootpassword’
・ログインして動作確認
 # mysql -u root -p
・設定ファイルを適当に選んで配置する
 # cp /usr/share/mysql/my-large.cnf /etc/my.cnf
・utf8で使いたい場合には以下の行を各項目で追記
 # vi /etc/my.cnf
  [mysqld]
  default-character-set = utf8
  [mysqldump]
  default-character-set = utf8
  [mysql]
  default-character-set = utf8
・設定を反映させる(mysqldでないことに注意)
 # service mysql restart
・設定変更を確認
 # mysql -u root -p
  mysql> status
  …
  Server characterset: utf8
  Db characterset: utf8
  Client characterset: utf8
  Conn. characterset: utf8
  …

■MyNETS(SNSサーバアプリ)の導入準備をする
・MyNETSに必要なコンポーネントをインストール
 # yum install php-mcrypt php-mbstring php-gd php-mysql php-xmlrpc php-xml php-eaccelerator ImageMagick
・ImageMagickの強制アップデートをする
 SL5.6のImageMagickにもCentOSと同じ問題があるので最新版で入替えする
 # wget http://www.imagemagick.org/download/linux/CentOS/x86_64/ImageMagick-6.7.1-3.x86_64.rpm
 # rpm -Uvh –force ImageMagick-6.7.1-3.x86_64.rpm

■監視系に必要なアプリを導入する
・sysstatをインストール
 # yum install sysstat
・lm_sensorsをインストール
 # yum install lm_sensors
 # sensors-detect で設定
 # sensors で動作確認
・muninをインストール
 # yum install munin munin-node
 # munin-node-configure で設定確認
・apacheの監視を有効にする
 # vi /etc/httpd/conf/httpd.conf
  #ExtendedStatus On
   ↓
  ExtendedStatus On

  #<Location /server-status>
  # SetHandler server-status
  # Order deny,allow
  # Deny from all
  # Allow from .example.com
  #</Location>
   ↓
  <Location /server-status>
   SetHandler server-status
   Order deny,allow
   Deny from all
   Allow from 127.0.0.1
  </Location>
・muninを再設定する
 # munin-node-configure -suggest で設定可能な内容を確認
 # munin-node-configure -shell | sh で設定
 # munin-node-configure 設定を確認
 # service munin-node start 監視を開始

※MySQLに関するmunin監視設定は以下を参照

 muninで複数mysqldを監視する設定メモ
 http://blog.isnext.net/issy/archives/957

■SNSアプリケーションの導入
 以下のURLの「8)SNSサーバとしての設定」を参照

 カスタム版MyNETSとCentOS5で1万人規模のSNSを構築する
 http://blog.isnext.net/issy/archives/384

, , , , , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■D520にScientific Linux 5.6をインストールしたメモ
 CentOS5系からScientific Linux5系に移行するため、Dell D520にインストールを行った時のメモ。D520には4Gの物理メモリが搭載可能だがファームウェアの制限で4Gフルに利用することができない。ファームウェアがA04だったため最新のA08に入れ替えても同様だった(ファームウェアアップデートにはWindows OSが必要になるので注意)。ファームウェアで認識してくれないため、x86_64版のScientific Linuxをインストールしても最大メモリは約3.3Gとなる。HDDは日立製HTS723232A7A364。とても静かでシーク音もほとんど聴こえないくらい。D520のアイドル時の消費電力は18-32W程度。平均して26Wくらいか。ある程度稼働している状況で55Wくらい。

■ファームウェアの設定
 F2キーで設定画面。シリアル・パラレル・1394・PCカードなど使わないオンボードデバイスは全てオフ。サーバとして利用するのでディスプレイの輝度も最小に設定。HDDはperformance設定。

■インストール設定覚書
・パーテーション
 /boot 101M
 / 299872M
 swap 5248M
・ネットワーク
 IPv4は固定設定
 IPv6はDisableに
・インストールコンフィグ
 Serverのみチェック 
 今すぐカスタマイズ
・カスタマイズ内容
 SL Addon
  以下の2つをチェック
  FUSE
  Yum Utility
   yum-conf-epel yum-fastestmirrorのみチェック
 アプリケーション
  エディタとテキストベースのインターネットのみ
 サーバ
  以下の3つだけにして更に一部修正する
  MySQLデータベース mysql-python外す
  Webサーバ httpd-manual mod-perl mod-python php-ldap squid tux webalizer外す
        php-mysql付ける
  メールサーバ postfixとcyrus-sasl sendmailのみ
 ベースシステム
  java ダイアルアップネットワークサポートの2つ外す
・Firewall Configration
 SELinuxをDisable
 カスタマイズで HTTP/HTTPS/SMTPを追加
・System Services
 以下のものだけチェック
  cpuspeed
  crond
  dnsmasq
  httpd
  iptables
  irqbalance
  microcode_ctl
  network
  sendmail(最初はpostfixリストされない)
  smartd
  readahead_early
  sshd
  syslog
・再起動しておく

■再起動後基本設定
・まずはアップデート
 # yum update
・sshdとiptablesの設定変更
 # vi /etc/ssh/sshd_config
  #Port 22 を Port 10022 に変更
 # vi /etc/sysconfig/iptables
  -A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 10022 -j ACCEPT 追加
 # service sshd restart
 # service iptables restart
・sendmailからpostfixに変更
 # yum remove sendmail
 # ntsysv でpostfixにチェックがついているか確認

■パフォーマンス設定
・noatime設定の追加
 # vi /etc/fstab
  LABEL=/ / ext3 defaults,noatime 1 1 noatimeを追記
 # mount -o remount / で再マウント
 # mount でnoatimeが有効になっているか確認
  /dev/sda on / type ext3 (rw,noatime)
・I/Oスケジューラを変更
 # vi /etc/rc.d/rc.local
  echo deadline> /sys/block/sda/queue/scheduler 追記
 # cat /sys/block/sda/queue/scheduler で確認
  noop anticipatory [deadline] cfq
・利用可能な内部通信socketを増やす
 # vi /etc/rc.d/rc.local
  echo 16384 65535 > /proc/sys/net/ipv4/ip_local_port_range 追記
 # cat /proc/sys/net/ipv4/ip_local_port_range で確認
  16384 65535
・プロセススワップを抑制
 # vi /etc/sysctl.conf
  vm.swappiness = 0 追記
・1プロセスが同時に開けるファイル数を増やす
 # vi /etc/security/limits.conf
  root soft nofile 25600
  root hard nofile 25600
  mysql soft nofile 12800
  mysql hard nofile 12800
  apache soft nofile 12800
  apache hard nofile 12800 追記
・再起動して設定が有効なことを確認

ここからはSNS用サーバ設定を追加していく予定。
長文になるため別記事にする。

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...

■SNS用超低消費電力高C/Pサーバの構築
 夏に向けて節電も兼ねて超低消費電力且つ高C/Pのサーバを構築する。停電対策として現在の環境にはUPSを導入してはいるものの、消費する電力は少ないに越したことはない(UPSで稼働可能な時間も延長できる)ので、コンパクトで静音という条件も加えて検討した。最終的に以下の構成でFix。

■構成パーツ
ケース
 岡谷 MX1203-BK Mini-ITX 200W SFX電源付き ¥5,980
CPU
 Intel Core i5 i5-2500 BOX ¥17,480
CPUクーラー
 サイズ 薄型CPUクーラー KOZUTI ¥3,000
マザー
 ASRock H67M-ITX ¥8,898
SFX電源
 SilverStone SST-ST45SF 80PLUS Bronze対応 ¥7,880
メモリー
  CFD Elixir DDR3 SDRAM PC3-10600 4Gx2 ¥6,436(合計8G)
HDD
 Hitachi Z7K-320 ¥4,270(2.5インチ 7mm 320G)
SSD
 Micron C300 MTFDDAC064MAG-1G1 ¥8,980(2.5インチ 64G)
VGA
 オンボード
HDD4台用5インチベイラック
 CVS CV-EB6400-BK ¥4,980
SATA 20cmケーブル
 Owltech OWL-CBSATA-SS20(SL) ¥720×4

合計金額 70,744円

■組立上で気にした(なった)こと
・MX1203-BKに追加されたサイドファンは低速ではとても静か
・H67M-ITXのファンコントロール機能で調整可能なので便利
・むしろ電源の方がMX1202-BKよりも煩い(ロットによる?)
・KOZUTIはMX1203-BKにぴったり!ただし2600回転越えると煩い
・H67M-ITXはCPU周辺に背の高いパーツがないのでKOZUTIでもOK
・ただしPCI Expressスロットは干渉して利用できない
・H67M-ITXはメモリの相性にシビアらしいがElixirは問題なく起動した
・ディスクを4つ詰める5インチベイラックを導入したのはI/O分散のため
・マザボはRAID対応だがSATA 3Gx2 SATA 6Gx2という構成
・3GをHDDに、6GをSSDに割当て長期的なI/O分散を意識
・サーバ交換後既存サーバのディスクを時期を見て追加予定
・CV-EB6400-BKは低価格&ファン付きで冷却が良さそうなので購入
・ファンは静かで問題なしだがトレイが樹脂製なのでHDDよりはSSD向き
・7mmのZ7K-320を選択したのはやはり冷却を意識して
・SSDは4kランダムの性能を重視して価格バランスを見て選択
・電源は安定出力と低消費電力&静音のバランスを見て80Plusからを選択
・MX1203-BKの大きさの制約上奥行き10cmのSST-ST45SFで決定
・SST-ST45SFはめちゃくちゃ静か!排気効率もいい!
・CPUはクロックとコストのバランスでi5-2500を選択
・現i7 860に対してスレッド数は半分になるがクロックが上がるので相殺
・ロードアベレージが高くないので1タスクの処理時間短縮を狙う(検索とか)

■消費電力と静音性
 Ubuntuでの動作実験では起動からアイドル状態になるまでの消費電力は、現在のサーバがピーク93W・アイドル32Wのところ、この構成のサーバではピーク56W・アイドル21Wで安定しており、約3割の消費電力削減に成功した。静音に関してはCPUクーラーのKOZUTIが最大の騒音原因になるが、H67M-ITXのBIOS上でのファンコントロール機能で通常レベル3に設定することで2400回転程度で動作、CPUのアイドル状態の温度は約41度安定(室温26度)という感じで、僅かに音は感じるがほとんど気にならないレベルに抑えることができている。現状のCore i7 860でCPU Usageが200%をめったに越えず、load avarageも平均で0.7、最大でも16程度なので、控えめなファン回転数でも十分対応可能と推測する。

■まとめ
 この構成は約7万でコンパクト且つ静音、そして超低消費電力且つ高C/Pとおよそ目標を果たせたと思う。とりあえず約3割の消費電力削減が可能になったが、夏場に向けて温度変化を確認するための長時間稼働試験などが必要になると思っている。MX1203-BKは容積が小さいため、排気がうまくいかないと熱がこもりやすく障害につながることが容易に推測されるので、実際のサーバ設定などを入れてある程度の負荷試験を行い、内部温度変化などをチェックする必要があると思われる。設置スペースの関係で小さなケースを選択したが、Linuxサーバとしては非常にコンパクト且つ高スペックになっているので、この構成でうまく行くと非常に嬉しい。サーバOSとしてはこれまでのCentOSに変えてScientific Linux 6を導入予定なので、こちらの設定記事も安定したら書こうと思う。

, ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (1 投票, 平均値/最大値: 5.00 / 5)
Loading...

■MacBookにScientific Linux 6をインストールしたメモ
 CentOSの先行きが怪しい感じになってきたので、乗換えを画策しScientific Linux 6を試してみた。UbuntuでなくCentOSと同じRH系のScientific Linuxを選択したのは、既存環境をスムーズに移行させることを前提とすることと、CommuniGate Proがdeb形式のインストーラで提供されていないため。仕事の面からもRH互換なのは何かと便利。

 Scientific Linux 6
 http://www.scientificlinux.org/

■インストール
 上記URLから32bitもしくは64bitのisoをダウンロードしてDVDに焼く。MacBookにDVDを挿入してオプションキーを押しながら起動して、DVD選択して起動。そのままHD全部使ってGUIに従ってインストールすればOK。簡単。再起動後もすんなり起動しちゃって、むしろ簡単過ぎてびっくり。便利になったなぁ。

 試験用途だけだしと、最初Pemtium MのDell D600に32bit版をインストールしようと思って試したら、32bit版なのにCPUがpae対応してないからと言われてインストールできなかった…orz。もはやPemtium Mですらインストールさせてくれないようになったのね…。

■インストールの際ケアすることは以下
・Scientific Linuxのftpはそんなに速くないので当初DVD構成のみでインストール
・起動後、/etc/yum.repo.d/でリポジトリを近くのミラーサイトに手作業で修正
・yum-plugin-fastestmirrorは標準導入されていないしインストールしてもリスト少ない
・ミラーリストは以下
 http://www.scientificlinux.org/download/mirrors
・ミラー直接指定するなら国内ではjaist辺りがオススメ。
 http://ftp.jaist.ac.jp/pub/Linux/scientific/
・rikenはupdate以下が4月中旬以降更新されていないので注意

 CentOSが最新で5.6のところ、Scientific Linuxは6.0でRH6.x系に対応済み+科学技術用途のため、起動しているデーモンなど細かいところで差異があるようなのでこれから調査。このblogサーバも含めて6月には移行実験を行って、本命マシンを8月移行できるように調整していく予定。

【追記】
 その後結局MacBookはLion試験用に。Dell D520を試験用に購入し現在試験中。そちらの記事は以下。

 D520にScientific Linux 5.6をインストールしたメモ
 http://blog.isnext.net/issy/archives/1281
 Scientific Linux 5.6でSNSサーバを構築するメモ
 http://blog.isnext.net/issy/archives/1289
 Scientific Linux 5.6にphp5.2.xを導入するメモ
 http://blog.isnext.net/issy/archives/1299
 Scientific Linux 5.6でrootkitチェック
 http://blog.isnext.net/issy/archives/1318

, , ,
とりあえず付けておく無駄ではなかったなまぁまぁ読めたちょっと役に立ったかなかなり良かったかも (まだ評価されていません)
Loading...