[Info]Windows Azure 90日間 無料パス (東北地方太平洋沖地震 対応) をご利用下さい!

東日本大震災の被災者の皆様、またそのご家族や関係者の皆様、心よりお見舞い申し上げます。 東京の街を歩けば、ガソリンスタンドで渋滞が起きていたり、コンビニの棚が空っぽだったりすることを除けば、とても穏やかないつものような日々が続いているように見えます。でも、本日 (3 月 13 日) 現在、こうしている今も被災地で、被災された皆様はそれぞれの戦いをされています。私事ながら、私も親戚と友人が被災地に住んでおり、いまだ連絡が取れない状況が続いております。そんな中で、弊社に何ができるのか、有志たちが考え続けております。 その一つの形として、Windows Azure Platform 無料パス(クレジットカード登録不要、90日間) が開始されました。 利用の前段階に必要な処理(アクティベーション)も、即日対応となっています。通常は 3 日前後いただいておりましたが、即日です。 また通常の Windows Azure 無料パスは 30 日間の有効期限がありますが今回のプロモーション コードをご利用いただいた場合、90 日間ご利用頂くことが可能です。被災者の皆様が直接今使うことではありませんが、被災された方を支援する方々がこちらを情報伝達手段などに利用頂くことで、スムーズに対応を進めていただくことが可能になるかもしれません。どうか、お役立て頂ければ幸いです。 Windows Azure Platform 無料パス (東北地方太平洋沖地震 対応用) http://windowsazurepass.com/?Campid=F3313E69-464C-E011-98E3-001F29C8E9A8 プロモーションコードは AZURE312 です。 また、Azure 利用に関するご相談は twitter.com で以下のハッシュタグをつけて tweet してみてください。 #JAZUG (Japan Azure Users Group) https://twitter.com/search/%23JAZUG #AzureJP (Windows Azure 日本語情報) https://twitter.com/search/%23azurejp 参考 MSDN Windows Azure デベロッパーセンター…

0

[PowerShell] PS1 ファイル実行時にとる引数をコマンドレットみたいにタブ補完したい!

みなさんごきげんよう。ういこです。花粉はビシバシ飛んでいるのに寒くて仕方ないアンビバレンツな日々ですが皆様いかがお過ごしでしょうか。 今日は、「コマンドレットみたいにボクの PS1 ファイルの引数もタブ補完させる方法」をご紹介します。対象は PowerShell v1.0 – 2.0 共通です。 【今日のお題】 タブ補完出来たっていいじゃないか、PS1 ファイルだって PowerShell だもの。 by ういこう a. PowerShell のタブ補完の素晴らしさに思いを馳せる PowerShell がすてきだな、と思わせてくれる瞬間は、何といっても「あのすさまじく長いこともあるコマンドレットの名前をタブでガッツリ補完してくれる」というあの至れり尽くせりな感じ」であると私は思います。正直「コマンドレット名…なんでこんなに長いのさ…」と思うなが~いコマンドレット名もいっぱいありますが、大丈夫!ちょっと打ち込んで、タブを打てばどこかの黒い執事さん張りに「あなたのお探しのコマンドレットはこれでございましょうか」くらいの勢いで提案してくれます。 素敵! ありがとう PowerShell!これでうろ覚えでも使えるよ!ちなみにカレントディレクトリにあるファイルも補完してくれちゃったりします。これはコマンド プロンプトと同じですね。 例 コマンドレットを探してみよう (Get-ADAccountAuthorizationGroup) get-a まで入力して、おもむろにタブキーを押そう 候補を出してくれますよ!”Get-ADAccountAuthorizationGroup”、な、ながっ!! ※ すぐに結果だけほしいの…というあなたには、あるいは get-help get-a* のように、ワイルドカードで一気に出しちゃうという手もお勧めです さて。それで、タブ補完って、実はコマンドレット名だけじゃなくて、そのコマンドレットの引数まで出してくれるんですよ。 これがまた特に switch と呼ばれる、変数がほしいわけじゃなくて、処理を分岐させる判断のために使うタイプの引数とかに威力を発揮。なが~い引数名いちいち打ってられないじゃないですか。だってタイプミスしたらまた長いの打ち直しだし。 上記のコマンドレットを例にとると、いくつか引数を取りますが、いちいち Get-Help で見るの面倒。もしくはうろ覚えで機能は覚えてるけど引数名超覚えてないという方も大丈夫。- (ハイフン) を打って、タブを打つと、引数名まで保管してくれます。 いやほんと便利ですよね。 b. PS1 (PowerShell スクリプト ファイル) にも引数を取るつくりの場合、タブ補完って使えないのかな? コマンドレットがバリ便利ということはいやってほどわかりますが、それを組み合わせてスクリプト ファイルにした場合、引数を取ることってありえますね。そうした場合、PS1 実行時に使う引数名をコマンドレットみたいに補完出来たらいいなぁと思うことがあるのではないでしょうか。…

0

[Info] ライフサイクル : .NET Framework 2.0 と Visual Studio 2005 は 2011/04 にメインサポート期間終了、延長サポートに移行します

みなさんごきげんよう。ういこです。今日はひな祭りです(2011/03/03 現在)が、大人の階段を登りきった私には関係ないですよ。 さて本日はそんな自虐的な 3x 歳の乙女心より .NET と VS2005 のライフサイクルの話をご紹介させていただきますね。 【今日のお題】 ・.NET Framework 3.0 以降の新サポート ライフサイクルポリシーを再確認しよう ・Visual Studio 2005 および .NET Framework 2.0 のメインストリームは 2011/04/12 に終了 ILM 2007 FP1 は .NET Framework 2.0 です。ルール拡張の開発によく Visual Studio 2005 を使われているお客様もいらっしゃるかと思います。 直接 ILM 一家の守備範囲にかかわる話ではないのですが、ご参考になれば幸いです。 ちなみにライフサイクル(含サービスパック ライフサイクルポリシー)って何?!という方は、以下の記事をご参照いただいてから読み進めていただくとわかりやすいかもしれません。 [Windows 7 / Virtual PC] XP Mode のサポート期間(ライフサイクル)っていつまでなの? http://blogs.technet.com/b/jpilmblg/archive/2009/12/16/windows-7-virtual-pc-xp-mode.aspx [Windows XP] サポートライフサイクル :…

0

外部サービスに依存した処理をPC起動直後に呼び出す場合はサービス起動タイミングによって失敗する可能性を考慮する必要がある

みなさんごきげんよう。ういこです。私事ですが顔面半分にビッシリと赤い発疹がでて、洒落じゃなく顔面崩壊してますが皆様はいかがお過ごしでしょうか。本日は「外部サービスに依存した処理(しかも WMI みたいな重い処理なんてとくに)は PC 起動直後のログオン時に動作するプログラム(ログオンスクリプトやサービス アプリケーション)内で使うこととあまり相性が良くない」というお話です。 今日、お隣のチームさんからスクリプトである機能を自動化したいとご相談をを受けまして、要件を見たら、なーんだ WMI つかえば簡単じゃないのよ奥様?これなら有りモノで何とかなるんじゃないの?WMI ってほんと調理に便利よね★ とふっと思ったんですが、WMI って RPC に依存しているんですよね。 ということは…PC 起動 → ログオン直後にスクリプト実行というタイミングでは、WMI サービス起動のタイミングがログオンスクリプトの動作タイミングに間に合わないことがあり得るわけです。 最近のマシンはメモリもハードディスクも脳みそ (CPU) も充実したリア充が多いので顕在化しないで済むことがほとんどだと思います。しかし、有りモノのマシンだってまだまだ現役!という環境とか、大量のサービスが動作するような環境では、この「起動タイミングによって残念」という状況も起こりえてしまいます。その状況をクリティカルととらえるか、あるいはまた動作させればいいじゃないか、で済むかはそれぞれのシステム要件次第ですが、おおむね起きることはないから大丈夫ということでも、ミッションクリティカルなシステム上で動かす場合や、サービス アプリケーションの場合などは、避けるべきと私は考えます。もし、今ログオン時に動作させるプログラムを設計されているならば、ぜひこの点について考慮の上プログラム設計とシステム要件を検討されればと思います。 今回は、デベロッパーサポート担当らしく、サービス アプリケーション作成を例にとりご案内したいと思います。 [1] サービスの起動順序は必ずしも人間の期待通りになるとは限らない あるサービスに依存しているサービスが自動起動になっている場合、依存先のサービスがあがったあとに自身のサービスが起動される動きになります。たとえば、WMI の場合、後述のように RPC に依存していることがわかります。さらに、RPC を見ると、RPC 自身も別のサービスに依存しています。 では、サービスの起動順序はどのようにマネージされているかですが、自動起動となっているサービスは、HKLM\SYSTEM\CurrentControlSet\Control\ServiceGroupOrder\List に格納されている順にフェーズ単位で起動されていきます。このレジストリ値に格納される順番がイコール起動順序となり、この順番で起動されていきます。よってレジストリを変更する事によって、起動順序を変更する事は可能です。 しかし、サービスの起動順序の変更をするということは、数十以上ある全サービスの起動順序に大きく影響を及ぼす可能性があるということを意識する必要があります。基本的にはサービス起動順序を変更することはお勧めしません。どうしても変更することが必要である場合は、可能な限り考えうる「重い」環境でじっくりと検証を実施することをお勧めいたします。また、可能であればですがそうしたサービスを用いない API などで処理ができないか検討することもよい方法です。 [2] 問題としてよくあげられる例 – サービス アプリケーションを作ったが動かない これまで挙げられた例としては、ログオン スクリプトなどのほか、サービス アプリケーションを作成していて、このサービスの起動時に依存先サービスを使った処理を実施していると制御が返ってこない、または極端にレスポンスが悪くなることがあるというものがあります。現象の出方はタイミングによるので様々ですが、例えば処理が遅い、依存サービスのタイムアウトに間に合わず起動失敗するなどの状況などがあります。これらの条件を満たし、かつイベント ID 7009 などがイベントログに記録されている場合はこれにあたる可能性が高いです。 サービスの所属グループはどこ?サービスの依存関係は変更できるの? 通常、サービスの起動および停止順序は、サービス単体の依存関係、サービスグループの依存関係で制御されています。サービスグループの起動される順番は下記のレジストリキーにおける List 値により確認する事が出来ます。 なお、グループに所属していないサービスもありますが、これは順番を変えることはできません。 HKEY_LOCAL_MACHINE…

0

[WMIは万能ではない] 大容量イベントログ取得時によくある問題と回避策 ~ Script からも wevtutil.exe が使える ~

皆さんごきげんよう。ういこです。今日はイベントログのとり方でよくある問題とその対処案についてのお話です。 運用管理をしていてあるある!なニーズとして、イベントログを定期的に保存して、出来ればアーカイブして保存しておきたいなんてことがあると思います。しかもバッチ処理にして、タスク スケジューラなんかで人間様がいなくてもサーバ内の小人さん動かして定期的に保存させちゃおうとか。そんなニーズ、ありませんか。 では、全国津々浦々のイベントログ大好き管理者様はどのようにしてイベントログの取得をされていますか。問い合わせに来るものを見る限りでは、WMI の Win32_NTLogEvent 、Win32_NTEventLog 、Win32_NTEventLogFile とか、その辺を使っていらっしゃる方が多い印象です。それも、VBScript が圧倒的に多く、PowerShell による対処などは殆どお問い合わせとしてあがってきていません。ただ、私は開発サポート部門ですので、OS の基盤(プラットフォーム)サポート部門では違うのかもしれませんね。 ではなぜ WMI が多く使われているのか。非常にカンタンに使うことが出来、かつ VBScript からも .NET Framework ベースのプログラムからもアンマネージ (C++) からも呼び出しやすいという、手軽さが訴求しているのだと思います。しかし、以前から WMI についてはカンタンな反面、RPC 、DCOM などに依存している、内部処理が複雑で遅い、重いといった不便な点についてご紹介してきたように、やはりすべていいことずくめというわけにはいきません。 特に問題なのは、WMI は内部でデータを扱うために持っている領域のサイズが少なく、ある程度サイズ拡張は出来るものの、数ギガバイトといった大容量のデータを取り扱う際にエラーが発生することが多いという点です。イベントログは扱うデータ量が半端なく大きいことが少なくないため、この「内部データ領域足りません問題」に直面することが非常に多いシナリオです。 WMI によるイベントログ保存時に発生しやすい問題 監査ログなどを仕掛けている場合、セキュリティ イベントログの肥大化が問題になることが多くあると思います。こうしたログに対し、WMI でイベントを取得しようとして以下のエラーが発生することが多くあります。また、これらのエラーは必ず発生するのではなく、WBEM_E_QUOTA_VIOLATION が発生したと思えば、次に取得処理を実行すると今度は WBEM_E_OUT_OF_MEMORY が発生するなど、揺らぎが良く見られます。 0x8004106c WBEM_E_QUOTA_VIOLATION    0x80041006 WBEM_E_OUT_OF_MEMORY 0x80041032 WBEM_E_CALL_CANCELLED (※ まれに 0x80041001 WBEM_E_FAILED という形で異常終了することもあり) 調整方法としては、WQL 文で取得してくるイベントログの時間帯を指定することで、一回に扱うデータサイズを減らすということしかありません。ただ、時間を指定しても、その時間帯にたまたまアクセスが集中し、ファイル監査のログが大量発生した場合などは、データサイズがスパイクするため結果としてエラーが発生する可能性があることは避けられません。 なぜこうしたエラーが起きるのか 0x8004106C (WBEM_E_QUOTA_VIOLATION) は、WMI サービスにより消費されるメモリが割り当てられたメモリの制限に達したことを意味します。また、このエラーが発生する状況下では、同じクエリを同じデータストアに対して実施した場合であってもリソースを多く消費しシステムが不安定になることを防ぐために処理をキャンセルすることがあり、その場合に 0x80041032…

0

[FIM/ILM] Password Change Notification Service (PCNS) 前提条件や注意点ってどんなことがあるの?

みなさんごきげんよう。ういこうです。もう明日から二月ですが本年もよろしくお願いします。 今年の一本目はみんな大好き PCNS についてです。といっても、PowerChute Network Shutdown ではないですよ。Password Change Notification Service ですよ。 PCNS についての詳しい話は英語でも構わなければ結構あるもんですが、たとえばこれから提案をしに行こうと思っていらっしゃる方などが知りたいようなまとまった情報はあまりないという噂を聞きましたので、ざっくりとまとめてみました。 後日、図などを加筆するかもしれません。 【今日のお題】 PCNS (Password Change Notification Service) の動作条件や注意事項などについて -a. PCNS の動作条件 PCNS が正しく動作するための前提条件は以下の四つがあります。これらすべての条件を満たしている必要があります。 1. パスワード更新に際し一定のプロトコルが使用可能であり、認証動作が成功することが保証されていること 2. Kerberos 相互領域認証が使用可能であること 3. RPC / DCOM の構成が適切になされていること 4. 適切にポートが構成されていること 1. パスワード更新に際し一定のプロトコルが使用可能であり、認証動作が成功することが保証されていること こちらは、ILM / FIM に限った話ではありません。 PCNS は、パスワード更新をドメイン コントローラで検知して、それを FIM サービスに通知します。パスワード更新がされたということを FIM が受け取ると、FIM はパスワードが変わった場合にそのパスワードを AD と同様に変更させたいデータストア(たとえば Oracle…

0

[Info] 年末年始の電話サポート窓口の休業予定 2010 – 2011

平素より弊社サポート サービスをご愛顧くださいましてありがとうございます。本日は年末年始の弊社サポートの予定についてのお知らせです。 今年も早いもので年末です。先生走ると書いて師走です。その割に 15 度とか気温が高くて師走感に欠ける感じですね。地球大丈夫でしょうか。 さて地球も大事ですが、まずは目の前のプロジェクトが大事ですよね。毎年の傾向として、年末はお問い合わせが非常に多くなりますので、早めに対応を迫られていらっしゃるお客様は、前倒しでお問い合わせ頂くことをお勧めいたします。 弊社では、年末年始の下記の期間に無償および有償電話サポート窓口を休業致します。 プレミアサポート、プロフェッショナルサポートも休業いたします。 ご迷惑をお掛け致しますが、何卒ご理解の程お願い申し上げます。 以下は平日のみサポートを提供している製品・土日サポート対応製品共通のスケジュールになります。(後述年末年始休業対象窓口を参照ください。XBOX はXBox.xom / サポートトップで別途ご確認をお願いいたします。) 月曜日 ~ 金曜日および土日サポート提供窓口およびパートナー様向けサポート (パートナー ビジネス支援サービスなど) 共通 ★ 2010 年 12 月 23 日 (木) 天皇誕生日   2010 年 12 月 29 日 (水) 年内最終営業日:主窓口 17:00 終業 ★ 2010 年 12 月 30 日 (木) ~ 12 月 31 日 (金) 年末休業 ★…

0

[WinXP] FIM 2010 セルフ サービス パスワード リセット クライアントは他のカスタム GINA を使うアプリケーションと共存できない

みなさんごきげんよう。ういこです。 今日は Windows XP における FIM 2010 セルフ サービス パスワード リセット クライアントとほかにカスタム GINA を使うアプリケーションは共存できないというお話しです。なお、Windows Vista 以降は GINA モデルではないので、複数の認証プロバイダを登録することができます。 カスタム GINA って何?二つ以上登録できるの? さて、いきなりタイトルにもある "カスタム GINA" とは何かですが、これはすごく簡単にいうと OS にログオンする際に Ctrl + Alt + Del でダイアログ ボックスを表示させる仕組みです。ただし、この仕組みは Windows XP までであり、Windows Vista 以降の OS では後述の認証プロバイダと呼ばれる機構に変わっています。   図 : WinXP の GINA (こっちは既定) と Windows 7 の認証プロバイダ この仕組みを行うモジュールを GINA (ジーナ、Graphical…

0

[ご参加いかがでしょう?] Microsoft BI / DWH Day – SQL Server Parallel Data Warehouse のお披露目です!!

みなさんごきげんよう。ういこです。 年末の見えてきてついおなかを下したり蕁麻疹だらけになったりしがちな今日この頃ですが、皆様いかがお過ごしでしょうか。 さて本日は SQL Server Parallel Data Warehouse のお披露目イベントについてご紹介させてください。 来る 12 月 7 日 (火曜日) に秋葉原の UDX ギャラリーにて、イベント 「Microsoft BI / DWH Day」 が開催される運びになりました。 あの超大規模並列処理(10~40台!??)を実現した SQL Server Parallel Data Warehouse のお披露目です!! FIM や ILM 管理者の皆様なら、バックエンドの実際のデータストアは SQL Server が担っていることをご存知と思います。2010/12/02 現在、FIM は SQL Server 2008 R2 の対応をすべく、開発本部が毎日のように激しく対応をしています。ですので、今すぐ…というわけではないですが、SQL Server 2008 R2 についてもぜひ、これを切っ掛けになじんでいただくことでスキルの幅を広げていただけるのではないかと思います。 ぜひぜひ、ご参加ください!今後のシステム管理の効率化などに役立つ情報が満載です。 お申込みはこちらから! https://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032468425&Culture=ja-JP Microsoft BI /…

0

[障害情報] ILM 2007 FP1 SP1 用 Fix build 3.3.1160.02 適用後 AD MA Export が “no-start-ma” で失敗する

本日はサポート技術情報 (KB) 982556 の Identity Lifecycle Manager 2007 Feature Pack 1 Service Pack 1 用の修正モジュール (build 3.3.1160.02) を適用した場合に AD 管理エージェント (AD MA) の Export 時に "no-start-ma" になる問題についてご報告いたします。この問題は製品の不具合による問題となります。 問題の概要 修正モジュールを適用後、AD MA の Export を実行しようとすると、Status が "no-start-ma" となり、Export ができなくなります。 なお、この問題は AD MA にて "Exchange 2010 Provisioning" を実施している場合に発生します。 Article ID: 982556 – Last Review: September 25, 2010 –…

0