Ist es möglich, über HAProxy eine Verbindung zum MS SQL-Server herzustellen?

Ist es möglich, über HAProxy eine Verbindung zum MS SQL-Server herzustellen?

Ich muss mich über HAProxy mit einem MS SQL-Server verbinden können, der bei Amazon gehostet wird (RDS, einzelne AZ). Ich habe die folgende Konfiguration ausprobiert (unten), aber MS SQL hat mir Folgendes zurückgegeben (obwohl ich einen gültigen Benutzernamen und ein gültiges Passwort verwendet habe):

Eine Verbindung mit dem Server wurde erfolgreich hergestellt, dann ist jedoch während des Handshakes vor der Anmeldung ein Fehler aufgetreten. (Anbieter: TCP-Anbieter, Fehler: 0 – Eine bestehende Verbindung wurde vom Remotehost zwangsweise geschlossen.) (Microsoft SQL Server, Fehler: 10054)

listen RDS_MSSQL *:1433
    mode tcp
    balance roundrobin
    option log-health-checks
    server legacy xxxx.xxxxxx.us-east-1.rds.amazonaws.com:1433 check port 1433 inter 1000

Antwort1

Es ist möglich. Statt listenI benutze ich einen frontendBlock und einen backendBlock:

frontend tcp-in-mssql
  bind :8800
  mode tcp
  use_backend mssql

backend mssql
  mode tcp
  server mssqlserver 10.10.10.10:1433 check

Antwort2

Scheint so, als wäre es standardmäßig nicht möglich, da MS SQL einen Drei-Wege-Handshake erfordert.
https://support.microsoft.com/en-us/kb/287932

Andere Datenbankserver wie PostgreSQL erfordern diese spezielle Behandlung nicht und funktionieren gut über HAProxy

verwandte Informationen