Jun 14, 2011

交通ゴルルダンハン場合のために保険に入って

交通事故れてしまうと、入院をする必要があるかもしれない。入院ということになれば、会社を休まなければならない。最悪、交通事故により死亡してしまうことも考えられる。後で家族を考えると、入院保障と死亡保障がついた保険入っておきたいのだ。もし自分に何かあったときに助けてくれる保険です。
長年乗ってきた車を放棄するときは何か、ちょっと心なしか寂しくなるわけだが、愛着があるだけに、少しでも高いものなるでしょう。にもかかわらず、事故を捨てたり、別の長いからといって、廃車を考えてのような場合でも、一応は、複数の業者に当たって見て、評価に出すことが重要です。業者は廃車にしても、現実、価格を指定する方法に違いがあるからです。思った以上の価格が着くかも知れませんからの評価だけでは回してみるのが賢明と言えるでしょう。
 本章では、クラウドの管理に慣れていない IT Proのために、Windows Azureの管理手法をステップバイステップで解説している。今回は、オンプレミス環境とWindows Azure Platformを接続する仮想ネットワーク機能「Windows Azure Connect」について詳しく解説する。

【8.3】Windows Azure Connect
[8.3.1]Windows Azure Connectとは
 「Windows Azure Connect」はオンプレミス環境とWindows Azure Platformを接続する仮想ネットワーク機能だ。Windows Azure Connectを使用すると、IPSecを使用した仮想ネットワーウを確立し、イントラネット上サーバーと同様に、Windows Azure Platform上のサーバーを使用することができる。

 企業内の既存資産活用や法的課題への対処など、パブリッククラウドだけでは解決できない問題を柔軟に回避することができ、利用者に幅広い選択肢を提供する。
Windows Azure Connectについては第1章も参照していただきたい。

[8.3.2]ベータ版の利用申請
 Windows Azure Connectは現時点(2011年5月)ではベータ版として提供されており、利用するにはベータ版の利用申請が必要となる。

 Windows Azure Connectのベータ利用を申請するには、Windows Azure Platform管理ポータルの左ナビゲーションで[Home]を選択し、左上部から[Beta Programs]を選択する。すると、中央にベータプログラム一覧が表示されるので、[Windows Azure Connect]をチェックして[Join Selected]ボタンをクリックする。

 申請は、1週間から2週間程度で承認され、登録してある電子メールに有効になった旨の連絡が送られる。ベータプログラムへの参加は、契約しているサブスクリプション単位であるため、複数のサブスクリプションが存在する場合にはそれぞれで申請が必要である。

[8.3.3]Windows Azure Connectの有効化
 Windows Azure Connectを有効にするには、リモートデスクトップサービス同様、アプリケーションのプロジェクト内に設定を埋め込む必要がある。これにより、 Windows Azure上にアプリケーションパッケージをアップロードしたタイミングで Windows Azure Connectがホストサービスで利用できるようになる。

 コーディングを含んだプロジェクトの作成は開発者の分担であるため、IT Proは開発者に対して当該機能を有効化するよう、事前に調整しておく必要がある。ここでは、以下の2通りの方法を紹介する。

・Visual Studio を使用して有効化する方法
・Visual Studio を使用せずに有効化する方法

(1)アクティベーショントークンの取得
 Windows Azure Connectを有効にするには、Windows Azure Connectの「アクティベーショントークン」をアプリケーションパケージのプロジェクトファイルに埋め込む必要がある。

 アクティベーショントークンを取得するには、Windows Azure Platform管理ポータルを使用する。

 管理ポータルの左ナビゲーションから[Virtual Network]を選択すると、左上にはWindows Azure Connectの利用が有効なサブスクリプションの一覧が表示される。

 初めてWindows Azure Platform管理ポータル上でWindows Azure Connectにアクセスした場合には、有効化するかどうかを確認するダイアログが表示されるので、[OK]ボタンをクリックして有効化しよう。

 表示されたサブスクリプションの一覧からサブスクリプションを選択し、[Get Activation Token]をクリックする。

 すると、アクティベーショントークンが表示されるので、[Copy Token to Clipboard]ボタンをクリックして一旦クリップボードにコピーしておく。コピーしたトークンはあとから使用するので、テキストファイル等に保存しておこう。

(2)Visual Studioを使用してWindows Azure Connectを有効化する
 ここでは、「[8.2.3]Visual Studioを使用したリモートデスクトップ機能の有効化手順」によって作成したプロジェクトに追加で設定を埋め込んでいく。以降の作業を行う前に、「[2.2.3]Visual Studioを使用したリモートデスクトップ機能の有効化手順」を完了させておこう。

 まず、「[8.2.3]Visual Studio を使用したリモートデスクトップ機能の有効化手順」によって作成したプロジェクトをVisual Studioで開き、画面右側のソリューションエクスプローラーからロールを展開し、WebRole1を右クリックしてプロパティを選択する。

 すると、WebRole1のプロパティ画面が開くので、「仮想ネットワーク」をクリックする。

 仮想ネットワークのプロパティ画面が開いたら、「Windows Azure Connectのアクティブ化」をチェックし、その下のテキストボックスに先ほどコピーしたアクティベーショントークンを貼り付ける。

 これでWindows Azure Connect の有効化に関する設定は完了だ。あとは、「[8.2.3]Visual Studioを使用したリモートデスクトップ機能の有効化手順」と同様に、プロジェクトを[発行]し、作成されたパッケージファイル(.cspkg)と構成ファイル(.cscfg)をWindows Azure管理ポータルからアップロードすればよい。

[8.3.4]Visual Studioを使用せずにWindows Azure Connectを有効化する
 Visual Studioを使用しない場合は、「[2.2.4]Visual Studioを使用したリモートデスクトップ機能の有効化手順」と同様である。はじめにサービス定義ファイル(.csdefファイル)に必要なモジュールの情報を埋め込んでCSPackコマンドを実行する。これにより、パッケージファイル(.cspkg)とサービス構成ファイル(.cscfg)が生成される。生成されたサービス構成ファイル内にWindows Azure Connectのアクティベーショントークンを埋め込んで、パッケージファイルとともに管理ポータルからアップロードすればよい。

(1)サービス定義ファイル(.csdef)の設定
 サービス定義ファイルには、Windows Azure Connect で使用するモジュール情報を埋め込む。

【サービス定義ファイル(.csdef)例】
-------------------------------------
<?xml version="1.0" encoding="utf-8"?>
<ServiceDefinition name="Azure4ITPro" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
<WebRole name="WebRole">
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Imports>
<Import moduleName="Connect" />
</Imports>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="80" />
</Endpoints>
</WebRole>
</ServiceDefinition>
-------------------------------------

(2)CSPackコマンドの実行
 「[8.2.4]Visual Studioを使用したリモートデスクトップ機能の有効化」に示したCSPack コマンドの実行手順を使用して、CSPack コマンドを実行する。

 コマンドを実行すると、パッケージファイル(.cspkg)とサービス構成ファイル(.cscfg)ファイルが生成される。

(3)サービス構成ファイル(.cscfgファイル)を編集する
 CSPackコマンドで生成したサービス構成ファイル(.cscfg)には、Windows Azure Connectに関するパラメタのひな型が埋め込まれている。

 パラメタの名前は、いずれも「Microsoft.WindowsAzure.Plugins.Connect.」で始まっている。ここでは、 Microsoft.WindowsAzure.Plugins.Connect.ActivationToken の値には先ほどWindows Azure Platform管理ポータルより取得したアクティベーショントークンを記載する。その他のパラメタの使い方については、後述する。

【サービス構成ファイル例】
-------------------------------------
<?xml version="1.0"?>
<ServiceConfiguration xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" serviceName="Azure4ITPro" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
<Role name="WebRole">
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.ActivationToken" value="xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.Administrators" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.Diagnostics" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DNSServers" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainAccountName" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainControllerFQDN" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainFQDN" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainOU" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainPassword" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainSiteName" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.EnableDomainJoin" value="false" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.Refresh" value="" />
<Setting name="Microsoft.WindowsAzure.Plugins.Connect.WaitForConnectivity" value="" />
</ConfigurationSettings>
<Instances count="1" />
</Role>
</ServiceConfiguration>
-------------------------------------

 以上で構成ファイルの修正は完了だ。あとは、パッケージファイルとともに、Windows Azureに展開すればよい。パッケージファイルと構成ファイルを展開する手順は、「第5章:[1.1]ホストサービスの作成と削除」および「第5章:[1.2]アプリケーションの展開と削除」を参照していただきたい。

[8.3.5]ネットワークの設定
 Windows Azure Connectは、専用のエンドポイントソフトウェアを用いて、Windows Azure管理ポータル上で設定されたWindows Azureホストサービス上のロールインスタンスとオンプレミス上のコンピューター間をHTTPSによりトンネリング接続する。

 実際の通信は、Windows Azure上に用意されたリレーサービスを経由して行われることになる。リレーサービスには専用のDNSも設置されており、オンプレミスからWindows Azureに対する名前解決はリレーさビス内のDNSが使用される。

 「第1章:Windows Azure の概要」にも記した通り、リレーサービスとの仮想ネットワークには IPv6 with IPSecが用いられる。ただし、これは HTTPSによってカプセル化されるため、ネットワークに対する高度な要件は無い。Windows Azure Connect エンドポイント ソフトウェア(オンプレミス上のコンピューター)からWindows Azureに対しTCP/443番ポートの通信が許可されていればよい。

[8.3.6]Windows Azure Connectエンドポイントソフトウェアのインストール
 Windows Azure Connect エンドポイントソフトウェア(以降、エンドポイントソフトウェア)には2つの機能が実装されている。

・Windows Azure Connectリレーサービスと通信を行うための仮想ネットワーク作成
・ネットワークポリシーの適用

 第1章でも触れたように、Windows Azure ConnectはオンプレミスとWindows Azure間の無条件通信を許可するものではない。通信を許可する「オンプレミスのコンピューター」と「Windows Azure上のロールインスタンス」間の関係はネットワークポリシー内に定義され、それがエンドポイントソフトウェアを通じてそれぞれのコンピューターおよびロールインスタンスに反映されるようになっている。

 ゆえに、Windows Azure Connectエンドポイントソフトウェアは、Windows Azure Connectを使用するすべてのコンピューターにインストールされている必要がある。これはWindows Azure上のロールインスタンスも例外ではないが、こちらはWindows Azure Connectを有効化したパッケージをアップロードした時点で、自動的にインストールされる。

 エンドポイントソフトウェアをインストールするには、インストールするクライアント上でWindows Azure Platform管理ポータル(http://www.azure.com/)に接続し、ナビゲーションから[Virtual Network]を選択する。すると、左上に[Connect]ツリーが表示されるので、それを展開してサブスクリプションを選択後、リボンメニューから[Install Local Endpoint]をクリックする。

 エンドポイントソフトウェア インストーラーのダウンロードURLが表示されるので、[Copy Link to Clipboard]ボタンをクリックして、URLをクリップボードにコピーする。

 クリップボードにコピーしたURLをブラウザなどで表示し、インストーラーをダウンロード後実行するとインストールウィザードが起動する。

 最初に言語の選択画面が表示されるが、2011年5月時点では「English」しか選択することができないので注意しよう。なお、インストール処理中、インターネット(Windows Azure)に接続して、関連ファイルをダウンロードするので、必ずインターネットに接続できる環境で実施しよう。

 Windows Azure Connectエンドポイントソフトウェアのインストールが正常に完了すると、自動的にWindows Azure Connectエンドポイントサービスが起動し、タスクトレイに通知アイコンが表示される。まだ構成が完了していないため、黄色い警告マークが表示されていることがわかる。

 ここで、アイコンを右クリックするとメニューが表示されるので、「Diagnostics」を選択すると、詳細な情報が表示される。現段階では、赤いマークでエラーが表示されていることがわかる。

[8.3.7]Windows Azure Connectグループの管理
 Windows Azure Connectを使用するには、通信させたいコンピューターとロールインスタンスどうしをグルーピングする必要がある。画面上のリボンメニューから[Create Group]メニューをクリックする。

 [Create a New Endpoint Group]ダイアログが表示されるので、[Group name]欄に作成するグループの名称を入力し、[Connect from]欄の[Add]ボタンをクリックしWindows Azure Connectエンドポイントソフトウェアをインストールしたコンピューター追加する。

 同様に[Connect to]欄の[Add]ボタンをクリックし、既に配置されているWindows Azureホストサービス上のロールを追加する。

 [Allow Connections between endpoints in group]をチェックすると、接続しているオンプレミスのコンピューター間でホスト名を使用したアクセスが可能になる(インターコネクション)。この機能を使用すると、本来通信が行えない「企業間のコンピューター同士」や「自宅と企業内のコンピューター同士」が、Windows Azure のリレーサービスを経由して通信できるようになる。

 グループが作成されると、エンドポイントソフトウェアを介して各ロールおよびコンピューターにポリシーが反映され、接続が確立される。

 正常に接続が確立されると、また、タスクトレイのアイコンから警告マークが消え、Diagnostics画面では、以下のようにすべてのチェックが正常にパスした状態となる。

 ここで、ipconfigコマンドでネットワークの状態を確認してみよう。PPPアダプターとしてWindows Azure Connect用の接続が作られ、IPv6アドレスが割り当てられていることがわかる。

 接続の確立後、Windows Azure ConnectエンドポイントソフトウェアをインストールしたオンプレミスのコンピューターやWindows Azure上のロールインスタンスからは、お互いにホスト名を使用して通信が行えるようになる。

 なお、コンピューター間で許可される通信はそれぞれのコンピューターのファイアウォールの設定や稼働しているサービスに依存するので注意しなければならない。

[8.3.8]ロールをActive Directoryドメインに参加させる
 現時点で Windows Azure上のロールでActive Directoryを立ち上げるための手法は確立されていない。そのため、オンプレミスで使い慣れたセキュリティポリシーをクラウドにも持ち込むには2通りの手法が考えられる。

・Active Directory Federation Service(AD FS)2.0を使用する
・Windows Azure Connectを使用し、Windows Azure上のロールをオンプレミスの Active Directoryに参加させる

 ここでは、後者について手順を解説する。Windows Azure Connectは、オンプレミス環境とクラウド環境のより高度な連携を実現するために、オンプレミスのActive Directoryドメインに参加するためのオプションが用意されている。

 Active Directoryに参加させるには、サービス構成ファイル(.cscfg)にWindows Azure Connectに関するオプションを追加設定する必要がある。このオプションは、Visual StudioでWindows Azure Connectを有効にすると[設定]タブから値をセットすることができる。もちろん、Windows Azure Connectのアクティベーショントークンを設定したときのように、サービス構成ファイルに直接書き込んでもよい。

 ドメインに参加するための必要最小限のパラメタについて、それぞれの設定例と意味を以下に示す。

 この他、DomainOUやDomainSiteNameにより、ロールに所属されるOU(Organizational Unit)やサイトを指定することも可能だ。

 これらの値を適切に指定したパッケージファイルがWindows Azure上にアップロードされると、はじめにWindows Azure Connectが有効になり、仮想ネットワーク接続が正常に確立された後、バックグラウンドでActive Directoryへの参加が行われる。参加後は、ロールは自動的に再起動するため、パッケージをアップロードしてからドメイン参加が正常に完了するまで 30分程度を要する。

 ドメインに参加後は、オンプレミスのActive Directoryドメイン環境下のファイルサーバーにアクセスしたり(もちろんファイルサーバーにもWindows Azure Connectが必要)、ドメインアカウントを使用した統合Windows認証の利用など、より高度なシステム構成を実現することができる。

[8.3.9]エンドポイントのグループ移動、グループからの削除、エンドポイントの削除
 Windows Azure Connect エンドポイントソフトウェアがインストールされているコンピューターを「エンドポイント」と呼ぶ。エンドポイントは、同時に1つのグループにしか所属することができない。

 以下の図で、各コンピューターが点線で囲んだグループに所属しているとする。この状態で、実線で示すようなグループを作成することはできない。

 ただし、グループ自体を入れ子にすることは可能だ。つまり、以下の図の点線で囲んだようなグループを作成することはできる。

 従って、エンドポイントをどのグループに所属させるかは慎重に考えなければならない。

 管理ポータルからは、エンドポントが所属するグループを移動したり、現在所属しているグループから削除することができる。

 Windows Azure Connectが有効なサブスクリプションの配下にある[Group and Roles]を選択し、中央のペインからグループに所属しているエンドポイントを選択すると、上のリボンメニューにある[Move to Group][Remove from Group][Delete Endpoint]が有効になる。

 [Move to Group]は別のグループへの移動、[Remove from Group]は現在所属しているグループからの削除を意味している。

 [Delete Endpoint]はエンドポイントそのものを削除する際にしようするが、通常はエンドポイントソフトウェアをアンインストールした段階で、管理ポータルの表示からは自動的に消えるので、エンドポイントソフトウェアをアンインストールせずにコンピューターを廃棄してしまった場合などに使用する。

[8.3.10]Windows Azure Connectグループの削除
 Windows Azure Connectグループを削除するには、Windows Azure Platform管理ポータルの左ナビゲーションから[Virtual Network]を選択し、左上の[<サブスクリプション名>]-[Groups and Roles]を選択後、中央のペインからグループを選択して[Delete Group]メニューをクリックする。

[8.3.11]Windows Azure Connect Endpointソフトウェアのアンインストール
 オンプレミス環境のコンピューター上からWindows Azure Connectエンドポイントソフトウェアをアンインストールするには、コントロールパネルの「プログラムの追加と削除」から”Windows Azure Connect”を選択し、アンインストールを実行すればよい。

[8.3.12]Windows Azure Connectエンドポイントソフトウェアのサービスとログ
 Windows Azure Connectエンドポイントソフトウェアで接続できないなど、トラブルシューティングを行う際は、タスクトレイのWindows Azure Connect Endpointソフトウェアアイコンを右クリックし表示されるDiagnosticsメニューで状態を確認できるほか、Windowsイベントログにも情報が出力される。

(Windows Azure Platform運用管理ガイド 制作委員会)

【関連記事】
IT Proのための「Windows Azure Platformの歩き方」
今の、そして今後のクラウド利用に向けて――マイクロソフトはプラットフォームとしての“安心感”を提供する
バルマー氏、「マイクロソフトは自己再形成中」とコメント
マイクロソフト、「Windows Server 8」を披露
Windows Azure PlatformとFacebookを活用した在宅介護管理システム――蝶理株式会社
Posted at 10:18 in Market | WriteBacks (0) | Edit
WriteBacks
TrackBack ping me at
Post a comment

writeback message: Ready to post a comment.