web-dev-qa-db-ja.com

Azure Virtual Machines間の共有ドライブ

WebサイトをAzure Virtual Machineに移動したばかりで、先週末から稼働しています。これまでのところ、結果に非常に満足しており、Azureをさらに活用することを楽しみにしています。

かなり一般的なシナリオと思われるものがありますが、驚いたことに、明らかな解決策が見つかりません。いくつかのVMがあります。1つはプライマリサーバーで、もう1つは一時停止され、最初のサーバーに問題がある場合は起動する準備ができています(手動で問題ありません)。 WebサイトをAzure Storageにバックアップします(バックアップユーティリティはAzure BLOBへの保存をサポートしています)。それは朗報です。

私は何らかの方法でストレージBLOBをドライブとしてマウントできると想定していたため、2つのVM間でストレージを効果的に共有できました。しかし、驚いたことに、私はそれを行う明白な方法を見つけていません。サードパーティのユーティリティ(Gladinet Cloud Desktop)を見つけましたが、非常に遅いようです。私が言うように、これは簡単なことだと思いました。

では、後戻りして、複数のVMからストレージBLOBにアクセスする最も簡単な方法は何ですか?私は本当にプライベートネットワークを設定してからネットワークファイル共有を設定したくありません-それはとても古いようです:)、特定のVMに特定の依存関係を置きます。

助言がありますか?

ありがとう。

24
Mark Williams

これは今では不可能なだけでなく、非常に簡単で、ファイルシステムのように見えます。新しいAzure File Serviceを確認してください(この記事の執筆時点ではプレビュー版です)。

http://blogs.msdn.com/b/windowsazurestorage/archive/2014/05/12/introducing-Microsoft-Azure-file-service.aspx

発表からの引用:

「Azure Fileサービスは、標準SMB 2.1プロトコルを使用してファイル共有を公開します。Azureで実行されるアプリケーションは、ReadFileやWriteFileなどの標準および使い慣れたファイルシステムAPIを使用してVM間でファイルを簡単に共有できます。」

SMBドライブよりも優れています。アナウンスメントで言及されているように:

「さらに、RESTインターフェイスを使用してファイルに同時にアクセスすることもできます。これにより、さまざまなハイブリッドシナリオが開きます。最後に、Azure FilesはBlobと同じテクノロジーで構築されています。テーブル、およびキューサービス。これは、Azure Filesがプラットフォームに組み込まれている既存の可用性、耐久性、スケーラビリティ、および地理的冗長性を活用できることを意味します。」

14
codingoutloud

Azure Resource Managerでは、「ストレージアカウント」を作成できますネットワークファイル共有は、ドライブとしてマウントを複数のVMまたはコンピューターとUnix、Linux、Windowsの両方でAzureにないデバイス。

一般に、ストレージアカウント➡ファイル➡FileShareの作成Share共有とディスクスペースクォータに名前を付けるConnect [接続]をクリックして、コマンドまたはWindowsまたはLinuxを取得し、各デバイスに共有をマウントします。これに注意してくださいONLY WORKS for Local Redundant Storage、ZoneではなくGeo Redundant。

https://www.youtube.com/watch?v=SGPJZMaSlis

上記のビデオチュートリアルは、ステップバイステップの実行方法を示しています。唯一の制限は、OSがSMB 3.0プロトコルをサポートしていることです。Windows8以上およびWindows 2012以上では必要です。ファイアウォールポート445を開く必要があります。

8
CodeCowboyOrg

can複数のVMからBLOBにアクセスします。これは非常に一般的なパターンです。 できないすることは、複数のVMにドライブ(blobに格納されている)を同時にマウントすることです。つまり、VHDディスクを作成してVMにアタッチすることにした場合(LinuxまたはWindows-関係ありません)、blob-backedディスクはVMにロックされ、 VMは、ローカルファイルシステムのようにvhdを操作できます。

一方、ブロブを個別のオブジェクトとして個別に扱う場合、任意の数のVMでこれらのブロブを簡単に操作できます。

ネットワーク共有(SMBなど)のようなことをしたい場合は、Azure File Serviceを使用するか、独自のSMBサーバーVMをステージングする必要があります。

マウントされたファイルシステムが絶対に必要であるが、プライマリ/バックアップ方式でファイルシステムを使用する必要がある場合は、APIを介して何かを実行し、あるVMからアンマウントして別のVMに再マウントできます。これは、PowerShell(Windowsのみ)またはLinux/Mac/Windowsのクロスプラットフォームコマンドラインインターフェイスを介して実行できます。何らかの理由でプライマリVMが失敗した場合、これを行います。

5
David Makogon

これは良い記事です
私もそれを探しています。正しい解決策を見つけることを願っています。ここでの経験を選択してください。

Azure Blobs、Azure Files、またはAzure Disksを使用するタイミングの決定
https://docs.Microsoft.com/en-us/Azure/storage/common/storage-decide-blobs-files-disks

プレミアムディスクがあります
https://Azure.Microsoft.com/en-us/pricing/details/managed-disks/

Azure Kubernetes Service(AKS)でAzureディスクを含むボリュームを手動で作成して使用する
https://docs.Microsoft.com/en-us/Azure/aks/Azure-disk-volume 注:Azureディスクは、1つのポッドにのみマウントできます時間。永続ボリュームを複数のポッドで共有する必要がある場合は、Azure Filesを使用します。

Azure Virtual MachinesのSQL Serverのパフォーマンスガイドライン
https://docs.Microsoft.com/en-us/Azure/virtual-machines/windows/sql/virtual-machines-windows-sql-performance

Azure Kubernetes Services(AKS)を使用してKubernetesにSQL Serverコンテナーをデプロイする
https://docs.Microsoft.com/en-us/sql/linux/tutorial-sql-server-containers-kubernetes?view=sql-server-2017

enter image description here

0
Valentin Petkov