実験室


このところ、英語OS環境でCitrixとSystemCenterしか触っていないので、日本語マシンに飢えてます。

気分転換の目的もあり、SharePoint Server 2010  (ベータ版)  を自宅サーバにインストールしてみました。

 

~準備~~~~~

評価環境の目的なので、スタンダード構成にて計画。システム要件を確認。

■ハードウェア、ソフトウェア要件の確認

ハードウェアおよびソフトウェアの要件を決定する (SharePoint Server 2010)

http://technet.microsoft.com/ja-jp/library/cc262485(office.14).aspx

…ソフトウェア要件が多すぎます(笑)

■インストール手順、その他注意事項

データベースが組み込まれた単一サーバーを展開する (SharePoint Server 2010)

http://technet.microsoft.com/ja-jp/library/cc263202(office.14).aspx

■動作環境

自宅のHyper-V環境にゲストOSとして、以下のSharePoint2010環境を用意

OS:Windows Server 2008 SP2(64bit)

メモリ割り当て:5GB

仮想プロセッサ割り当て:2

■資源の準備

Technetサブスクリプションのダウンロードサイトから、SharePoint 2010ベータ版をダウンロード。

②以下の必須コンポーネントをネットからダウロードし、マシンへ事前インストール。

Microsoft .NET Framework 3.5 SP1
SQL Server 2008 Express SP1
Microsoft "Geneva" Framework
Microsoft Sync Framework Runtime Version 1.0 (x64)
Microsoft Filter Pack 2.0
Microsoft Chart Controls for the Microsoft .NET Framework 3.5
Windows PowerShell 2.0 CTP3
SQL Server 2008 Native Client
Microsoft SQL Server 2008 Analysis Services ADOMD.NET
ADO.NET Data Services v1.5 CTP2

 

~インストール~~~

■Microsoft SharePoint 製品準備ツールの実行

ダウンロードしたSharePoint2010のインストールファイルを起動し「ソフトウェア必須コンポーネントのインストール」をクリックします。

image

必須コンポーネントの一覧が表示されます(多すぎ)。必須コンポーネントがマシンに入っていなければ、ネットから自動的にダウンロードする模様。けど、危険な香りがするので手動で事前にインストール済み。

image

同意して次へ

image

事前に必要となるソフトウェアは導入済みなので、以下のように「既にインストールされています」メッセージがコンポーネント毎に表示されます。これで、SharePoint2010をインストールする環境が出来ました。

image

 

 

SharePoint Server のインストール

「sharePoint serverのインストール」をクリック

image

キーの入力があります。私はTechnetサブスクリプションのキーを入力します。

image

次へ

image

 

MOSS2007と同じですね。ファーム構成では無いので「スタンドアロン」をクリックします。

image

インストールが開始されます。ここの時間がやたら長い。

image

諦めかけた時、MOSS2007と同様の画面が表示されたので、「閉じる」ボタン押下。

image

MOSS2007,SharePoint Services3.0と同じですね。「次へ」ボタン押下。

image

ここも同じですね。

image

完了ボタン押下

image

初期画面はサイト作成の画面でした。MOSSの時とは違いますね。発行サイトを作ってみます。

image

おぉ~、これが新バージョンですか。。。

image

[サイトの操作]が左上になりましたね。けど、表示メニューはMOSSと似ていますので直感的に判ります。

image

う”、office2007っぽい操作インターフェースが。。。

image

全体管理の画面も変わりましたが、メニューはMOSSと同じですね。

image

今度はチームサイトを作ってみた。

image

と、今日はここまで。

 

■全体的な感触

思いの他、MOSS2007と同じ部分が数多く残されているように思います。

MOSS2007→SharePoint 2010へのスキルチェンジは、想定よりも少しは楽かな?と期待しつつも、業務でやり始めたら英語とバグとの戦いになるでしょう。。。。

広告

 

SharePoint Servies3.0、MOSS 2007の標準パーツである「ディスカッション掲示板」ですが、Notesを使っていたお客さんからは「使いずらい」という意見をよく聞きます。そんなディスカッション掲示板ですが、Joelさんのブログにあったツールが面白そうなので習得用環境へ実験導入。

 

Install後、”サイトの機能”で、Quest Shared Web Parts for SharePointをアクティブにしてWebパーツを追加し、以下のezEditをクリック

image

以下のような設定画面が表示されますので、階層表示させたい既存のディスカッション掲示板を”ViewLists”で選択。また、Display Fieldsに表示させたい列を追加。

image

 

標準のディスカッション掲示板ではこんな感じですが。。。

image

展開式の階層表示が出来ます。

image

添付ファイルがある返信には、”添付ファイル”の列にフラグが立つようです。

image

見たい記事をクリックすると、画面下には本文のビューが表示されます。

image

 

ヘルプを選ぶと

image

けっこう詳しいヘルプが表示されますので、詳しい使い方はヘルプを見ながらですね。

image

 

う~ん、楽しいWebパーツです。無論、ユーザへ解放するには入念な協議とテストが必要ですね。

 

超小ネタを。。。

SharePoint Designerを使って、昔懐かしいカウンターを設置してみます。

 

①カウンターを設置するサイトをSPDで開き、[挿入]-[Webコンポーネント]

image

 

②以下の画面で設置したいカウンタを選択

image

③桁数などを設定

image

 

④カウンタが設置されました。

image

 

な、懐かしいカウンタですね。。。

テレホーダイの時間帯になると、ダイアルアップでネット接続していた時代を思い出します。

 

去年、Microsoft SharePoint Team Blogでリリースが予告されていたDisposeチェックツールですが、先週末にリリースされました。ふふふ。待ってました!!

http://blogs.msdn.com/sharepoint/archive/2009/01/29/spdisposecheck-released.aspx

これは、独自に開発したWEBパーツなどで、SPSiteやSPWebのDispose処理に問題が無いか?などをチェックするツールです。このツールは開発者だけでは無く、情シスの人が納品されたWebパーツやフリーのWebパーツを導入する前に、念の為にチェックする目的でも有効と思います。

 

■実験

このツール、VisualStudioなどの開発環境は不要のようです。事務用のWindowsXP上で試してみます。

http://code.msdn.microsoft.com/SPDisposeCheck

で、SPDisposeCheck toolをダウンロードして、PCにインストール。

 

使い方はいたって簡単。 サンプルのexeファイル(SPDisposeExamples.exe)が付属しているので、試しに以下を実行。

①SharePoint Dispose Checkをインストールしたファイルダへ移動。

C:\Program Files\Microsoft\SharePoint Dispose Check>

②以下のコマンドを実行

SPDisposeCheck.exe  SPDisposeExamples.exe

注:基本的な書式は

  SPDisposeCheck.exe   (開発したアセンブリファイル[exe,DLL])

 

すると、以下のような検出結果が表示されます。

ID: SPDisposeCheckID_150
Module: SPDisposeExamples.exe
Method: SPDisposeExamples.SPWebCollectionLeak.SPWebCollectionAddLeak(System.String)
Statement: innerWeb := webCollection.{Microsoft.SharePoint.SPWebCollection}Add(strWebUrl)
Source: C:\ROGERLA\Demo\SPDisposeExamples\SPWebCollectionLeak.cs
Line: 40
Notes:   Disposable type not disposed: Microsoft.SharePoint.SPWeb
         ***This may be a false positive depending on how the type was created or if it is disposed outside the current scope
More Information: http://blogs.msdn.com/rogerla/archive/2008/02/12/sharepoint-20
07-and-wss-3-0-dispose-patterns-by-example.aspx#SPDisposeCheckID_150
———————————————————-

Total Found: 18

う~ん、便利。サンプルファイルには18か所も問題があるってトコでしょうか?

尚、Readmeを見ると、以下のオプションがあります。

SPDisposeCheck <path to assemblies> -debug –xml <file>

-debug adds additional information.

-xml outputs the errors to an XML file instead of text

 

 

■Dispose処理なしの影響

SPSiteやSPWebにはDispose処理が必要であり、Dispose処理が無い場合の影響については以下のサイトに情報があります。

http://msdn.microsoft.com/ja-jp/library/bb687949.aspx

****抜粋************************************************************************

ほとんどの Web パーツ開発者は、SharePoint オブジェクトを破棄(Dispose)する必要があること、およびその理由を認識していません。ガーベジ コレクションによって自動的にこの機能が実行されると考えているようですが、いかなる場合も正しくありません。

(Dispose処理が無いと) ユーザー負荷が小さいうちは、前述のシナリオでは問題が発生しません。しかし、ユーザー負荷が増大するにつれ、パフォーマンスの低下、ユーザー タイムアウト、予期しないエラー、また場合によっては、SharePoint アプリケーションまたはアプリケーション プールの障害が発生し始める可能性があります。システムをヒットするユーザー数が増大するにつれ、この状況は悪化します。メモリ使用量が増大するにつれ、システムの動作がおかしくなり始めます。たとえば、パフォーマンスが低下したり、アプリケーション プールがリサイクルされるか、iisreset コマンドが発行されるまで、障害状態になったりするなどします

**********************************************************************************

う~ん、恐ろしい。実際、Dispose処理の行っていないWebパーツを複数配置し、負荷ツールで50~300名以上の負荷をかけ続けたら、w3p.exeのメモリ使用量が増加し、WebサーバのCPU負荷率も上昇しました。タスクマネージャーで見るとw3wp.exeがダントツ一番でメモリを使い、CPUを食いつぶしているのが分かります。この時、IISresetやアプリケーションプールのリサイクルを実行すると、メモリが解放されると同時にCPU使用率も下がりました。この点の動きは以下に記載があります。

http://support.microsoft.com/kb/954830/ja

http://support.microsoft.com/kb/954828/ja

****抜粋************************************************************************

32 bit 環境では ASP.NET Web のホスト プロセス (aspnet_wp.exe または w3wp.exe) のメモリ使用量が 800 MB を超えると OutOfMemoryException が発生し始め、1 GB を超えると GC の負荷により CPU 使用率が上昇し始める事が知られています。なお、この数値はあくまで一般的な経験値であり、アプリケーションの構成や実装によっては、300 MB 程度で OutOfMemoryException が発生する事例や、1.8 GB 使用していても例外が発生しない事例も確認されています。

*********************************************************************************

Dispose処理がされていないと、w3wp.exeのメモリ使用量が上昇し、WebサーバのCPU負荷が高くなる。結果、ユーザの目には「MOSSサイトの表示に時間がかかる」という結果が待ち受けているようです。よって、このDisposeチェックツールによる確認作業は有効かと思います。

 

■備考

/3GBとかWebガーデンについては、MOSSの場合は非推奨であるとの記述が以下にあります。

http://technet.microsoft.com/ja-jp/library/cc298550.aspx

MOSSでのアプリケーションプールのリサイクルについては、以下に記載があります。

http://technet.microsoft.com/ja-jp/library/cc850698.aspx

 

SharePointでの性能テスト(負荷テスト)のツールを再考中の私です。

で、調べたらWCATがVer6.3になっていました。

う~ん、去年、一番忙しい時期にリリースされてましたな。。。全然、気が付きませんでした。

WCAT6.3は、無償でありながらも、負荷を制御するマシンと、実際に負荷をかけるマシンを分けられるのが素敵です。MOSSをNTLMで構築している場合は、ちょっと使えるかも。。。

 

■基本を押さえる

以下のサイトで、WCAT6.3のインストール手順や使い方などを奥主さんがWebcastで紹介しています。日本語万歳!MS社のエバンジェリスト、奥主さんに大感謝です!!

http://www.microsoft.com/japan/technet/community/events/dojo/online/self/7.mspx

http://www.microsoft.com/japan/technet/community/events/dojo/online/self/7-1.mspx

http://blogs.technet.com/hirookun/archive/2008/04/22/_1030_IIS7_1130_-MSC2008-_BB30C330B730E730F33088308A30_-_08FF4A307E30513009FF_.aspx

 

■ちょっと踏み込む

奥主さんのサイトで基本を押さえた後、WCAT6.3付属のマニュアル(英文59ページ)を読む前に、チェックしておきたいサイトを紹介します。コントローラとクライアントを分ける場合に参考になりました。

http://www.galcho.com/articles/StressTestingWCAT.aspx

って、英語サイトですが。。。基本的にSharePointと同様、WCAT6.3も使いこなす為には、英語を避けては通れないようです(笑)

 

■実験開始

WCAT6.3には、HTTPリクエストを自動作成してくれる機能はありません。手動で作る手間がかかります。無償なので文句は言えませんな。。。

付属のマニュアルを参照し、home.ubrに以下の記述を行い実行。この時、SharePointはNTLM認証構成です。

 

ユーザ名:user1

パスワード:Pass1234!

の場合

 

request
       {
           url="/Pages/default.aspx";
           statuscode = 401;          
       }

      request
       {
           url="/Pages/default.aspx";
           authentication = ntlm;
           username = "user1";
           password = "Pass1234!";           
           statuscode = 200;          
       }

 

IISのアクセスログとイベントログのセキュリティを見たところ、ちゃんと認証されたようです。

ただ、GET毎にこれを手動で作成する。。。う~ん、厳しい。言わずもがなですが、MOSSの操作をシュミレートする場合、上記の1リクエストだけでは無いですからね。。。奥主さんが紹介しているように、Log Parserを使ってIISログから作り込めないか?と、考え中です。

 

■関連記事

MS社の負荷テストツール

 

 

■その他、参考サイト

①HP社ドキュメント

http://h20271.www2.hp.com/ERC/downloads/4AA2-2938ENW.pdf

さすがHP社さん、かなりマニアックです。

 

②その他

以下のサイトのやり取りが参考になりました。

http://forums.iis.net/p/1147721/1862565.aspx

 

以前、

WSS3.0アプリケーション テンプレートを使ってみる

で、以下のようなエラー画面が表示されると書きました。

image

 

しかし、直りました。エラーになっていた部分は、以下のようになりました。

clip_image002

う~ん、それっぽくて楽しいですね。

ただ、”エンタープライズ環境で実践的に使える”と、いったパーツでは無いと思います。

本格的なプロジェクト管理ソリューションを検討し始めるトリガーとか、部内のみで趣味的に使うとか、利用範囲には要注意かと思います。

 

エラーの直し方ですが、導入手順の最後の方にちゃんと書いていました。

この手順を書いたMS社の方、ごめんなさいm(_ _)m

 

■手順

http://technet.microsoft.com/ja-jp/office/sharepointserver/cc952469.aspx

上記のサイトから、以下のドキュメントをDL

「Microsoft Office SharePoint Server 2007 自習書 すぐに使える業務テンプレート操作手順 」

直し方は、P92 “第3章 トラブルシューティング”に書かれていました。

 

Windows SharePoint Services 3.0 アプリケーション テンプレート: 全サーバー管理テンプレート

http://www.microsoft.com/downloads/details.aspx?FamilyId=AAE4CB5A-91D2-4F1B-9A45-3BB894E218F8&displaylang=ja

ずっと気になっていた、このテンプレートを実験してみました。

アプリケーションテンプレートコア(ApplicationTemplateCore.wsp)を入れた後、複数プロジェクト予算・進捗管理(BudgetingTrackingMultipleProjects.wsp)を入れて、サイトの作成を実行。

 

おぉ~、以下のようにサイトのテンプレートとして存在しています。早速、”複数プロジェクト予算・進捗管理”を選択してサイトを作成。

image

 

すると、以下のようにプロジェクト管理サイトが自動的に作成されました。ワクワクです。

image

 

おぉ~。まだ、何もしていないのに以下のようなグラフが表示されています。期待大です。

image

 

うむむ。。。SharePoint Designerでカスタマイズしているとお馴染みのメッセージが出てる。。。ちょい、手間をかける必要がありそうです。

image

 

データを適当に入れたら、自動的にグラフへ反映してました。ちょっと感動。

image

 

■参考資料

このテンプレートのインストール手順や各テンプレートの機能が詳しく紹介されています。

http://technet.microsoft.com/ja-jp/office/sharepointserver/cc952469.aspx

上記のサイトから、以下のドキュメントをDL

「Microsoft Office SharePoint Server 2007 自習書 すぐに使える業務テンプレート操作手順 」

次ページへ »