いつもの
皆様こんにちは、はじめましての方ははじめまして。
CYBIRDエンジニア Advent Calendar 10日目担当となりました入社3年目の @asuky です。
個人的には物理環境とか仮想化とかネットワークが担当のつもりです。
昨日の @gucchon さんのお話はクラウドを使う方にとっては、常に心に留めなくてはならぬことだと思います。
RIやMarketPlaceに限らずとも、精力的かつ継続的に値下げを行うAWS、この間も転送料が安くなるお話も伺いまして、世はまさにクラウドファースト。
そんなWeb業界のみならないクラウド全盛な世の中から背を向け、本日は自宅に置ける仮想化に向いたサーバを作る話をします。
自作サーバのポイント
一昔前は流行っていたのですが、昨今ではベンダ製のエントリーモデルの方が安くなっていたりするケースもありますが…。
とはいえ、仮想化という特化目的に使うのであれば、やっぱり自分で作った方が安上がりです。
…サーバのコストを下げたい?自分でサーバ作れば一番安上がりなんだぜ?(多分)
なお自作の手順はあちこちに書いてあるので、探して下さい。
自宅にラックマウントサーバやCatalystを置いてしまうような方は、そっとブラウザを閉じていただけると幸いです。
性能
仮想化環境では物理サーバ1台につき、仮想サーバが最大何台稼働可能かという統合率が重要になります(統合率が低いと、物理サーバを多数調達する必要が出てくるため、コストに跳ね返ります)。
CPUはなるべく多コア、メモリも多量に積んでより多数のサーバを稼働可能にするべきです。
しかしCPUは大変電気を食うので、とりあえず良いもの、とかすると電気代が嵩みます。
TDPが低くてコア数スレッド数が多いもの(周波数は諦める)を選びましょう。
(IntelのCPUだとTのついたモデルが該当します…現在ならCore i7 4790Tとかオススメ)
騒音と冷却
サーバの冷却を行うファンは欠かせないものですが、その稼動音は周囲の方が不快に感じる可能性があります。
ファンは20db未満のものならあまり気になりません(実感的に)。
…冷却力と低騒音はトレードオフです、初起動からしばらくはBIOS上で筐体内部温度を確認します。
なおIntelのCPUには、Turbo Boostという特定コアに負荷が偏ったときに周波数をTDPまで自動的に上昇させる機能がありますが…切った方が無難です(排熱が足りてないだけかもしれませんが…ファンを増やすとうるさいので頑張って数や回転数を調整しましょう)。
またサーバだけではなく、普通の一般向けルータやスイッチも熱を持ちやすいです。
アルミ製だろうが何だろうが冷却しないと熱で壊れるので、風を当てましょう。
ストレージ
仮想環境の場合はSSD推奨です(耐久性や信頼性が程々ならそんな高くない)。
仮想サーバを複数動かすと、DiskI/Oは確実にボトルネックになります。
↑最近だと240GB前後が10000円程度で市販されてますね
また市販されているようなマザーボードのちゃっちぃRAID機能に頼るよりは、mdadmのようなOSレイヤーでRAID1を組むほうが良いと思います(RAID5や6は最低必要ディスク本数が増えるのでイマイチ)。
mdadm利用時は復旧手順を用意しておくことは当然として、間違って故障してないディスクを抜かないように!(一度検証時にやらかしたんだぜ…)
大体ディスクのUUIDらしきものは(大体は)見えるところに書いてあるので、OS側でudevadmコマンドを叩きつつ探しましょう。
あと方法はなんでもいいのでSMART情報は見ておいて下さい。
その他
ネットワークのポートが2つあるマザーボードを選んでおくと何かと便利です(2本足構成にできるので)、その時CentOSがNICを2つ認識しなくても、慌てずドライバを探して入れます(CentOSはAtherosのチップをデフォルトで認識しない様子)。
電源に無意味に容量の大きな電源を使わないようにしましょう、80plus認証とか気にするより電気代優先です。
あと仮想サーバのイメージを置くストレージをネットワーク越しに作るのもボトルネックになるのでNGです。テンプレート(AMI的なもの)を置くぐらいなら良いと思いますが…。
終わりに
とりあえず前述の内容を守れば、それなりに使える小粋な物理サーバができますので、CentOSを突っ込んでOpenStackやCloudStackのホストにしてみるなり、素直にKVMを入れて仮想サーバを立てるなり楽しんでください(ぶん投げ)。
KVM入れるだけならyum groupinstall "Virtualization*"とかやったら一発なので、後はvirt-installで仮想サーバをぽこぽこ作りましょう(これも元になるテンプレートにかなり仕込みが必要ですが)。
ちなみにサーバ自作しても…大規模運用は難しいでしょう(出来ないことはないですが、手間に見合うかどうかが不明)。
自作する手間もあるし電気代かかるしラッキングできないから場所取りますし。
でも検証用に手元で使える物理サーバがあるのは嬉しいんじゃないかと思う今日このごろなのでした。
明日は、弊社内の大先輩にあたるSayakaさんからのお話がありますので、皆様拝聴頂きたく思います。
2014/12/30 21:25 追記
なんか中途半端だったので続き書きました。
http://qiita.com/asuky/items/c529091036f7936c19c1