Ошибка тайм-аута MSSQL на виртуальной машине Azure Ubuntu, когда AnyConnect включен - PullRequest
0 голосов
/ 04 июля 2018

надеюсь, вы поможете мне решить эту проблему:

Я написал приложение NodeJS, оно подключается к Azure MSSQL и получает запросы от клиента VPN AnyConnect, оно работает хорошо, когда я запускаю всю систему на своем компьютере разработчика, который является сервером Ubuntu 18.04, проблема возникает, когда я пытаюсь разверните его на виртуальной машине Azure (сервер Ubuntu 18.04). NodeJS выбрасывает время ожидания Azure MSSQL при подключении vpn-клиента. Если я отключаю vpn, NodeJS снова работает хорошо.

Я настроил порты виртуальной машины Azure для разрешения подключений vpn, ssh и https, и я использую библиотеку NodeJS: node-msql

Есть ли какие-либо предложения сделать соединение MSSQL клиентом AnyConnect?

1 Ответ

0 голосов
/ 10 июля 2018

Здорово сталкиваться с неприятностями, с которыми никто не сталкивался, я хочу поделиться, как я это решил. Надеюсь, это поможет, если у кого-то возникнут такие же проблемы.

Моя проблема заключалась в политике подключения на SQL Server, в моем случае БД размещалась на Azure, поэтому с помощью инструментов командной строки az (вы можете установить ее или использовать на портале Azure) я исправил это:

//Check policy connection
$ az sql server conn-policy show -g myResourceGroup -s mySQLServer

//This displayed next:

{
    "connectionType": "Default",

    "id": "/subscriptions/{mySusbcriptionId}",

    "kind": null,

    "location": "East US",

    "name": "default",

    "resourceGroup": "MyresourceGroup",

    "type": "Microsoft.Sql/servers/connectionPolicies"

}

В AZ документах существует 3 типа политик: Default, Redirection и Proxy Я попробовал все из них, но для меня работает прокси, вы можете изменить политика с этой командой:

$ az sql server conn-policy update -g myResourceGroup -s mySQLServer -t Proxy

После этого виртуальная машина могла устанавливать соединения с SQL Server, и существующие соединения не затрагивались.

...