Windows Azure

仮想マシンを再起動した後も、Azure Fleへの共有接続を永続化させる方法を説明します。

Windows IaaS 仮想マシン

通常、Windowsは再起動した後、SMB共有接続を永続化させようとします。
しかし、Azure Fileの場合、接続認証があるため、再起動後のAzure Fileへの再接続が失敗します。Azure Fileへの接続を永続化させるために、Azure Fileへの認証情報をいくつかの方法で永続化させる必要があります。

CmdKey

ストレージアカウントの認証情報をCmdKyeコマンドラインツールを使用して保存してしまうことが、永続化させるのにもっとも簡単な方法です。次のコマンド例が、仮想マシンにストレージアカウントの認証情報を永続化させた例です。

C:\>cmdkey /add:.file.core.windows.net /user: /pass:

Note: yourstorageaccountname is not your live id but the name in the endpoint.

また、次のコマンドで格納した認証情報を一覧表示できます。

C:\>cmdkey /list

Currently stored credentials:

Target: Domain:target=filedemo.file.core.windows.net 
Type: Domain Password 
User: filedemo

認証情報を永続化させてしまえば、認証情報を指定することなく接続できるようになります。

C:\>net use * \\filedemo.file.core.windows.net\demo1

Drive Z: is now connected to \\filedemo.file.core.windows.net\demo1.

The command completed successfully.

ユーザーコンテキスト

CmdKeyによる資格情報の永続化はユーザーで独立しています。
登録コマンドを実行したユーザーと別のユーザーでログインしている場合は、認証情報が永続化されていません。

管理者コンテキスト

Administratorsグループに入っているユーザーの場合、資格情報が共有されます。

資格情報の管理

資格情報の管理(コントロールパネル→ユーザーアカウントの配下)を使用して、ストレージアカウントへの資格情報を永続化させることができます。

image

Windows PaaS Role

新しいインスタンスが起動したときに、自動的に接続できるようにコードを書くことができます。
WNetAddConnection2を使用してPaaSロールで、ドライブレターをマッピングします。

コード例は、元記事を参照

Linux 仮想マシン

/etc/fstab にAzure File共有へのマウントを記載することで、スタートアップ時に自動的にマウントさせることができます。

//.file.core.windows.net/demo1 /home/azureuser/smb cifs vers=2.1,dir_mode=0777,file_mode=0777,username=,password=Persisting connections to Microsoft Azure Files


Windows Azure

すでにムッシュが、「Microsoft® SQL Server® Backup to Microsoft Windows® Azure®Tool を使ってみる」で紹介していたのですが、自分も触ってみました。

SQL Server 2005以降に対応したツールで、SQL Serverネイティブで提供されているAzure StorageのBlobにバックアップする機能が無いバージョンでもBlobにバックアップファイルをシームレスに保存リストアできます。

このツールをインストールすると、裏側で「Microsoft SQL Server Backup to Windows Azure Tool サービス(実態は、SQLBackup2Azure.exe)」が動くようになります。

  1. このサービスは、指定パス(もしくは全ディレクトリ)・拡張子を監視します。
  2. 指定した条件にマッチするファイルが出来上がると、自動的にバックアップファイルをBlobのコンテナーに転送します。
  3. コンテナーに転送が完了すると、ローカルにはスタブファイルを生成します。スタブファイルの中身は、コンテナーでのバックアップファイル名とスタブファイル名、ストレージアカウント名、コンテナー名、ファイルサイズ、圧縮後サイズなどが記録されています。
  4. リストアするときには、そのスタブファイルを指定するとシームレスにBlobからバックアップファイルをダウンロードしリストアします。

スタブファイルを削除してしまった場合

スタブファイルは普通のファイル(テキストファイル)です。

image

このファイルを消してしまった場合は、Blobコンテナーからローカルにダウンロード(*.bak)し、元の場所に配置すれば、すぐ利用できるようになります。

image

圧縮処理

このツールの機能で、バックアップファイルが圧縮されます。
そのため、SQL Serverのバックアップファイルの圧縮とは併用しないことが推奨されています。

ツールのメリット

  • ローカルストレージには、6KB程度のスタブファイルしか保持しないので、ストレージ容量を節約することができます。
  • また、Blobは3重化(地理ロケーションが有効だと6重化)されているので、安全にバクアップファイルを保持することができます。
  • シームレスに動作するので、ユーザーはAzure Blobを意識することなく、シームレスに利用できます。

Windows Azure

Microsoft Azure SQL Databaseの提供形態が変わろうとしています。
これまでは、使用領域に応じた課金でしたが、今後はパフォーマンスと機能に応じた課金に変わります。

image

パフォーマンスをベースにした課金になりますが、パフォーマンスとはどういった定義なのでしょうか?その話をすると出てくるのが、次の2つの概念です。

  • Database Throughput Unit – DTU
  • Azure SQL Database Benchmark – ASDB

Database Throughput Unit – DTU

データベースにアサインする性能に関係するリソースに相当します。
CPU、メモリ、Read、Writeを混ぜ合わせて計測します。
そして、性能レベルを比較します。
これが性能について話をするのに話が早くなります。(IOPSと%を比較することを想像してください)

image

詳細は、MSDNライブラリ「Azure SQL データベースのサービス階層とパフォーマンス レベル」を参照してください。

Azure SQL Database Benchmark – ASDB

OLTPのワークロードです。
常に提供されているメモリよりも大きくてさまざまなテーブルサイズのテーブル6つを使用します。
9種類のトランザクションをしようします。
SELECT、DELETE、INSERT、UPDATEなど複数のトランザクションを使用しています。
詳細は:MSDNライブラリ「Azure SQL データベースのベンチマークの概要」を参照

image

image

提供されるサービス帯による性能比較

トランザクション数は、あくまでも例。DBトランザクション制限をハードで入れているわけではない。

サービス階層/パフォーマンス レベル DTU 最大 DB サイズ 最大 ワーカー スレッド 最大 セッション ベンチマーク トランザクション率 予測可能性

Basic

1

2 GB

20

100

3,467 トランザクション/時間

良い

Standard/S1

5

250 GB

50

200

283 トランザクション/分

Standard/S2

25

250 GB

100

500

1,470 トランザクション/分

Premium/P1

100

500 GB

200

2,000

98 トランザクション/秒

最高

Premium/P2

200

500 GB

400

4,000

192 トランザクション/秒

最高

Premium/P3

800

500 GB

1,600

16,000

730 トランザクション/秒

最高

パフォーマンスレベルの変更方法

image

PowerShellの「Set-AzureSqlDatabase」を使用するか、TSQLの「ALTER Database」を使用するか、管理ポータルで操作するか、REST APIたたくか、.NETでたたくかですね。

モニタリング方法

Azureポータルでスケールアップすべきかどうか、スケールダウンさせるべきかどうかを見れるようになります。
master.sys.resource_statsでも提供されます。5分の平均値を取得しています。

image

クエリチューニング

  • sys.dm_exec_query_stats
  • sys.dm_exec_query_sql_text()
  • sys.dm_exec_query_plan
  • sys.dm_exec_requests
  • sys.dm_exec_sessions

Designing Modern Apps using New Capabilities in Microsoft Azure SQL Database, Deep Diveを基にした投稿です

Windows Azure

TechED 2014で、Microsoft Azureの機能追加がいくつか発表されました。その中に、仮想マシン作成時にカスタムスクリプトを実行させられる機能が追加されました。

IISの役割をインストールするpowershellスクリプト(.ps1)を用意し、ローカルディスクかAzureストレージに保存します。

install.ps1
Add-WindowsFeature Web-Server –IncludeAllSubFeature

次に、ポータルからスクリプトを使用するように設定します。

VMエージェントのインストールを選択し、「カスタムスクリプト」オプションを選択し、インストールスクリプトを選択します。他に必要な対応として、Firewallのポートを開けたり、websaiteのパスを変更があるので、それらもスクリプト化すると良いかも。

image

参考情報:Auto Install IIS in the Microsoft Azure VM that you are creating

Windows Azure

Microsoft Azure RemoteApp Previewがアクティブになったので、触ってみた。メニューは管理サービスの上、Traffice Managerの下にある。

image

Azure RemoteAppで何ができるのかは、「Welcome to the Azure RemoteApp preview」メールに書いてあった。

  • いろんなデバイスを使ってあらゆる場所から、会社のアプリケーションにユーザーがアクセスできるようになる
  • 巨大な投資をすることなくビジネスの必要性に応じて、素早く対応することができる
  • 信用と信頼のあるAzureのプラットフォームで、会社の情報を集中化させ守れる

プレビュー中は、次のような対応となるらしい。

  • Azure RemoteAppを無償で提供
  • プレビューサービスでは、2つのインスタンスをたて、各インスタンス10ユーザーまで許可する
  • 7日連続で使用されなかったら、キャンセルされる
  • 何かサービス提供に変更を加える場合は2営業日前に通知する
  • プレビュー中に容量を増やしたい場合は、メールでMSに連絡する

とりあえず触ってみる

CREATE A REMOTEAPP SERVICEをクリックする

image

 

作成する手段は、「QUICK CREATE」と「CREATE WITH VPN」の2通り。

image

 

QUICK CREATEで提供されているテンプレートイメージは、今のところ「Microsoft Office 2013 Professionl Plus on Windows Server 2012 R2」1つだけ。

image

 

REGIONも多少少な目。正式サービスインするときには、日本にも来てほしいね!

image

 

とりあえず、QUICK CREATEで作成する。
ちなみに終わらない!!てイラッとしたけど、注意書きがあった(;´・ω・)
30分かかるよ!っと。

image

 

プロビジョニングは結構時間がかかって、自分が試した時で35分ぐらい待った。まぁプレビューだしね!

image

 

とりあえず、ダッシュボードを見てみる。
REMOTE DESKTOP CLIENT URLが書いてあるので、クリックする。
image

RemoteApp clientをインストールしろ!っといわれる。
RemoteAppを知らなさすぎるので、手探り状態。
image

 

image

 

マイクロソフトアカウントでログインする。

image

 

image

 

無事、表示された。

image

 

無事、Azureで動いているWordが起動した!

image

 

当たり前だけど、ローカルで動いているように見えてもAzure上で動いているので、ファイルを開くでファイル選択ダイアログを表示すると、Azureのインスタンスが対象になる。
おとなしくOneDriveを使いなさいってことですね。
image

 

アプリを起動しているときに、SESSIONを確認すると次のように表示される。起動するアプリケーション数はセッション数とは関係ないみたい。アプリ2つ立ち上げても、セッションは一つだけだった。
image

 

REMOTEAPP PROGRAMSを見ると、使用可能なプログラム一覧が表示される。
image

 

USER ACCESSでマイクロソフトアカウントを追加してあげる。
image

 

そしてログインすると表示される。素晴らしい素晴らしい!
image

 

Azure RemoteAppの概要

Windows Apps in the Cloud: Introducing Microsoft Azure RemoteAppを抜粋して紹介。

サポートするクライアント

  • Windows用:Microsoft RemoteAppアプリケーションを提供
  • iOS、Android用:Microsoft Remote Desktopをアップグレードしてサポート
  • Mac、Windows Phone、Windows RTも近々でサポート予定

http://remoteapp.azure.com/からダウンロード可能。

永続ストレージの提供

Azure RemoteAppでは永続領域50GBを提供する。
これのバックエンドはAzureストレージで、安心。

Windows Server 2012 R2

Azure RemoteAppはWindows ServerのRemote Desktop Services上で構築されている。
共通の仮想セッションのもとに提供される共有モデルとなっている。

Office 2013プリインストール

プレビュー中は、Azure RemoteAppにMicrosoft Office 2013 Pro Plusを提供する。

2種類のデプロイメントの選択:クラウドのみか、ハイブリッドか。

Azure RemoteAppでは2種類のデプロイメントモデルを使用できる。

クラウドデプロイメント

Azureのリソースを使うので、OSは絶えず自動アップデートされ、Microsoft Anti-Malwareエンドポイントで防御されている。
Publishボタンを押すと、ほかにも配信したいアプリケーションを選択できる。

image

 

ハイブリッドデプロイメント

クラウドデプロイメントモデルは、標準的なOfficeへのアクセスを提供します。
ハイブリッドデプロイメントモデルだと、もっとカスタマイズできます。アプリケーション、OSなどの設定をコントロールできます。
テンプレートイメージを直接Azure Portalで管理できます。
ドメインに参加した環境でアプリが動いていたら、オンプレミスのNWとデータにアクセスできます。
Azure ADと統合し、ユーザーはログオンするのに自社の認証を使用できます。

クラウドで動作するアプリケーションが、シームレスにオンプレミスで提供されるデータとリソースにアクセスできます。これは、Azure仮想ネットワークのサイト-サイトVPNで構築されます。

カスタムテンプレートは、Windows Server 2012とRD Session Hostロールサービスをベースにしなければならない。