none
IIS, SQL Server それぞれ同一のOS内に複数システムを同居させる方法 RRS feed

  • 質問

  • IIS、SQLServer それぞれ同一OS内に複数システムを同居させたく、その構成に関する質問です。現在、システムAとシステムBがあり、システムAは WebサーバA1、DBサーバA2から構成されています。システムBは WebサーバB1、DBサーバB2から構成されています。
    今回新しく、WebサーバC1(システムA+システムB) 、 DBサーバC2(システムA+システムB) の構成としたいです。

    【新環境】
     ●Webサーバ :
    OS: Windows2012R2
    Webサーバ:IIS 8.0 (+ASP.net 2.0)
     ●DBサーバ
    OS: Windows2012R2
    DBMS: SQL Server2012

    【前提】
     IISのアプリケーションプールおよびSQL Serverのインスタンスはシステム毎にそれぞれ分けます。

    【質問】
     Q1: (IIS8.0)システムリリース時は、IISの再起動が必須でしょうか? それとも、アプリケーションプールの再起動のみで対応可能でしょうか?

     Q2: (IIS8.0)IIS全体に関わる設定ファイルは存在しますでしょうか?存在する場合、ファイル名、および設定内容は何でしょうか?

     Q3: (SQL Server2012)インスタンスごとに認証方法を分けることは可能で
    しょうか? (Windows認証/SQL Server認証)

     Q4: (SQL Server2012)SQL Server全体に関わる設定ファイル、設定箇所は存在するのでしょうか?
         存在する場合、ファイル名、レジストリ、および設定内容は何でしょうか?


    よろしくお願い致します。

    2015年7月24日 2:54

すべての返信

  • 確認させて下さい。

    【前提】
     IISのアプリケーションプールおよびSQL Serverのインスタンスはシステム毎にそれぞれ分けます。

    【質問】
     Q1: (IIS8.0)システムリリース時は、IISの再起動が必須でしょうか? それとも、アプリケーションプールの再起動のみで対応可能でしょうか?

    アプリケーションプールって表現は合ってます?
    何となくサイトまたはアプリケーションの事を言っている様な・・・

    ちなみに、お求めの方法は問題無く可能ですが、要件は「共存出来さえすればそれで良い」なんでしょうか?

    • 編集済み aviator__ 2015年7月24日 4:37
    2015年7月24日 4:35
  • IIS の用語で、アプリケーションプールというものがあるそうで、各サイトをアプリケーションプールを割り当てると、アプリケーションプールごとに開始、停止、リサイクルを操作可能になるとのことでした。

    まずもって第一の要件は、A、B 両システムの共存なのですが、運用の観点ではなるべくシステムAとシステムBとを独立に操作したい要件も出てくると思います。まだ、明確にできていないのですが。。。

    2015年7月24日 4:49
  • Q1, Q2 のみ回答します。

    > Q1: (IIS8.0)システムリリース時は、IISの再起動が必須でしょうか?
    > それとも、アプリケーションプールの再起動のみで対応可能でしょうか?

    「システム」「リリース」というのが何だか不明ですが、システムというのは ASP.NET Web アプリ、リリースというのは開発マシンで開発が完了した Web アプリ全体を本番環境の Windows Server にアップロードするということでいいのですか?

    Windows Server の再起動は不要です。アプリケーションプールは再起動というよりその Web アプリに対して新規割り当てが必要になります。


    > Q2: (IIS8.0)IIS全体に関わる設定ファイルは存在しますでしょうか?
    > 存在する場合、ファイル名、および設定内容は何でしょうか?

    以下の記事を見てください。

    ApplicationHost.configの紹介
    https://technet.microsoft.com/ja-jp/library/Dd647601.aspx

    #SQL Server のフォーラムに投稿されていますが、Q1 と Q2 は SQL Server とは直接関係のない IIS または ASP.NET に関する質問ですよね。Q3, Q4 と分けて IIS もしくは ASP.NET のフォーラムに投稿するのが適切だと思います。次回は適切なフォーラムを選んで質問するようお願いします。

    2015年7月24日 5:01
  • システムAとシステムBの独立性を保ちたいのであればSQLサーバー側をリモート化するしかないと思いますが…

    何を以て「独立」というかは置いておいて、単一サーバー内のWebサーバーとSQLサーバーの共存は問題ないと思います。

    アプリケーションプールの設定に関しては同一サーバーにSQLサーバーが居るのであればDefaultAppPoolにログインの権限を付与すれば良いのではないでしょうか?

    2015年7月24日 5:06
  • koba33様

    ご返信ありがとうございます。

    SQL Server は、ライセンスの関係で同じ OS 上でシステムAとシステムBをそれぞれインスタンスを分けて構築したいというのが第一の要件でした。IIS については、SQL Server とは別の OS にしたほうがよいとの判断はあったので、別の1つの OS 上にシステムAとシステムBをそれぞれ別のアプリケーションプールに分けて構築しようと考えました。システムA、Bの IIS をそれぞれ別の OS 上で動かすことまでは必要ないと考えました。

    OS や SQL Server のパッチ適用などで再起動が必要なもの以外は、システムA、Bでなるべく別の時間帯でのアプリのメンテナンスやパラメータの変更を独立してできるようにしたいと考えています。

    2015年7月24日 5:34
  • aviator__さんが書いているようにIISで分割するとしたら「サイト」になります。

    サイトごとにアドレスを割り振るかホストヘッダーで割り振るかは設計次第です。

    各サイトのアプリケーションに対してアプリケーションプールを割り当てることになります。再起動はサイト単位でもアプリケーションプール単位でも可能です。

    SQLへの接続は各アプリケーションのなかでのSQLServerへの接続方法によるのでアプリケーションプールのアカウントにSQLServerへの権限割り当てとも限らないかと。

    SQLServerの各インスタンスごとにセキュリティプリンシパルを的確に割り当てること、アプリケーションからの接続方法を考慮することで

    独立性は保てるかと思います。

    2015年7月24日 8:09