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

MMA
1と37のリビジョン間の差分 (その間の編集: 36回)
2011-06-02 21:36:52時点のリビジョン1
サイズ: 3432
編集者: alstamber
コメント:
2011-06-20 20:12:37時点のリビジョン37
サイズ: 4435
編集者: alstamber
コメント:
削除された箇所はこのように表示されます。 追加された箇所はこのように表示されます。
行 6: 行 6:
  * --(と思ってたらカーネルハックしたらネイティブ環境で動作するようになった)--
行 7: 行 8:
= 2011/5/30 =
 * とりあえず家で余っていたMacに仮想マシンを作成した
  * とりあえず慣れているVirtualBoxを使うことにした
   * ServerのOSとして何を使うか迷ったので、とりあえずDebian, Ubuntu Server, FreeBSDを入れた
  * 仮想マシンの設定として、「ブリッジ接続」をするようにした
   * サーバが自宅のLANに対等に参加できるようにするため
 * とりあえずFreeBSDから設定することにする
  * portsnapしてportsを最新にする
  * とりあえずsudoとportmasterを入れる
  * 自分をwheelに追加。
  * portmasterつかっていくつかの健康で文化的な生活を送るためのツールを導入
   * vimとかzshとか
  * nestからscpして.zshrcとか.vimrcをホームディレクトリに用意
  * sshの設定をついでに行った
 * ルータの設定をゴニョゴニョして、サーバに固定ローカルIPが降ってくるようにした
 * sshでサーバのローカルIPに接続できることを確認した
 * 当初の設計に無理が生じてきた→一から設計しなおすことにした
  * 古い内容は[[/Old|こちら]]に移しました
行 24: 行 11:
 * とりあえず目に見えた成果がほしいと感じたので、Webサーバを上げることにした
  * portsつかってApache22さんを導入
  * ルータの設定をゴニョゴニョして、80番ポート宛の通信がサーバに流れるようにした
  * rc.confに記述して、apache22さんを起動。
  * とりあえずローカルIP宛に別のLAN内PCから接続、It works!が出ることを確認。
 * DDNSサービスに自分のグローバルIPを登録。alstamber.moe.hmで自分のネットワークに到達できるようにした
  * うちのルータはいわゆるヘアピンNATができないようなので、iPhoneからalstamber.moe.hmにアクセスできることを確認。
----
行 32: 行 13:
 * 並行してDebianさんとUbuntu Serverさんも設定。こちらは外部には開かれていないが内部向けに実験用Webサーバが動いてる状態にした = ゴール =
 * blogを自分の管理下にあるサーバで運用する
 * FreeBSDの実験、各種ネットワーク実験を行う
行 34: 行 17:
= 2011/5/31 =
 * とりあえずbindさんを投入
  * ローカルネットワークからだとグローバルIPでサーバにアクセス出来ないため、alstamber.moe.hmで内部的に名前を引けるようにしたかった
  * [[http://freebsd.server-manual.com/index.html|このあたり]]を参考に、named.confとかゾーンファイルとか記述
  * rc.confに記述後、named起動
  * いろんなところからdigコマンドを叩いては設定を修正する作業。ゾーンファイルのリビジョンが無駄に増える
 * 正常に引けるようになったのでとりあえず一安心。
= 設計 =
== システムを構成するサーバ ==
 * 大きく分けて2つのサーバでシステムを運用することとする
=== 自宅 ===
 * 外向きにWebサーバを提供
 * IPv6での到達性を確保
 * IPv6経由でSSH接続可能
 * 自宅ネットワーク向けに、DNS/DHCPサービスを提供
=== VPS ===
 * 980円の某VPS
 * blogの運用をこちらに切り離す
  * blogはトラフィックが大きいため、自宅での運用に不安が残ったため
  * バックボーンの面でやはりVPSに分があった
 * blog運用のため、PHP5およびMySQLの導入を行う
 * ZFS Rootで運用
 * 6rdでIPv6到達性を確保する
行 42: 行 34:
= 2011/6/1 =
 * 学内無線からsshでサーバに接続しようとしたら繋がらない
  * どうやら学内から学外へのsshはBANされる模様
 * 他の場所からやってみたら無事につながった。
 * 全く使っていないのでUbuntu ServerさんとDebianさんを殺す
 * このまま何もなければFreeBSDでの運用になりそう……
== ドメインの割り振り ==
 * VPSには589lab.netのドメインを割り振る
行 49: 行 37:
= 2011/6/2 =
 * VirtualBoxでの運用に不安を覚える
  * サーバ向け仮想環境を作ったほうがいいのではないか……?
= 実装 =
== 2011年6月17日 ==
 * 980円の某VPSを契約
 * デフォルトでCentOSが入っているので、FreeBSDに差し替える
  * 某VPSはコントロールパネルからOSの再インストールの命令を発行できる
  * VNCで画面が自動的に飛んで来る。インストーラの指示に従ってインストール
   * [[http://fragile-graciousness.net/server_freebsd_zfs_root.html]]を参考に、ZFS Rootになるようにインストール
 * とりあえず再起動
 * 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に対応していないことだろう

なにこれ

  • なんかサーバー立ててる人多いし、自分も立ててみたいと思った
  • でもうちには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に対応していないことだろう

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