Рабочий Cloud Composer не может подключиться к внешней базе данных

Я пытаюсь использовать существующую среду облачного композитора и подключиться к удаленной базе данных SQL (Azure SQL). Я ломал себе голову над этим несколько дней и надеюсь, что кто-нибудь сможет указать, в чем заключается моя проблема.

Следуя документации, найденной здесь Я создал рабочую нагрузку службы GKE и прокси-сервера SQL. Затем я создал новое соединение воздушного потока, как показано здесь, используя полное имя службы azure-sqlproxy-service:

введите описание изображения здесь

Я тестирую запуск одной из моих задач DAG и получаю следующее:

Невозможно подключиться: Adaptive Server недоступен или не существует

Не уверен в этом вопросе, я решаю выполнить удаленный доступ напрямую к одному из рабочих, занести этот IP-адрес в белый список на удаленном брандмауэре БД и попытаться подключиться к серверу. Без установленного клиента MSSQL командной строки я запускаю python на работнике и пытаюсь подключиться к базе данных со следующим:

connection = pymssql.connect(host='database.url.net',user='sa',password='password',database='database')

Из чего я получаю ту же ошибку, указанную выше, и с Сервисом, и с удаленным IP-адресом, введенным в качестве хоста. Даже игнорируя службу / прокси, разве этот работник воздушного потока не должен иметь доступ к удаленной базе данных? Я могу пинговать веб-сайты, но проверка удаленных журналов БД не показывает неудачных попыток входа. Из-за общей ошибки и небольшого количества идей, что делать дальше, я застрял. В нескольких результатах Google было предложено переключение библиотек, но я не совсем уверен, как и если мне вообще нужно, в воздушном потоке.

Какие шаги по устранению неполадок я мог бы предпринять дальше, чтобы хотя бы один работник общался с БД, прежде чем переходить на службу / прокси?


person Korben Dallas    schedule 29.10.2020    source источник
comment
Вы пытались открыть доступ TCP / IP для своего локального SQL-сервера? stackoverflow.com/questions/19348255.   -  person Rally H    schedule 02.11.2020
comment
Да, подтверждено с помощью nmap, я вижу сервер и порт открыт: 1433 / tcp open ms-sql-s   -  person Korben Dallas    schedule 03.11.2020


Ответы (1)


После долгой боли я обнаружил, что Cloud composer использует ubuntu 1804, который в настоящее время нарушает работу pymssql, как показано здесь:

https://github.com/pymssql/pymssql/issues/687

Я попытался перейти на 2.1.4, но безуспешно. Чтобы это сделать, я выполнил инструкции, изложенные в этом посте, чтобы использовать pyodbc.

Google Composer- Как мне установить драйверы ODBC для Microsoft SQL Server в средах

person Korben Dallas    schedule 03.11.2020