新しいサーバー(PRIMERGY MX130 S2)導入(3)SSD用の設定

SSD上にOSを設定する場合に二つのポイントがあります。

SSDの速度低下防止のTRIMコマンドの設定と二つ目は寿命を延ばすための設定です。

TRIMコマンドの設定の前にSSDとしてOSから認識されているか確認します。

  • cat /sys/block/sda/queue/rotational

を実行して返値が0ならばSSD 1ならばHDDです。

  •  hdparm -I /dev/sda | grep -i TRIM

を実行してHDDのパラメータでTRIMに関する記述を読み出します。

*    Data Set Management TRIM supported
*    Deterministic read after TRIM
私の所はこの様なメッセージが帰ってきました。後は/etc/fstabをviで開いてSSDのオプションにdiscardを追加すれば良いだけです。

追記)

同様に ,noatime:読み込みが発生する度にファイルの最終アクセス時刻が更新されるのを無効化するものも追加した方が良いです。

併せてSDDの寿命を延ばすために一般的なものを纏めておきます。但し私の場合にはSDDの寿命を延ばすためシステム記憶領域をHDDと混在させており、varなどの書き込みが多いエリアはHDDに待避しているため無駄になっている操作も有ります。

/etc/sysctl.conf にパラメータの追加

始めにswap領域をSSD内に作らない様に設定をします。swap領域をSSDに作ってしまうと、仮想メモリを割り当てる際にSSDに書き込みをしてしまうのでこれは避けます。

/etc/sysctl.conf に以下を追記してOSごと再起動します。
vm.swappiness = 0

この設定をするとswapにページアウトしにくくなります。

OSのキャッシュの書き込みの頻度調整

RHEL系はデフォルトでは書き込み処理はすべてメモリ上にキャッシュされ、これを5秒に1回ディスクに書き込むという仕組みになっているらしいです。なので、このキャッシュを書き込む頻度を5秒から15秒にします。

同様に /etc/sysctl.conf に以下の行を追加します。
vm.dirty_writeback_centisecs = 1500

両方とも設定したら sysctl -p するかOSごと再起動すれば良い筈です。

mlocateコマンドの週一回実行への変更

またlocateコマンドでデータベースを作成・更新する mlocate はデフォルトでは /etc/cron.daily にあるので毎日1回実行しています。これが動くと大量のディスク書き込みが発生するので、locateのデータベースを最新にしなくても良い場合、この mlocate は /etc/cron.weekly にでも移動しておきます。

/tmpのtmpfsへの移動

/tmpは再起動で消えるデータです。SSDへの書き込みを少なくするために tmpfs でマウントするようにします。

この辺りで良いと思います。

新しいサーバー(PRIMERGY MX130 S2)導入(2)SSDにScientific Linux (SL)の導入

私の生業が技術系ですので導入するOSはScientific Linux (SL)としました。

色々と書かれていますがRed Hat Enterprise Linux (RHEL) をベースとしており、互換性も高く安定していると思います。最新バージョンは6.3(2013年8月9日)です。

サーバー用途ですがSSDの実験機として運用していく予定なので少しだけ構成を変えました。130228__DSC0708

HDDの構成

 まず大きな違いはSWAP領域をなくして(警告が出ます)、LVMボリュームをSSDとHDDに切り分けます。SSDには必要最低限のディレクトリーだけを構成して、ログなどが書かれる/varや/tmpをHDD側に移動する構成にしました。インストールは最小構成とGNOMEが立ち上がる様に選んでいればインストールは最後まで進むはずです。

インストールが全部終了後にルートでログインにして

  •   /etc/rc.d/init.d/iptables stop (ファイアーウォールの停止)
  •   vi /etc/sysconfig/selinux (SELinux ;Security-Enhanced Linuxを無効にする。viを使って6行目のSELINUX=disabledと修正
  • reboot

次に便利なパッケージが数多く配布されているrpmforgeとRHEL用にビルドされたスペシャルパッケージを 配布するEPELそしてATrpmsが提供するリポジトリを追加します。

  •  yum -y install rpmforge-release
  •  cp /etc/yum.repos.d/rpmforge.repo /etc/yum.repos.d/rpmforge.repo.org
  •  vi /etc/yum.repos.d/rpmforge.repo
  •  yum -y install epel-release
  •  cp /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.org
  •  vi /etc/yum.repos.d/epel.repo
  •  yum -y install atrpms-repo
  •  cp /etc/yum.repos.d/atrpms.repo /etc/yum.repos.d/atrpms.repo.org
  •  vi /etc/yum.repos.d/atrpms.repo

何れもyumでリポジトリを追加して同時に生成するファイルのバックアップを作った後にviでrpmforgeは8行目,epelは6行目,atrpmsは5行目をenabled=0としておきます。これにより明示的にyum –enablerepo=rpmforge install [パッケージ名]しなければ他のパッケージから導入されないので安全性が高くなります。

  •   yum -y install yum-plugin-fastestmirror
  •   yum -y update

次にシステム全体を一度更新して、rebootすれば最新の状態になります。最後に/etc/cron.daily に yum-autoupdate スクリプトが配置されており毎日アップデートの確認とダウンロードを行います。 しかし何の確認もなしに自動でアップデートするのはリスクが有りますので自動アップデートをしない設定にしておきます。

  • vi /etc/sysconfig/yum-autoupdate

7行目をENABLED=”false”に変更します。

次回はSSD向けの設定とサービスの見直しを行います。

 

新しいサーバー(PRIMERGY MX130 S2)導入(1)メモリとSSDの増設とCPU(Opteron 3250 HE)の換装

昨年は5年間愛用していたHPのサーバーが突然死しました。前回のエントリーにも書きましたがHP ProLiant ML115 G5からHP ProLiant MicroServerにリプレースしております。

MicroServerは徹底的にコンパクトで悪くはないのですがメモリーを増設する以外には殆ど拡張性がなく、そのメモリー交換(追加)も大変でした。次の修理の事を考えると少し鬱になりますがHDDの換装は本当に簡単ですし、ファンも大きく静かです。

最近次のトラブルに備える事そして自分で勉強するためのサーバーを新たに導入する事にしました。AMDファンの私は富士通のPRIMERGY MX130 S2の最小構成(PYM132T3S Sempron145搭載)をNTT X-Storeで買って、CPUを交換して、メモリーを追加しました。

130226__DSC0700OPTERON 3250HE

 この導入を前から狙っていた理由の一つがこのCPUの発売です。高嶺の花だったOpteronがソケットAM3+で45Wのラインナップが昨年の半ばに売り出されていました。発熱量は当初積んであるSempron145を同じ45W(動作周波数も同じ)で4コアとなってL3キャッシュがついています。

 130228__DSC0701まず本体を空けてメモリーを追加しました。

 メモリはCFDの2GBを2枚使ってスロットの1.2にさして、最初から刺さっていたメモリーは3に移動します。合計6GBになりました。その後CPUを換装しますがCPUクーラーの取り外しは金具を回転させて圧力を弱めて外す形式ではなくネジを外す方式です。従ってリテール品についているクーラーは使えません。

130228__DSC0703左が旧AMD Sempron145(2.80GHz 45W)右がOPTERON(3250HE 45W)

 シリコングリースもごく普通の様ですし消費電力も同じですので凝ったことをせずに手持ちのシリコングリースを塗ります。

130228__DSC0704

CPU換装完了

 グリースでも色々と言う人は多いですが一番大切なのは適量だけ均一に塗ることだと思います。グリースの塗布の治具で私の愛用のとてもお勧めは携帯電話のSIMカードのホルダーやクレジットカード(どちらも不要に!なったもの)だと思います。このために私は不要になったSIMカードホルダーの類いは捨てずに全て保存しています。

 薄い使い古しのプリベイドカードなどでは腰がなさ過ぎて、硬いグリースは延ばしきれませんし、紙製などは破片が残ると焦げたりする原因になります。取り付け終了後は均等にネジを締めていけば完了します。

130228__DSC0705側面から(上SSD 下最初からついていたHDD;ATA2に変更)

 この機体もHDDが4台搭載できると記載がありますが発熱やメンテナンスの容易さなどからは2台が良いところなのではないでしょうか。始めからついていたHDDをATAの2に入れ替えて、手持ちのSSDをATA1に接続しました。

130228__DSC0706

手前から

 全ての作業が終わってカバーを掛ける直前です。本当にシンプルなサーバー仕様ですが左側には拡張スロットが一通り揃っているようです。出来れば本体内にUSBのポートがあるとブートなどの選択肢が広がって有り難いです。

 自作パソコンを触ったり、メンテナンスしたことのある人ならばそう迷わない構成だと思います。ふたを閉めてソフトのインストールを行いたいと思います。

サーバー見直しその後

確か夏に書きましたがサーバー(HP ProLiant ML115 G5 をCPU換装)が壊れましたので HP ProLiant MicroServerにリプレースしております。AMD系のCPUを使ったサーバー機もHPではこれだけになり、少し寂しいです。年末からルーターも少し機嫌が悪く往生していましたのでこちらもRTX810にリプレースしました。

130203__DSC0676

RTX810とVOIPアダプター

 色々と悩んだのですがUSBメモリーを紛失したりの情報漏洩で多く色々な人に迷惑をかけてしまうのでこれからはVPNを使ってデータをやり取りする様にしていきたいと思います。まずは出先のノートPC(MAC)からはL2TP/IPsecのVPNをつかいサーバーのデータにアクセスとLinux端末として接続しております。

130203__DSC0677

HP ProLiant MicroServerとVOIPにつながった電話

(LEDが明るいとか思っているよりファンが煩いなどと書かれていますが結構に気に入っています)

 セキュリティーだけは気を付けて外部からのアクセスはL2TP/IPsecとSSH2をそれぞれ鍵交換で2重に暗号化をかけていますが確かに便利です。何よりも出先にいる時にUSBを紛失しないかとの強迫観念がなくなりました。

 但し操作感がネットの通信速度に依存するので最近はどのアクセスポイントに接続するかが非常に気になる様になる様になりました。電話会社系の公衆無線LANは通信速度の遅い所と速い所の差が大きいのでとても気になります。

 人間の欲求にはキリがないですね。少し設定などを纏めて行きたいと思います。

サーバーの模様替え(3.Media Tombの再インストール)

サーバーの模様変えが続いています。アクセス解析を見ていると毎月Media Tombのキーワードが必ず上位にヒットしているので再インストールしてみました。

 私のサーバー機がX86_64で動かしているためでしょうか?残念な事に何時も御世話になっている“CentOSで自宅サーバー構築”とは少し方法が異なってしまいましたのでメモ書きを残しておきたいと思います。

 wget http://jaist.dl.sourceforge.net/sourceforge/mediatomb/mediatomb-0.12.1.tar.gz

tar zxvf mediatomb-0.12.1.tar.gz

 としてソースモジュールを解凍します。

cd mediatomb-0.12.1

./configure –enable-mysql

で環境にあわせたmake条件を作ります。

 ./configure最後のメッセージは

CONFIGURATION SUMMARY —-

sqlite3               : missing
mysql                 : yes
libjs                 : missing
libmagic              : yes
inotify               : yes
libexif               : missing
id3lib                : disabled
taglib                : missing
libmp4v2              : missing
ffmpeg                : missing
ffmpegthumbnailer     : missing
lastfmlib             : missing
external transcoding  : yes
curl                  : missing
YouTube               : missing
libextractor          : disabled
db-autocreate         : yes

root になってyumコマンドで不足しているライブラリーを追加して行きます。
特にlibを含んでいるものは重要だと思われます。

# yum install libjs taglib libmp4v2 id3lib lastfmlib libextractor
を実行したのですが・・・結局

CONFIGURATION SUMMARY —-

sqlite3               : missing
mysql                 : yes
libjs                 : missing
libmagic              : yes
inotify               : yes
libexif               : missing
id3lib                : disabled
taglib                : missing
libmp4v2              : missing
ffmpeg                : missing
ffmpegthumbnailer     : missing
lastfmlib             : missing
external transcoding  : yes
curl                  : missing
YouTube               : missing
libextractor          : disabled
db-autocreate         : yes
でした。リセットしても同じでした。

 この後makeとmake install です。
 mysqlにデータベースを作ります。
# mysql -u root -p
Enter password:

Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 5
Server version: 5.0.77 Source distribution

mysql> create database mediatomb;
Query OK, 1 row affected (0.04 sec)

mysql> grant all privileges on mediatomb.* to mediatomb@localhost identified by ‘パスワード’;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

また/usr/local/share/mediatomb/の下にsqlの初期設定用ファイルが出来ているので
# mysql -p mediatomb < /usr/local/share/mediatomb/mysql.sqlを実行する
また*/mediatomb-0.12.1/configにMediaTomb設定ファイルが出来ているのでMT_INTERFACE=”NOT_SET”をMT_INTERFACE=”eth0″に変更して/etc/mediatombにコピーする。

# /usr/local/bin/mediatomb start
# /usr/local/bin/mediatomb stop
で/root/.mediatomb/config.xmlが生成するので
後はhttp://centossrv.com/mediatomb.shtmlに従って修正すれば良いです。

因みに起動は
#  /usr/local/bin/mediatomb start &
停止は /usr/local/bin/mediatomb stopで良いです。動くには動きますが少し重いですね。