VM Role にリモートデスクトップでログインした際に使用されるユーザープロファイルはデフォルトでは [C:Users] の下に作成されます。 ![]()
C ドライブの内容ですが、csupload した VHD が使用されるため、非永続領域となります。
今回の投稿では、Azure Drive + 移動ユーザープロファイルを使用して、Azure Storage 上にユーザープロファイルを作成して、ユーザープロファイルの永続化を実施してみたいと思います。
SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿
以前、VM Role でデータを永続化する方法として以下の 3 つの投稿をしました。
VM Role で Windows Azure Drive を使用
VM Role 起動時に Windows Azure Drive を自動でマウント
同一スクリプトで VM Role のインスタンス毎に異なる領域をマウント
これらの投稿の内容を使用して、タスクスケジューラーでインスタンスの起動時に Power Shell を実行して Azure Drive を VM Role のデータ永続化先として利用できるようにしていました。
Azure Drive をマウントした状態を続けていたらあるタイミングでアンマウントされていましたので、今回の投稿ではその原因を注意点としてまとめたいと思います。
VM Role の課金についていろいろと思い違いをしていたので一度まとめてみたいと思います。
ストレージ課金が無いのかな~と思っていたのですが、VHD を保存している領域についても課金がされているということを先日知りました…。
先週 [Microsoft Books Online for SQL Server Code-Named "Denali" CTP1] がダウンロードできるようになりました。
このインストール方法がちょっと独特でしたので軽くまとめてみました。
今回、提供されたファイルで初めてオフラインで使用できるようになったのかと思ったのですが、これ以前からオフラインで利用できたんですね…。
その方法も合わせてまとめてみたいと思います。
VM Role で展開したインスタンスのライフサイクルについて少しまとめていきたいと思います。
Microsoft の安納さんが以下のブログで情報を公開してくださっていて、この内容がとてもわかり易いです。
自分の勉強メモとしてまとめていますので、特に目新しいことは書いていないです…。
【Azure for ITPro】Active Directory ドメインコントローラーを VM Role にインストールすることがお勧めできない理由
公開されている技術情報としては以下の情報を参考にしています。
About the VM Role Deployment Lifecycle
Read the rest of this entry »
前回の投稿では、VM Role で Windows Azure Drive をマウントする方法をまとめてみました。
PowerShell を手動で実行しているので VM Role のインスタンスを再起動するたびに手動でマウントしないといけません…。
これはちょっと非効率ですよね。
今回の投稿では前回作成したPowerShellのスクリプトをタスクスケジューラでシステム起動時 (サーバーの起動時) に実行するように設定して、自動でマウントできるように設定をしてみたいと思います。
Web / Worker ロールであれば、StartUpTask や OnStart に起動時の処理を書けばよいと思うのですが、VM Role はそのあたりの仕組みは自前で実装しないといけないかと。
SQL Server には単純なクエリが実行された際に、内部的に自動でパラメーター化して実行される [簡易パラメーター化] (SQL Server 2000 では自動パラメーター化と呼ばれていました)? という機能があります。
# 私はずっと自動パラメーター化と言っていたのですが、この投稿を書くために調べたら簡易パラメーター化と呼ぶということを知りました…。
[強制パラメーター化] は単純でないクエリに対しても自動でパラメーター化をして実行する機能になります。
# 強制パラメーター化を有効にしてもパラメーター化の条件に当てはまらないと通常のクエリとして実行されますが。
このパラメーター化クエリについて少しまとめてみたいと思います。
今回の投稿ではパラメーター化は、簡易パラメーター化で検証をしています。
# 強制パラメーター化でも基本的な動作は同じになるはずですので。
Read the rest of this entry »
タイトルは Hyper-V 上のとしていますが、物理環境で Windows Server 2008 R2 を実行している場合も同じになります。
リモートデスクトップにはオーディオリダイレクトの機能があります。
![]()
オーディオリダイレクトをすることで以下のように、接続先で再生したマルチメディアファイルの内容をリモートデスクトップの接続元のスピーカーで再生することができます。
リモート オーディオ再生が有効な場合、リモートデスクトップで対象の端末に接続した場合、タスクトレイのスピーカーマークが有効な状態となり、接続をした端末で再生したマルチメディアファイルの内容を接続元で再生することが可能となります。 ![]()
VDI などでよく使われるシナリオですね。
間にいくつか投稿をはさんでしまいましたが仮想ログファイルの管理オーバーヘッドについてみていきたいと思います。
トランザクション ログのファイルサイズは同一にして、仮想ログファイル数を変更し、トランザクション ログのバックアップの時間の変化を確認してみます。
前回投稿した、SQL Server Sysprep の [イメージの完了] ですが、setup.exe で起動することで実行しているため、コマンドから開始することが可能です。
コマンドで実行できるのであれば Sysprep に簡単に組み込むことが可能ですので今回は VM Role のイメージに SQL Server Sysprep を組み込んで、VM Role 上で SQL Server 2008 R2 Express Edition を起動してみたいと思います。
SSRS につていては設定の詰めが甘いので、セキュリティ設定ができていないですが起動後に HTTP でアクセスはできる状態では起動します。
作業の流れとしては以下のようになります。
# VM Role のイメージは Sysprep を実行する直前までは完了している状態です。 ![]()
Sysprep 中にコマンドを実行するための方法は以下の技術情報が参考になります。
Sysprep 中に任意のコマンドを実行する方法について
本手順ですが、データベースのデータの永続化に関しては考慮をしていません。
そのため、SQL Server 内のデータに関しては非永続化された揮発性のデータとなります。
一週間ほど VM Role を使っていて感じたのは、このロールはアプリケーションの実行環境としての利用用途として考えた方が良いのではないかということです。
VPS のようなイメージで考えていると要件にマッチしないと思います。
永続化するようなデータは Web / Worker Role と同様に Windows Azure Storage を使う必要があると思いますので、Windows Azure の作法に乗っ取ったアプリケーションを実行するための環境を VM Role で作ることができるという感じかと。
# カスタマイズした VHD を使用することができるので汎用性が高いのかなと。