ログイン
編集不可のページディスカッション情報添付ファイル
"alstamber/VirtualServerBuilding"の差分

MMA
43と44のリビジョン間の差分
2011-11-14 11:40:38時点のリビジョン43
サイズ: 5950
編集者: alstamber
コメント:
2011-11-14 11:41:44時点のリビジョン44
サイズ: 6027
編集者: alstamber
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 137: 行 137:
  * 以下をcrontabに追記
{{{
zfs snapshot 名前@`date +%Y%m%d`
}}}

なにこれ

  • なんかサーバー立ててる人多いし、自分も立ててみたいと思った
  • でもうちにはMacしかない……
  • MacにもServerOSはあるけど、高すぎる
  • なら仮想環境上で動かそう!
    • と思ってたらカーネルハックしたらネイティブ環境で動作するようになった

  • 当初の設計に無理が生じてきた→一から設計しなおすことにした


ゴール

  • blogを自分の管理下にあるサーバで運用する
  • FreeBSDの実験、各種ネットワーク実験を行う

設計

システムを構成するサーバ

  • 大きく分けて2つのサーバでシステムを運用することとする

自宅

  • 外向きにWebサーバを提供
  • IPv6での到達性を確保
  • IPv6経由でSSH接続可能
  • 自宅ネットワーク向けに、DNS/DHCPサービスを提供

VPS

  • 980円の某VPS
  • blogの運用をこちらに切り離す
    • blogはトラフィックが大きいため、自宅での運用に不安が残ったため
    • バックボーンの面でやはりVPSに分があった
  • blog運用のため、PHP5およびMySQLの導入を行う
  • ZFS Rootで運用
  • 6rdでIPv6到達性を確保する

ドメインの割り振り

  • VPSには589lab.netのドメインを割り振る

実装

2011年6月17日

  • 980円の某VPSを契約
  • デフォルトでCentOSが入っているので、FreeBSDに差し替える
    • 某VPSはコントロールパネルからOSの再インストールの命令を発行できる
    • VNCで画面が自動的に飛んで来る。インストーラの指示に従ってインストール
  • とりあえず再起動
  • minimalインストールなので、rootのパスワードが設定されていない。急いで設定する

 # passwd
  • ユーザがrootだけだと残念なので、通常使用するユーザを作成する

 # adduser ***
  • sudoをインストール

 # cd /usr/ports/security/sudo
 # make install clean
  • visudoを使ってwheelグループをsudoできるようにする
  • rootからログアウトして、通常アカウントでログインしなおす
  • 健康で文化的な最低限度のツールを入れる
    • portmasterとかzshとかvimとか
    • 各種設定ファイルをmoonからコピーしてくる
      • scpを使えば良い
  • MySQLとPHP5を入れる
    • MySQLの設定はここを参考にするhttp://freebsd.server-manual.com/freebsd8_mysql5.html

    • 必要のないデータベースを削除し、wordpress用のデータベースを新しく作る
    • MySQLは最初動かなかったが、一旦アンインストールしてもう一度入れ直したらうまくいった
    • PHP5についてはphp5-extensionsを入れるのを忘れない←MySQLにphpからアクセスできなくなる
    • httpd.confに次の記述を行う。

<IfModule dir_module>
    DirectoryIndex index.html index.php ←追加
</IfModule>

<IfModule mime_module>
    AddType application/x-httpd-php .php 
</IfModule>

2011年6月20日

  • どうもVPSが不安定である。どうやらZFSがやたらメモリを食ってパニックしている様子。
    • メモリ使用量を減らす作業。
  • phpMyAdminを導入。
    • portsからインストール。php.iniで取り扱えるファイルサイズなどを変更。
      • 巨大データベースファイルをアップロードしたりすることがあるため。
  • DNSの設定を変更。
    • フリーのDNSサーバを借りて、589lab.netのAレコードがVPSを向くようにした。
  • munin-masterとmunin-nodeをインストールした。
  • ntpdを起動するようにした。
    • まず/etc/ntp.confを編集。

server ntp.nict.jp
  • /etc/rc.confに追記。

ntpd_enable="YES"
  • サービスを起動。

 # service ntpd start
  • 余談だが490円VPSは存外スペックが良かった
    • pingの帰ってくるスピードが異常に速かったし
    • 惜しむらくはFreeBSDに対応していないことだろう

2011年6月26日

  • やたらDNSサーバへのキューが多いと思ったら、TTLが1分になってた
    • キャッシュ汚染されても困るので1日に変更

2011年7月1日

  • Apacheの設定をチューニング。サーバのレスポンスがよくなることに期待。

2011年8月23日

  • VPSを再起動。ついでにsshのポート番号を変更しておく。

2011年11月4日-5日

  • 長期メンテ。
    • FreeBSD9.0-RC1入れてみる
    • 6rdのパッチが使えなくなったので、v6への対応は6to4にすることにした。
      • Tokyo6to4のお陰で、以前と違いレイテンシも大幅に軽減されている。
    • git入れてみる。
      • 共有リポジトリをVPS上に構築し、開発したものは全部そっちにおこうという計画。
      • git-daemonさんがうまく動かず、苦労したがgit-daemonを直接叩くのではなく、gitコマンドを使ってdaemonを叩くようにするとなぜか動いた。
      • とりあえず意味もなく現在作ってるbotのソースをpush。

2011年11月14日

  • せっかくFreeBSD9.0を入れたのでZFSのバージョンを上げてみる。

# zpool upgrade -a
# zfs upgrade -a
  • そういえばZFSの機能を何もいかしていなかったなあとおもったので、snapshotをとるようにした。
    • /var以外すべてをとるようにした
    • 以下をcrontabに追記

zfs snapshot 名前@`date +%Y%m%d`

alstamber/VirtualServerBuilding (最終更新日時 2012-04-18 22:11:53 更新者 alstamber)