![]() |
|
Spaces home The Next Web ブログPhotosProfileFriendsMore ![]() | ![]() |
このスペースにアクセスしていただき、ありがとうございます。 |
The Next Web ブログマイクロソフトで次世代 Web プラットフォーム推進を担当しているチームメンバーのブログ
June 30 Hyper-V における Linux 統合コンポーネントの利点こんにちは。
Next Web 推進部の物江です。 さて、先日は Hyper-V 仮想マシンへの SUSE Linux セットアップ方法について書きましたが、今回はそのつづきとして "Linux 統合コンポーネント" の利点について書いてみたいと思います。
"Linux 統合コンポーネント" とは、Hyper-V 上にゲスト OS としてインストールされた Linux にインストールすることで、そのパフォーマンスの向上をはたしてくれるものです。
Windows Server 2008 の Hyper-V は、Microkernelized ハイパーバイザであり、ハードウェアドライバは仮想マシン上で実行されます(エミュレーションされるということです)。そのため物理的なハードウェアドライバはホスト OS 上にしか存在しません。
この仕組みにより、ゲスト OS のイメージが格納された vhd ファイルを、ハードウェア構成の違う別マシンの Hyper-V にマウントしてもそのまま正常に動作させることが可能です。
しかしながら、仮想マシンでエミュレーションされる部分に関してはパフォーマンスは低下します。
このパフォーマンスの低下を防ぐために、Windows XP SP3、Windows Server 2003 SP2、Windows Vista SP1 では VSC (Virtual Service Client) という、カーネルモードで動作する(※)仮想マシン用のドライバが用意されており、これを使用することでほとんど実機の動作と変わらないパフォーマンスで動作させることができます。
(※VSC を使用しない場合、ユーザーモードのエミュレーションが行われる)
この VSC とその他の操作上の機能をゲスト OS の Linux に提供するのが "Linux 統合コンポーネント" です。
ゲスト OS の Linux に "Linux 統合コンポーネント" をインストールすることにより、Hyper-V 上で高いパフォーマンスで動作することができます。
現在、"Linux 統合コンポーネント" が正式に提供されているのは Novell さんの SUSE Linux のみですが、今後対応する Linux を増やしていく予定とのことです。
ちなみに SUSE Linux のハイパーバイザ仮想環境、Xen にも Windiws Server 2008 用に VSC のようなモジュールが用意されており、SUSE の Xen 上でゲスト OS として動作する Windows Server 2008 にこのモジュールをインストールすることで、パフォーマンスを落とすことなく動作させることが可能になります。
そんなわけで、Hyper-V 上で Linux を運用したいと方は、ぜひ SUSE Linux をご選択ください。
その他
=======
MSDN オフラインセミナー『IIS 7.0 と ASP.NET を組み合わせた Web サイト構築手法』 でいただいた以下の質問について回答させていただきます。
質問
----
IIS7 に独自の認証プロバイダを複数追加して有効にした場合、どのような動作になるのか?
回答
----
(※ 回答は認証モジュールが .NET で作成されていることを前提としています)
.NET モジュールとして作成された認証プロバイダは web.config 内、<system.webServer><module> 要素に追加され、同様の役割であれば <module> 要素に追加された順番で実行されます。
よって、複数の認証プロバイダを登録して有効にした場合は、処理の内容にもよりますが、複数の認証処理が <module> 要素に追加された順番で実行されると思われます。
ではまた。
物江 June 24 Hyper-V 仮想マシンへの SUSE Linux セットアップ方法こんにちは。
Next Web 推進部の物江です。 今日は、Hyper-V 上に SUSE Linux 10 をインストール方法について書いてみたいと思います。 数ある Linux ソリューションの中からなぜ今回 SUSE Linux を取り上げるかというと、配布元の Novell さんと SUSE Linux で協業しているから、といった大人の事情以外にも仕組み的なメリットがあるからです。メリットについては後述します。 ちなみに "SUSE" は "すぅぢぃ"ではなく"すぅずぇ" と読みます。Novell の人から聞いたので本当です。
さて、Hyper-V 上に SUSE Linux 10 をインストールするための具体的な手順は次のとおりです。
準備 ==== SUSE Linux インストールメディアの入手
------------------------------------- Novell さんのサイトよりインストールメディアの ISO イメージを入手してください。 入手した ISO イメージを適宜 DVD メディアに焼くなどしてください(※)
※ ISO イメージのままでも仮想マシンにインストールすることができます。 Hyper-V 上に仮想マシンを作成する -------------------------------- 1. [管理ツール] から [Hyper-V Manager] を起動 2. 画面左のツリーより、サーバーを選択 3. 画面右の [操作] パネルより [新規]-[仮想マシン] を選択 4. [新しい仮想マシン]ウィザードが開始され [開始する前に]という画面が表示されるので [次へ] ボタンをクリック 5. [名前と場所の指定]画面が表示されるので、[名前]に任意の名前を入力し [次へ] ボタンをクリック 6. [メモリの割り当て]画面が表示されるので適宜必要なメモリを割り当て[次へ]ボタンをクリック 7. [ネットワークの構成]画面が表示されるので、[接続]ドロップダウンボックスを[接続しない]のまま [次へ]ボタンをクリック 8. [仮想ハードディスクの接続]画面が表示されるので [サイズ] に必要と思われるディスク容量を指定して [完了]ボタンをクリック 仮想マシンへのインストールメディアの割り当て -------------------------------------------- 1. Hyper-V Manager の[仮想マシン] リストより、作成した仮想マシンを選択して右クリックし、表示されたショートカットメニューより、[設定]を選択 2. 選択した仮想マシンの設定画面が表示されるので、画面左のツリービューより [DVD ドライブ] を選択 3. インストールイメージを DVD/CD のメディアで持っている場合は、オプションボタン[物理 CD/DVD ドライブ]を選択 ISO イメージで持っている場合は、オプションボタン[イメージファイル]を選択し、[参照] ボタンを使用して ISO イメージを参照させ [OK] ボタンをクリック SUSE Linux 10 のインストール ============================ 1. ドライブにインストールメディアをセット 2. Hyper-V Manager で、目的の仮想マシンをダブルクリック
3. 仮想マシンのウィンドウが表示されるので、メニュー[操作] - [開始] を選択
4. インストール Disk を入れてブートすると "To Start Installation enter 'linux' and press <return>." とメッセージが表示さるので、boot プロンプトに "linux" と入力して [Enter] キーを押下
2. リストボックスに言語の選択画面が表示されるのでお好みの言語を選択して[次へ]
3. [ライセンス同意] の画面が表示されるので、ライセンス条項をよく読み、納得できたら オプションボタン[はい、ライセンスに同意します。]にチェックを付けて [次へ] ボタンをクリック
4. [インストールモード]の画面が表示されるので[モード選択]、[新規インストール]オプションボタンにチェックがついていることを確認して[次へ]ボタンをクリック
5. [時計とタイムゾーン]の画面が表示されるので、[地域]リストから[アジア]を選択し、[タイムゾーン]から"東京" を選択し、[次へ] ボタンをクリック
6. [インストールの設定]画面が表示されるので、[変更]ボタン - [ソフトウェア] を選択
6-1. [ソフトウェアの選択およびシステムタスク]画面が表示されるので、左側のリストより [開発] - [C/C++ Compiler コンパイラとツール] にチェックをつけて [了解] ボタンをクリック
6-2. [YaST2] ウィンドウに "AdobeICCProfiles" のライセンスアグリーメントが表示されるので、内容をよく読み [了解] ボタンをクリック
6-3. [YaST2] ウィンドウに "agfa-fonts" のライセンスアグリーメントが表示されるので [了解] ボタンをクリック
6-4. [YaST2] ウィンドウに "flash-Player" のライセンスアグリーメントが表示されるので [了解] ボタンをクリック
6-5. [インストールの設定]画面に戻るので、[了解] ボタンをクリック
7. "インストールを確認しますか?" というメッセージが表示されるので、とくに確認の必要がなければ [インストールする] ボタンを、あの頃の自分に戻って確かめたいことがある場合は[戻る]ボタンをクリック
8. [ハードディスクの準備]、[パッケージのインストール] と画面が変わるので完了するまで落ち着いて待つ。
9. 自動的にリブートされた後、[システム管理者「root」のパスワード] 画面が表示されるので [ルートユーザーのパスワード]、[パスワードの確認] に、管理者のパスワードとして設定したいワードを入力して [次へ] ボタンをクリック
10. [ホスト名およびドメイン名]の画面が表示されるので、規定のホスト名が気に入らない場合は [ホスト名] の内容を変更して [次へ] ボタンをクリック
11. [ネットワーク設定] 画面ではネットワークカードが認識されませんが気にせずに [次へ] ボタンをクリック
12. [ネットワーク環境の保存] 画面が表示されたあと [インターネットの接続テスト] 画面が表示さるので、オプションボタン [テストをスキップする] にチェックを付けて [次へ] ボタンをクリック
13. [ユーザー認証方法] の画面が表示されるので オプションボタン[ローカル]を選択し、[次へ] ボタンをクリック
14. [新規のローカルユーザ] 画面が表示されるので、ユーザフルネーム、名前、パスワードを適宜設定し [次へ] ボタンをクリック
15. SUSE Linux のリリースノートが表示されるので [次へ] ボタンをクリック
16. [ハードウェア設定] の画面が表示されるので、問題ない場合、あるいは問題があったも自分ではどうにもできなさそうな場合は [次へ] ボタンをクリック
17. [インストールが完了しました] 画面が表示されるので、[完了] ボタンをクリック
18. 仮想マシンがリブートされ、SUSE Linux が表示されるので、インストール中に設定したユーザーID とパスワードでログオン
以上で、SUSE Linux のインストールが完了です。
SUSE Linux ネットワークカードの認識 ----------------------------------- 仮想マシンへ SUSE Linux をインストールしただけでは、ネットワークカードを認識しません。 認識させる方法は 2 つあります。 まず一番簡単な方法は、Hyper-V の各 Virtual Machine の [設定] 内、[ハードウェア] の追加で、"レガシーネットワークアダプタ" を追加します。
すると SUSE のほうで自動的に Dec のチップ (どうもこのカードのチップは、Dec から Intel に買われたという経緯があるようです。) を積んだ LAN カードとして検出し、認識してくれます。 もう一つの方法は、以下の Microsoft Connect のサイトから Linux 統合コンポーネントをダウンロードして、Readme の手順に従いインストールする方法です。これらの統合コンポーネントにより、Xen 対応の Linux を使用でき、VSP/VSC アーキテクチャの利点を享受し、パフォーマンスが向上されます。
『Microsoft Connect』
http://connect.microsoft.com/ ちなみにこの方法を行うには、標準セットアップされた SUSE ではだめで、C++ のコンパイラを追加セットアップしておく必要があります。
思いのほかインストール手順の説明が長くなってしまいましたので、Linux 統合コンポーネントの利点については次回記述させていただきます。
ではまた。
物江
June 19 Expression Blend 2.5 June Preview 2008 日本語版こんにちは。 Silverlight 2 Beta 2に対応したExpression Blend 2.5 June Previewの日本語版がリリースされました。 これで、Silverlight 2 Beta 2 の開発環境が日本語で揃いましたね。 朝岡 絵里子 June 18 PHP on IISスペシャルセミナーみなさん、こんにちわ。
Next Web推進部の渡辺です。
昨日、「 PHP on IIS スペシャルセミナー 」、無事終了いたしました。
18:30からの開催にも関わらず、多くの方に参加いただきました。ありがとうございました。
急遽、なれない進行役をつとめさせていただきましたが、拙い司会で大変失礼しました。
セミナーのときにも言いましたが、狙いとしては、BOFという感じで、少し寛いだ雰囲気で、
ある特定のテーマ(今回はPHP on IIS)に的を絞った濃いセッションを開催できればと思っていました。
司会はともかく、担当者こだわりのサンドウィッチ とセッションのほうは、かなり充実した内容だったのではないでしょうか?
詳細なセッションレポートは、こちらも ご覧ください。
セッションは、まず、ブレインウェーブ株式会社の藤野様と須山様による次のセッションが行われました。
「 PHPによる高品質Webシステム開発:Zend Framework + OPTIMA概要 」 (藤野さん担当)
「 PHP on IIS(Windows)パフォーマンステスト結果公表 」 (須山さん担当)
お二人とも、LAMPでのPHP開発経験が豊富で、その対比で、Windows(IIS)上でのPHP開発について
興味深い話をされていました。Microsoftのセミナーですが、内容は、非常に中立的なものだったと思います。
次に、山田祥寛さんの次のセッションが行われました。
「 PHP5 時代のアプリケーション開発事情 」
一昔前、Javaに関わっていた私から見ると、Javaが広がっていた歴史と同じような過程をPHPも歩んでいるのかなという
印象を強く持ちました。フレームワークの乱立、淘汰、デファクトの成立といった感じでPHPも推移していくのでしょうか?
RubyやPythonにも同じことが言えるのかもしれないのですが、Lightweight Languageの手軽さを失うことなく、
ミッションクリティカル(大規模)なシステム開発に耐えうるようなフレームワークが普及してくるのかどうかに、
個人的には、注目しています。
最後に、弊社より、パートナープログラムの説明がありました。
その中でも、Microsoft Action Pack サブスクリプション というパートナー特典は、
紹介するたびに、驚かれる方が多い有益な特典ですので、今後とも積極的に啓蒙していきたいと思っています。
渡辺
June 17 [IIS7] Web サイトに ASP.NET フォーム認証を適用する方法こんにちは、物江です。
前回の投稿で「次回は SUSE Linux のインストール...」 と書いておきながら、今回は、先週行われました MSDN オフラインセミナー『IIS 7.0 と ASP.NET を組み合わせた Web サイト構築手法』の補足として、IIS7 上の Web サイトにたいして ASP.NET フォーム認証を適用する手順について書いてみたいと思います。
さて、ASP.NETフォーム 認証ってなに? という方もいると思うので簡単に説明しておきましょう。
ASP.NET フォーム認証とは、ASP.NET アプリケーションにそれ独自の認証処理を実装するための仕組みです。
この ASP.NET 認証は、アプリケーション単位でアカウントベースを持たさせることが可能であるため、コンピューターや Windows ドメイン上にいちいちユーザーアカウントを作る必要もなく、また、ログオン画面なども自由に作成できるという、非常に小回りがきいて便利なものでした。
しかし、惜しむらくは、前バージョンの IIS では、ASP.NETフォーム 認証によるアクセス制御は ASP.NET が管理するファイル (拡張子が aspx とか ascx とか ashx とか) にしか有効ではありませんでした。
つまり、ASP.NET アプリケーションに ASP.NET フォーム認証を適用しても、アプリケーション内の ASP.NET で管理されないファイル (拡張子が htm とか jpg とか gif とか) に対して、直接 URL を指定された場合は、そのアクセスを制御することはできませんでした。
IIS7 では機能のモジュール化に伴うパイプラインの変更により、ASP.NET フォーム認証を使用して ASP.NET 以外のファイルに対してアクセス制御を行えるのはもちろんのこと、ASP.NET アプリケーションを作成しなくてもその機能を IIS7 の認証方式の一つとして使用することができます。
以降、設定手順です。
準備
==== ・SQL Server をインストール ・IIS の追加セットアップで [フォーム認証]、[URL 認証] をインストール ・login.aspx を作成し、目的の仮想ディレクトリに配置 login.aspx の内容
--------------- <html> <head> <title>Login to my blog</title> </head> <body> <form runat="server"> <asp:Login runat="server" /> </form> </body> </html> 設定手順
======== 1. [スタート] ボタン – [コントロールパネル] – [管理ツール] から [インターネット インフォメーション サービス(IIS) マネージャ] (※以下 [IIS マネージャー ] と表記) を起動 2. 画面左のツリーを展開し、目的の仮想ディレクトリを選択 3. 仮想ディレクトリのアイコンがフォルダアイコンの場合は、マウスの右ボタンをクリックし、表示されたコンテキストメニューより [アプリケーションへの変換] を選択 4. .NET ユーザーの作成 4-1. 画面右の [機能ビュー] より [.NET ユーザー] をダブルクリック
4-2. [.NET ユーザー] 設定画面の右 [操作] パネルから [追加...] リンクをクリック 4-3. [.NET ユーザーアカウントの詳細] 画面が表示されるので各項目に適切な値を入力し [OK] ボタンをクリック 5. フォーム認証の有効化 5-1. [機能ビュー] より [認証] アイコンをダブルクリック 5-2. [認証] の設定画面が表示され、使用可能な認証方式の一覧が表示されるので、”フォーム認証”、”匿名認証” を “有効” に設定し、他は “無効” に設定 5-3. 認証方式の一覧の “フォーム認証” 上でマウスの右ボタンをクリックし、表示されたコンテキストメニューより [編集...] を選択 5-4. [フォーム認証設定の編集] ダイアログボックスが表示されるので、同ダイアログボックスの [ログイン URL] の内容が “login.aspx” になっていることを確認 6. 認証規則の設定 6-1. [機能ビュー] より [認証規則] アイコンをダブルクリック 6-2. [認証規則] の設定が面が表示されるので、画面右の [操作] パネルから [拒否規則の追加...] リンクをクリック 6-3. [拒否の認証規則の設定] ダイアログボックスが表示されるので、[この Web コンテンツのアクセスを拒否する : ] の項目で、オプションボタン ”すべての匿名ユーザー” にチェックを付け [OK] ボタンをクリック
7. web.config ファイルの編集 7-1. エクスプローラーを使用して目的の仮想ディレクトリの物理パスにアクセス 7-2. web.config ファイルをメモ帳でオープン 7-3. <system.webServer> 要素に <modules> があるか確認し、なければ追加 7-4. <modules> 要素内を以下のように設定 <modules> <remove name="FormsAuthentication" /> <add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" /> </modules> 7-5. web.config ファイルを上書き保存 8.設定を行った仮想ディレクトリ内のコンテンツにアクセスし、ログイン用ダイアログボックスが表示されるか確認 9. 作成した .NET ユーザーの情報をログイン画面に入力し、ログインすることが可能か確認 以上で設定は完了です。
以下のドキュメントで紹介されているように php で作成されたアプリケーションに適用することも可能です。
『IIS7-統合 ASP.NET パイプラインでアプリケーションを拡張する』
次回は Hyper-V のゲスト OS として SUSE Linux をインストールする方法か、FTP7 への ASP.NET 認証方法について書きたいと思います。
ではまた。
|
|
|||||||||||||||||||
|
|