Hatena::ブログ(Diary)

総天然色頁 RSSフィード

2009-07-13 (月)

redmineインストール・Windows Server + IIS編・Subversion対応の章

redmineインストール・Windows Server + IIS編 - 総天然色頁の補足です。

次のような要件だと仮定します。

  • Windows Server 2008 + IIS 7環境にredmineを構築
  • redmineは0.8.4
  • IISサーバーのホスト名は example.com とします。
  • example.com/redmine/ でredmineにアクセス出来ること
  • WEBサーバーのIPは192.168.0.1
  • svn.example.com でsvnリポジトリにアクセス出来ること
    • Aレコードで追加(IPは192.168.0.3と仮定)するか、CNAMEレコードで追加(IPは192.168.0.1)するかどちらかだと思いますが、ここではAレコード追加の方向で考えます。
  • redmineからsvnリポジトリを参照出来ること

概要

  • svnサーバーのインストール
  • svn.example.comの追加
    • NICにIP付与
    • DNSの設定変更
    • IISにsvnのproxy設定を追加する
  • svnのCUIクライアントを入れる
  • svnリポジトリを用意する
  • redmineプロジェクトにリポジトリ情報を追加する

Windows用のsvnサーバーを立てる

svnserveよりhttp/httpsを使えた方が便利なので探してみたのですが、結論から言うと、IIS上で動作するsvnサーバーは存在しない模様*1

そこで、VisualSVN Serverをインストールします。

無償&2008対応&設定が簡単、というのが理由。

  1. 公式サイトからバイナリダウンロード
  2. バイナリを実行してインストール
    1. nextを押下
    2. End-User LicenseをAgreeしてnextを押下
    3. Custom Setupで以下のような設定に変更
      1. Use Secure Connection(https://)をoffに
      2. Server Portを80以外に設定(以下、8080として進めます)
      3. Use Windows authenticationを選択 ← Active Directory管理になります
      4. nextを押下
    4. installを押下
  3. VisualSVN Server Managerを実行して設定を変更
    1. ネットワークの設定
      1. 左ペインのVisualSVN Serverを選択し、Properties...を実行
      2. Networkタブを選択
      3. Server Nameを192.168.0.1に変更
      4. Server Binding の These IP addressesを選択
      5. Add...を押下して、192.168.0.1とsvnサーバー用のIP(以下、192.168.0.3として進めます。)を追加
    2. デフォルトの権限設定
      1. 左ペインのRepositoriesを選択し、Properties...を実行
      2. 開発者用のグループを追加しPermissionsを設定しておく

svn.example.comの追加

NICにIP追加

要件のとおり、192.168.0.3のポートを増やす必要があるので、その設定。

物理的にNICを追加してLANポートを増やしても良いんですが、ここでは、1つのNICにIPを複数する方法で。

  1. 対象のNICのプロパティを開く
  2. TCP/IPv4のプロパティを開く
  3. もしもDHCPを使用する設定になっていたら、IP固定の設定に変更
  4. IP設定タブのIP設定で[追加]ボタンを押下.
  5. この場合は192.168.0.3でIPを追加。
DNSの設定変更

Windows ServerのDNSにAレコードを追加し、svn.example.com を 192.168.0.3 で割り当てる。

IISにsvnのproxy設定を追加する
  1. URL Rewrite設定
    1. 詳しくは、前回URL Rewrite 2.0 betaでDestinationヘッダーの書き換え - 総天然色頁を参照してください。
  2. IISサイトの追加
    1. 192.168.0.3で検討
    2. SSLが必要な場合、Windows Server + IIS でのSSLオレオレ証明書 - 総天然色頁を参照

Windows用のsvnクライアント(CUI)をインストールする。

Redmineがsvnコマンドを実行するため、CUIのクライアントをインストールする必要があります。

Windowsの場合は、Slik SVNを使うかApacheのバージョン(2.0/2.2)に合わせたインストールパッケージを使うかの二択になります。

どちらも無償&Windows Server 2008の対応を謳っていませんが、Slik SVNは64bit版もあるので、今回はこっちを導入。

  1. 公式サイトからmsiをダウンロード
  2. バイナリを実行してインストール

2009-08-08追記:VisualSVN自体にはsubversionクライアントがついている(GUIからリポジトリを選択してコマンドプロンプト起動可能)ので、パスを通せば単体で問題ない?

svnリポジトリを用意する

VisualSVNの管理画面でリポジトリを追加。

Active Directoryと連動できるので、redmineから参照するためのユーザを選んでPermissionを付加しておく。

redmineプロジェクトにリポジトリ情報を追加する


参考文献

  1. no title
    • Apache用のパッケージ
  2. @IT:Windows TIPS -- Tips:ネットワーク・カードに複数のIPアドレスを割り当てる
    • Windows環境でNICに複数IPを割り当てる設定手順。

*1SVN-IISというのもあるものの、IIS 6.0までしか対応していない&Apacheのproxyでしかなさそう

riri 2010/06/11 16:18 これを探していました。ありがとうございます。
でも私にはほとんどPCの知識がありません。教えていただきたいことがあります。
[svn.example.comの追加]がほぼ全部意味がわかりません。詳しく教えていただきことは可能でしょうか?
ちなみに、IIS7を使っています。環境は外部と隔離されていて、サイトからmod_rewriteの設定のためにURL_rewriteをインストールできません。しかしIISに「モジュール」という機能はありました。何か足りないことがあれば追記させていただきます。

kamatarokamataro 2010/06/11 17:10 VirtualSVNは実体がapacheなんで、ローカルなネットワークの内部であれば、IPアドレスの直打ちでもいけたはずです。
ご指摘の箇所は、ネットワーク外部からでも接続するための手順です。はしょりすぎて手順になってませんが…。

riri 2010/06/14 10:26 詳しく書き直してくださりありがとうございます。
書き忘れていました。サーバPCとクライアントPCは別になっています。その場合は「ipアドレスの直打ち」というのはできないということですよね?できる場合は、どこにIPアドレスを直打ちしたらいいのか教えていただけないでしょうか。

また、定義でわからないところがあり質問があります。簡単な質問で申し訳ありません。
・WEBサーバのIP→IISの入っているPCのIP
・Aレコード(svnサーバ用のIP)→????

クライアントPCは複数ありますが、クライアントPCのIPもどこかに記述するのでしょうか。
お時間のあるときにお返事いただけましたら助かります。

kamatarokamataro 2010/06/15 00:59 まず試してみてください。ネットワークの設定が不明なので、出来るかどうかは判りません。subversionのURLのホスト名(ドメイン名)がIPになるはずです。
Subversionのクライアントなりブラウザなりwgetなり好きな手段で確認してください。

また、この辺の記事は全てサーバー環境の構築手順です。
クライアントは無関係です。

riri 2010/06/15 13:41 ありがとうございます。何度も設定をかえて試してみたのですが、私の知識がないせいで、結局解決することができませんでした。アドバイスくださり本当にありがとうございました。

kamatarokamataro 2010/06/15 21:49 この辺りの確認はどうだったんでしょうか?
1. IISサーバーに対してpingを打って反応がある or リモートデスクトップ等どんな手段でも良いので接続できる。
2. IISの他のサイトは、クライアント機のブラウザから参照できますか?
3. VisualSVNのIPをIISサーバー用のIPと同じにして、ポート番号を変えた場合に、クライアント機のブラウザからVisualSVNのページを参照できますか?
4. VisualSVNのIPをIISサーバー用のIPと異なる値に設定した場合に、クライアント機のブラウザから参照できますか?

これ以上は、ネットワーク構成が判らないと答えようがありません。

なお、上記の設定手順で触れていますように、IPアドレスはサーバーに対してではなく、ネットワークアダプタ(上記だとNIC)単位で設定することが出来ます。
さらに、上記の手順では、1つのNICに対して、複数のIPアドレスを設定する手順になっています。

DNSの設定に関しては、詳しく解説されているサイトや書籍がたくさんありますので、そちらを参考になさった方が良いと思います。

riri 2010/06/17 19:16 ご丁寧にありがとうございます。すみません、緊急作業が入ってしまいPCを見れない環境にいくため、来週にコメントさせていただきます。教えていただいたことを参考に調査後にご連絡させていただきます。

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/kamataro/20090713/1247513436
リンク元