2009/10/27

OS X Server on VMware Fusion (5)


 もう購入出来る様になっているのでダウンロード中ですが、Snow Leopard対応のVMware Fusion 3が 2009/10/27 から販売されます。また、先週案内した技術情報の移行も兼ねて、OS X Serverの各機能についてを投稿します。(Version 3の使用感ついては、次回投稿します。)

ここから移行技術情報です。一部の内容は最新版に変更しています。

 スケジュール管理、運用状況の報告、ソースコードのメンテナンス等、プロジェクトを立ち上げるにあたって、どうしてもサーバーは必要ですよね。OS X Serverを導入する前に、半年ほどAmazon EC2+CentOSベースで仮運用をしてみましたが、まったくもって問題はありませんでした(--;。
じゃあ、そのままで良いではないかと思うのは当然ですが、以下の理由により自前でサーバーを持つ事にしました。
  1. 1ヶ月運用した時にかかる費用(EC2+S3)と、自前で持った時の費用がそれほど変わらない。
  2. サーバーへのソースコードコミットが地理的条件により遅い。
  3. 支払い方法がクレジットカードのみ。

 1.については、毎日1回S3側にバックアップをとりながら、redmine+Subversionの運用で$74.61。2009-10-27の為替で計算すると、74.61*92.02=¥7,031ってところでしょうか。年間だと¥84,374になるので、Power Mac G5 1台分位の値段になります。勿論、データの容量(転送含む)が大きくなるにつれて更に費用はかかりますね。中古のPower Mac G5がどれだけの確率でご臨終するかは分かりませんが、¥80,000払っても今ならおつりが十分戻ってきます。2.については、そんなに気にならないものの、Subversion以外の利用も考えると速い方が快適です。以下はpingの結果です、200msecって以外と効きます。
Amazon EC2
64 bytes from gunjou.net: icmp_seq=0 ttl=47 time=193.230 ms
64 bytes from gunjou.net: icmp_seq=1 ttl=47 time=193.401 ms
64 bytes from gunjou.net: icmp_seq=2 ttl=47 time=191.902 ms
64 bytes from gunjou.net: icmp_seq=3 ttl=47 time=210.782 ms
64 bytes from gunjou.net: icmp_seq=4 ttl=47 time=196.436 ms
ローカルサーバー
64 bytes from gunjou.net: icmp_seq=0 ttl=64 time=0.575 ms
64 bytes from gunjou.net: icmp_seq=1 ttl=64 time=0.328 ms
64 bytes from gunjou.net: icmp_seq=2 ttl=64 time=0.381 ms
64 bytes from gunjou.net: icmp_seq=3 ttl=64 time=0.340 ms
64 bytes from gunjou.net: icmp_seq=4 ttl=64 time=0.313 ms
 3については、クレジットカードが使えなくなった場合の事と考慮した為です。でも、クレジットカードが無いと、シェアウエアが買えなくってとても困るんですけど。

 とココまで書きましたが、Amazon EC2自体はとっても良かったです。自宅にうるさいサーバーをおく必要も無いし、グローバルIPもすぐに取れるし、使った分だけ払えば良いし。他のサイトを運用する機会があれば、確実にこちらを選択しますね。

アップル - Mac OS X Server

が1番分かりやすいのですが、まぁ書かれている通りでした。CentOSを使うという選択肢も考えましたが、リモートでサーバー設定が出来るGUIがついていて非常に重宝します。詳細設定でインストールし、apacheの1部設定を除いてはそれで済みます。無制限クライアント版で¥114,800(Snow Leopard Serverは\53,800ですが、Intel Mac専用)なので、あーでもないこーでもないと言いながら設定に時間をかけるよりは安上がりな様に感じます。ただし、web上で設定例があまり見かけないのでハマると大変です。

 インストールはDVDでもネットワーク越しでも可能です。NIC等を後付けする際にも、起動時に自動的に認識してくれるので安心です。ただし、Apple純正のもの以外はある程度の覚悟をして使う必要がありそうです。

…やっと本題ですね。以下からは各サービスの設定に関しての設定例を記載します。

AFP (Apple Filing Protocol)
 Finderの共有からサーバーを参照しファイルのやり取りをする為には、このサービスを有効にします。サーバー管理 => AFP => AFPを開始 で起動します。私はゲストアクセスを無効にしました。

DHCP
 ネットワーク上の各クライアントにプライベートIPアドレスを割り当てる為には、このサービスを有効にします。サーバー管理 => DHCP => DHCPを開始 で起動します。サブネットの設定が出来ればすぐに済みます。NATとDNSの設定については、後の項目を参照してください。

DNS (Domain Name System)
 ネットワーク上の各コンピュータに対して、IPアドレスではなく固有の名前にてアクセス出来る様にする為には、このサービスを有効にします。通常はローカルネットワーク上での運用が主かと思われますが、インターネット側からサーバーを名前で参照する際にも使用されます(web閲覧やmail配信時)。サーバー管理 => DNS => DNSを開始 で起動します。

  NS,MX等の資源レコードにはCNAMEではなくAレコードを記述する。

がポイントです、www等はCNAMEで構いません。他のサービスもここで設定されたホスト名を参照する筈なので、設定を間違えると後で大変です。

iCal (CalDAVサービス)
 OS X 用のiCalやFirefox(Mozilla)等でカレンダーを共有する為には、このサービスを有効にします。設定項目はホスト名くらいですね。サーバー管理 => iCal => iCalを開始 で起動します。

iChat (Jabberサービス)
 iChat,Google等のXMPP準拠システムと連係する、インスタントメッセージサービスです。設定項目はホストドメイン名くらいですね。サーバー管理 => iChat => iChatを開始 で起動します。Skype派なのですが、もう全部まとめて欲しいような気がします。

MySQL
 解説するまでもないDBサービスです。サーバー管理 => MySQL => MySQLを開始 で起動します。5からはトランザクション処理に対応したので、ある程度の商用ベースでも遜色無く使えます。Railsを使う際にも必要ですので、ほぼ必須です。ルートパスワードは忘れずに設定しておきましょう。標準でインストールされているものには、ライブラリとヘッダが1部同梱されていません、開発用にビルドをする際には追加のインストール作業が必要になります。

NAT (Network Address Translation)
 ルーターを構築する際にDHCPと合わせて必要なサービスです。サーバー管理 => NAT => NATを開始 で起動します。外部ネットワークインタフェースを選択すれば、後はお任せでDHCP側とインターネット側とのアドレス変換をしてくれます。1部のアプリケーションで機能が制限される可能性がありますが、このご時世では心配しなくても良いと思います。

Open Directory
 ユーザー認証を管理するサービスです。サーバー管理 => Open Directory => Open Directoryを開始 で起動します。何かの(ファイル等の)ディレクトリを提供するものではなく、ユーザー認証をディレクトリ的に管理をすると言う意味です。例えばPC.Aにて管理されている一般社員用の認証情報と、PC.Bで管理されている会社役員の認証情報を情報的に管理する場合、社内の機密文章にはPC.Bに登録されている人間しか閲覧出来ない様に設定が可能です。このケースでは、2つの階層しか存在しませんでしたが、大きな組織で階層的にユーザー管理をし、かつその情報を分散配置させる事が可能となります。
 大きな組織を例として挙げましたが、個人ベースでも使用可能です。OS X Serverの各サービスもOpen Directoryを参照するように作られており、認証情報の一元管理に役立ちます。

Web
 webサービスを提供します。単刀直入に言うと、apache2。サーバー管理 => Web => Webを開始 で起動します。基本的な設定はGUIから行う事が出来ますが、SubversionやRailsと連携させる為には設定ファイルの編集が必要です。場所は、

/etc/apache2/httpd.conf,
/etc/apache2/sites/*.conf <= httpd.confから参照される追加ファイル

がそれぞれありますので、必要に応じて追記可能です。webフォルダ(ルート)自体は/Library/WebServer/Documentsから変更しない方が良いみたいです。自前のルート証明書しか用意出来ないので、httpsでの警告はしょうがないですね。

ファイアウォール
 NIC毎にポートの開閉が可能です。サーバー管理 => ファイアウォール => ファイアウォールを開始 で起動します。ローカルネットワーク側は全て解放して、インターネット側は不必要なポートのみ閉じる様にしました。

メール
 メールサービスです。サーバー管理 => メール => メールを開始 で起動します。SMTPを有効にするのであれば、最低限認証を必要にしておいた方が、後々踏み台にされなくて良いでしょう。各ユーザーのメールアカウントを有効にするかしないかは、ワークグループマネージャ等から設定が可能です。OS X Server に付属するWebメールはUIが貧相なので、グループwikiやプロジェクト管理サービスとの連携程度と考えておいた方が良いかもしれません。私自身、Gmailだけで事足りてますので。

0 コメント:

コメントを投稿

Powered By Blogger