nodeJS サーバーを実行している Azure 上に Linux VM をセットアップしました。i mongodb を使用して cosmosDB もセットアップしました。nodejs と mongo-client の両方を使用してローカル マシンから cosmosdb に接続できますが、Linux VM から nodjs を使用して cosmosdb に接続しようとすると、接続タイムアウトが発生します。
これはファイアウォール、vnet、または nsg と関係があると思いますが、Azure を初めて使用するため、修正方法がわかりません。
nsg に例外を追加して、10255 ポートでの発信接続を許可しようとしましたが、これは効果がありませんでした。また、cosmosdb を vnet に追加しようとしましたが、これも効果がありませんでした。
編集:私はこのコードのみを持つアプリでノードアプリケーションを作成しました:
var mongoClient = require("mongodb").MongoClient;
mongoClient.connect("connectionString", function (err, db) {
if(err){
console.log("it did not work: "+err);
}else{
console.log("it did work");
db.close();
}
});
ローカル コンピューターでは問題なく動作しますが、Azure VM からは接続できません。コードに違いはありません