2012年4月21日土曜日

学校の教師と自動車教習所の教官

先週は複数社合同の新人研修(我々はMIX TRAINと呼んでいます)で、コンピュータ入門からネットワーク、そしてデータベースからプログラミングの基礎まで担当しました。

データベースをきちんと教えるのは初めてですし、プログラミングは10年以上ぶりですが、なんとか理解していただけたかと思います。

新人研修は、時間が長いことが多い上、報告書を読んだり、講師所感を書いたり、いろいろ忙しいのですが、受講者の反応が新鮮で、毎年楽しみにしています。

新人研修の内容が、受講者の動機付けになり、先輩社員が「今年の新入社員はよくできる」と言ってもらえるようになればいいのですが。

ところで、同僚の田中淳子が、ITメディアのブログで「「こんなに元気になりましたっ!」と病棟を訪ねることは医療従事者の喜びにつながるのだそうです」という記事を書いていました。

我々も、研修を提供したあとで「こんなに役に立ちました」とおっしゃっていただくときが一番やりがいを感じます。

ですが、あんまり面と向かって言われるのはちょっと恥ずかしいというか、「こういうとき、どういう顔すればいいのか、わからないの」っていう感じになってしまいます(オタク仲間からは「笑えばいいと思うよ」って言われると思いますが)。

そういうわけで、本当は嬉しいくせに「あ、そうですか」みたいな素っ気ない返事をしてしまいそうです(実際はもうちょっと丁寧にお礼を言います)。

教育関係の評論で有名な内田樹さんの著書「先生はえらい」に、学校の教師と、自動車教習所の教官について書いてありました。教習所では現場ですぐに役立つ技術を教えてくれるのに、たいていの人は教官の顔も名前も覚えていない。学校の授業内容が実生活で直接役立つことはあまりないのに、多くの人が顔と名前を覚えていて、人生が変わるほどの影響を受ける、ということだったと思います。

教育サービスの仕事は、特に技術教育の場合は自動車教習所に近い位置付けです。要するに役に立てばそれでいいわけで、担当講師のことなんか忘れてもらって構いません。講師の印象なんて、仕事には何の役にも立ちません。いっそ、研修を受けたことも忘れてもらって、全て自分で学んだと思ってもらった方がむしろ幸せです。それだけ自分の身に付いたということですからね。

2012年4月5日木曜日

Windows Developer Daysに行きます

仕事の都合が付いたので、4月24日(火)と25日(水)に開催される「Windows Developer Days」に参加します。私は開発者ではないので、もちろん一般参加です。

このイベント、あの手この手で宣伝されているので、何か大きな発表があるか、あるいはよっぽど集客できていないかどちらかだと思います。

Windows 8のイベントに人が来ないというのは考えにくいので、大きな発表があるのじゃないかと思います。

開発者の皆様へ ~ Windows 8 のアプリケーション開発を始めませんか。 | Windows Developer Days

2012年4月1日日曜日

Windows 8のServer Coreで動作するWebブラウザ

Windows 8では、Server Coreとしてインストールしたサーバーに、あとからGUIを追加したり、あるいはフルインストールしたサーバーにあとからGUIを抜いたりできます。

詳しくは、ASCII.jpの記事「ベータ版登場のWindows Server 8はServer Coreが基本に」をご覧ください。

Windows Serverは、バージョンが上がるたびにコマンド機能が追加され、Windows Server 2008ではほぼ全ての機能がコマンドでもGUIでも操作できます。

マイクロソフトは、特にPowerShellを重視しているようで、PowerShellでしか操作できない機能もいくつかあります。

従来は、コマンドごとに別々の体系だったのが、PowerShellでかなり統一されました。ネットワークの構成など、まだまだ改善すべき点もありますが、日常的な作業はそれほど不便はないはずです。

1つ残念なのが、Server CoreにWebブラウザがないことです。「サーバーはサーフボードではない」つまり「ネットサーフィンは目的ではない」とマイクロソフトの人は言ってました。その通りですが、Webにアクセスしたいこともあります。

たとえばWindows Update。Server CoreでもWindows Update機能はもちろん組み込まれています。sconfigコマンドを使えば、自動更新の構成も更新のダウンロードと適用もできます。しかし、適用する更新プログラムを自由に選択する機能がありません。

WSUSなどを使って、管理者が適用する更新を選択することを想定しているのでしょうが、単独で使うには不便です。

4月1日記: Windows 8のテキストブラウザ

どうやら、Windows 8ではServer CoreベースのWebブラウザが利用できるようになりそうです。

もともとServer CoreにもIEのエンジンは含まれているようです。マイクロソフトのセキュリティ更新のリストを見ているとIEの更新であるにもかかわらずServer Coreに適用しないといけないものがありました。

またServer CoreにもGUI機能が皆無というわけではありません。メモ帳やレジストリエディタはGUIアプリケーションとして動作します。

Windows 8には、どうやらLynxをベースにしたテキストブラウザが搭載されるようです。

Lynxは古くからあるブラウザで、GUIを一切使いません。ただし、現在のバージョンは(Win32版を使う限り)テキストウィンドウは使うようです。

Windows 8に搭載されるのがどういう形になるかは分かりませんが、メモ帳のような形式になるのではないかと予想しています。

Lynx

Win32版のLynx。Windows Updateに接続したところエラー画面が表示された。Windows 8の製品版が出る前には対応しているはず。

2012年3月27日火曜日

RDセッションホストと、RDセッションブローカー

今日は「マイクロソフト クライアント仮想化ソリューション(#50590) ~リモートデスクトップとVDI~」を担当しました。

1つ、答え切れなかった質問があるので、この場を借りてお答えします(1日の講習会だと調べきれないことがあります)。

【質問】
リモートデスクトップサービスで、リモートデスクトップセッションホスト(RDセッションホスト)を負荷分散しており、リモートデスクトップ接続ブローカー(RD接続ブローカー)を構成しています。

ここで、RDセッションホストとしてAとBの2台があるとします。両ホストはサーバーファームFを構成しています。

ユーザーXがファームFに接続したところ、Aにログオンしました。その後、Xのセッションを残してAのネットワークが切断されました。現在、ネットワークは切断されたままです。

ユーザーXが、ファームFに再接続したらどうなるででしょう。RD接続ブローカーは正常なのでAに再接続されるはずですが、Aは停止しています。

【実験】
権威のある文献を探しきれなかったので、実際にやってみました。

仮想マシンでA、B、2台のRDセッションホストを構成し、RD接続ブローカーに登録します。
次に、DNSラウンドロビンの機能を使ってファームFを構成しました。

ユーザーXでファームFに接続し、Aにログオンしたことを確認して、仮想マシンAの状態を保存しました。

その後、ユーザーXでファームFに再接続すると、Aに接続しようとします。しかしAは応答しないので、リモートデスクトップクライアントがエラーを起こし、接続に失敗します。

もちろんファームFではなくBのIPアドレスやホスト名を使って明示的に接続することは可能です。

その後、Aを復旧してからファームFに接続すると、無事Aに接続されました。

【結論】
RD接続ブローカーのセッション情報は、RDセッションホストの死活を監視せず、機械的に以前のセッションを復元しようとする。

セッションを保持する時間を制限する、管理者に依頼してセッションを強制的に切断する、といった工夫が必要なようです。

RD接続ブローカーを含め、リモートデスクトップサービスの詳細は、マイクロソフト高田祐二さんのブログ「Windows Server 2008 R2 RDS の構築・設計指針」が参考になりました。合わせてご覧ください。

2012年3月9日金曜日

公式ブログ「Win Win Windows」

あまり読者が居なさそうなのですが、グローバルナレッジの公式ブログに「Win Win Windows」があります。マイクロソフト技術関連の講師が交代で毎月書いています。

今月は、鈴木和久による「Windows Phone SDK 7.1 の開発環境構築」です。.NET関連のプログラミング講習を担当しています。

世間的には、スマートフォン用のアプリケーションが盛上がっているようです。ぜひお読みください。

さて、このブログ、月1回連載なんですが、先ほど私の上司が「じゃあ、(鈴木さんは)結局どんなアプリケーションを作ったのか、続きを(すぐ)書け」とプレッシャーをかけていました。

ところで、写真に登場する手は、グローバルナレッジでオラクル関連の講習を担当している栗山真由美です。今回は「手タレ」として登場しました。ぜひ、爪のネールアートにご注目ください(ネールアートは爪に決まってますが)。

2012年3月5日月曜日

Hyper-V & Virtual Server & SYSPREP

Windows Server 2008で、Hyper-V役割を追加してからSYSPREPをかけると、Hyper-Vが無効になります。役割は追加されたままですが、ハイパーバイザが起動しない模様。

R2では直っているので問題はありません。

これは、KB954356で解説されていますが、機械翻訳は久々にひどい感じです。
まず、一部の文章が英語のままです。しかも、コマンドの順序が入れ替わっている上、一部のスペースが抜けてます。

日本語: Bcdedit hypervisorlaunchtype auto/set {current}
英語: Bcdedit /set {current} hypervisorlaunchtype auto

ところが、この文書に従ってハイパーバイザを有効にしても、ネットワークが正しく動作しません。

Hyper-V用の仮想ネットワークアダプタが動作していないようです。
いったん、仮想ネットワークを初期化してから再作成すると「その物理ネットワークアダプタは既に使われています」という意味のエラーが出ます。

復旧には、KB954356の方法に加え、すでに作られてしまった仮想ネットワークアダプタのレジストリキーを削除する必要があるようです。

仮想ネットワークアダプタの問題はR2でも解決されていませんが、「気にしない」という解決方法もあるので、まあいいでしょう。

2012年2月6日月曜日

Hyper-Vとイリノイ大学

2007年、イリノイ大学アーバナ・シャンペーン校でACM(米国コンピュータ学会)のイベントがありました。

この中で、Eric Trautさんが仮想化とWindows 7(のMinWin)について語っています。
公開当時「Windows 7のアーキテクチャの紹介」と話題になったのですが、本来は仮想化です。英語ですが、なかなか分かりやすかったので、Hyper-Vに興味を持っている方におすすめします。

ところで、イリノイ大学アーバナ・シャンペーン校といえば、初期のコンピュータILLIACとか、最近だと(もう「最近」とは言えませんか?)、NCSA Mosaicで有名です。

でも、一番有名なのは HAL 9000 が誕生した場所として、ではないでしょうか。