2

次の接続文字列を使用して、Azure Web ロールを仮想マシンで実行されている SQL のインスタンスに接続しています。うまくいっています!

<add key="VMConnectionString" value="Server=tcp:<mydomain>.cloudapp.net,1433;Database=myDatabase;User Id=myUserID;Password=**********;" />

私の質問は、待ち時間を短縮するために、パブリック DNS の代わりに VM の内部 IP アドレス (10.1.0.0/16 など) を使用する必要があるかどうかです。Web ロールと VM を Azure の同じ仮想ネットワークに配置する必要がありますか? ポータルに記載されているように VM の内部 IP アドレスを使用しようとしましたが、ポート 1433 が完全に開いているにもかかわらず、接続に失敗しました。これは仮想ネットワークなしで追加する必要があります。

4

3 に答える 3

4

最初に Azure ポータルで仮想ネットワークを作成し、そのネットワークに新しい VM をデプロイすることで、SQL Server を実行している仮想マシンを内部 IP 10.0.0.4 で参照できるようになりました。

Web ロールでは、ポータルを介したプロビジョニングで仮想ネットワーク設定を指定できません。したがって、Web ロールをネットワークに持ち込むには、.cscfg ファイルでこれを定義する必要があります。

<NetworkConfiguration>
  <VirtualNetworkSite name="VirtualNetworkName" />
  <AddressAssignments>
    <InstanceAddress roleName="MyWebRole">
      <Subnets>
        <Subnet name="AppSubnet" />
      </Subnets>
    </InstanceAddress>
  </AddressAssignments>
</NetworkConfiguration>

これで、ポータルで VM SQL Server の内部 IP を特定し、これをアプリケーションの web.config で定義された接続文字列に追加できるようになりました。アプリケーションを Azure に発行し、エンド ポイントを正しく構成し、ファイアウォールを開いた場合は、正常に動作するはずです。

いくつかのパフォーマンス テストを実行した後、パブリック DNS 経由で内部 IP を使用することで得られるマージンが得られます。Web ロールを VM に接続するガイドを参照することをお勧めします。

もう1つ。接続文字列で DNS (myvm.cloudapp.net など) を使用すると、Web ロールがどの IP から呼び出すかを予測できる方法が見つかりませんでした。そのため、VM でポート 1433 を開いて Web ロールを通過させることは困難でした。内部 IP を使用して、サブネット全体を開きました。

于 2013-03-09T18:51:08.273 に答える
2

ポータルで VM のエンドポイントを有効にしましたか? ポートとプロトコルを選択するだけの簡単な操作です。方法を説明する記事は次のとおりです。

http://www.windowsazure.com/en-us/manage/windows/how-to-guides/setup-endpoints/

また、VIP の代わりに A レコード mydomain.cloudapp.net を使用することをお勧めします。これは、再デプロイ時に VIP が変更される可能性があるためです。vip は再起動時に変更されません。

于 2013-03-09T15:40:37.907 に答える
1

パブリック仮想 IP アドレスを使用する必要があります。Windows Azure は VM に静的 IP を提供していますか?

ただし、お聞きしたいのですが、SQL Azure を使用せずに、Windows Azure の VM に SQL サーバーの独自のインスタンスをインストールするのはなぜですか?

独自の SQL Server をホストする場合、この段階では、永続的な静的 IP などの機能が豊富な Amazon EC2 インスタンスを使用することをお勧めします。ただし、サイトが異なるデータセンター間で SQL Server にヒットすることは、遅延に関して非常に悪いため、他のすべてを同じデータセンターに転送する必要もあります。

于 2013-03-09T14:00:13.380 に答える