none
Availbility Group Listener für Named Instance RRS feed

  • Allgemeine Diskussion

  • Hallo zusammen,

    ich habe zwei Server mit je 2 SQL Server 2012 Instanzen und je einer SQL Server 2008 R2 Instanz. Die eine SQL Server 2012 ist die Standard Instanz. Diese lauscht auf TCP Port 1433 die andere 2012 auf 57988 (lt. Server Log). Die 2008er hört auf Port 58033.

    Ich habe mir im DNS A Records angelegt um die Listener einzurichten (Es handelt sich um eine DNS Appliance). Die 3 Listener auf der Standard Instanz funktionieren gut, aber der eine listener auf der Named Instanz funktioniert nicht so, wie ich mir das gedacht habe.

    Ich richte den Listener auf den entsprechenden Port 57988 mit meiner IP und dem Namen ein.

    Wenn ich mich nun im SQL Server Management Studio auf den Listener verbinde, werde ich auf die Standard Instanz geleitet.

    Wenn ich mich auf den Listner\Instanz verbinde bin ich auf der gewünschten Instanz.

    Das ist das erste Mal, das Always on einrichte.

    Ist dieses Verhalten so richtig?

    Montag, 12. August 2013 15:09

Alle Antworten

  • Kannst Du die Definition der Listener mal zeigen?

    Und welche Availability Group verbindet sich mit welchen Instanzen?

    Es klingt hier als ob hier gleich 2 AGs parallel je Server eingerichtet sind. Standard mit Standard, und Named mit Named Instance - korrekt so?

    Abseits dessen: der Port 57988 bzw 58033 ist hoffentlich nicht dynamisch, sondern statisch festgelegt, oder?

    Ich komme auch mit der Zählung nicht mit. Bei 2 Servern kann es nur 2 Standard-Instanzen geben, mit dem entsprechenden Listener. (im Text steht was von 3) Zusätzlich jeweils dazu einen für die Availability Group auf der Named Instance. Der SQL 2008 spielt hierbei gar keine Rolle.


    Andreas Wolter | Microsoft Certified Master SQL Server
    Blog: www.insidesql.org/blogs/andreaswolter
    Web: www.andreas-wolter.com

    Montag, 12. August 2013 15:34
  • Hallo Andreas,

    hier meine Bestandsaufnahme:

    Server 1 und 2 auf W2K12:

    • Standard Instanz: 2012 SP1; TCP Port 1433; 3 AGs mit jeweils 1 Listener alle auf Port 1433
    • Named Instanz 1: 2012 SP1; TCP Port 57988; 1 AG mit 1 Listener auf Port 57988 Wegen der Dynamischen Port zuweisung hier ein Registry Export:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.<Instanz>\MSSQLServer\SuperSocketNetLib\Tcp\IPAll]
      "TcpPort"=""
      "TcpDynamicPorts"="57988"
      "DisplayName"="Any IP Address"
    • Named Instanz 2: 2008 R2 SP2; TCP Port 58033; [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.<Instanz>\MSSQLServer\SuperSocketNetLib\Tcp\IPAll]
      "TcpPort"=""
      "TcpDynamicPorts"="58033"
      "DisplayName"="Any IP Address"

    Ich hoffe damit kommst Du weiter.

    Zu Deinem letzten Absatz: Heißt das, ich benötige nur einen Listener pro Instanz?

    Dienstag, 13. August 2013 09:24
  • Server 1 und 2 auf W2K12:
    • Standard Instanz: 2012 SP1; TCP Port 1433; 3 AGs mit jeweils 1 Listener alle auf Port 1433
    • Named Instanz 1: 2012 SP1; TCP Port 57988; 1 AG mit 1 Listener auf Port 57988 Wegen der Dynamischen Port zuweisung hier ein Registry Export:[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.<Instanz>\MSSQLServer\SuperSocketNetLib\Tcp\IPAll]
      "TcpPort"=""
      "TcpDynamicPorts"="57988"
      "DisplayName"="Any IP Address"
    • Named Instanz 2: 2008 R2 SP2; TCP Port 58033; [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL11.<Instanz>\MSSQLServer\SuperSocketNetLib\Tcp\IPAll]
      "TcpPort"=""
      "TcpDynamicPorts"="58033"
      "DisplayName"="Any IP Address"

    Ich hoffe damit kommst Du weiter.

    Zu Deinem letzten Absatz: Heißt das, ich benötige nur einen Listener pro Instanz?

    Ach so, jetzt verstehe ich das schon besser. Es gibt 3 AGs auf der Standardinstanz, und jede mit einem Listener. Das ist dann soweit korrekt. Auch wenn letztlich jeder Listener auf den selben Server "zielt". Wenn man die AGs später auf andere Server schwenken lässt, dann kann es zu Unterschieden kommen. Dafür ist das da. Wenn alles immer auf dem Gleichen ist, ist es prinzipiell egal, da alle 3 Listener ja identisch sind. Möglicherweise ist es das, was Dich in der ingangsfrage irritierte. (?)

    Die Frage ist, was genau erreicht werden soll, danach richtet sich die Architektur.

    Dynamische Ports sind ein NO-GO!

    Dort statische Portzuweisungen verwenden (über den Config Manager)


    Andreas Wolter | Microsoft Certified Master SQL Server
    Blog: www.insidesql.org/blogs/andreaswolter
    Web: www.andreas-wolter.com

    Dienstag, 13. August 2013 09:44
  • Hallo Andreas,

    ich hatte gedacht, das ich  durch den Listener z.B. in meinem SharePoint den Connectionstring auf <Listener> und nicht auf <Listener>\Instanz einstellen muss. Das ist die Named Instanz 1 (siehe oben).

    Für die TCP Ports nehme ich mit, das im SQL Config Manager unter TCP/IP der Instanz unter "All IP" "TCP Dynamic Ports" leer bleibt und die Zeile "TCP Port" mit einem freien Port belegt wird.

    Dienstag, 13. August 2013 11:18
  • Hallo Andreas,

    ich hatte gedacht, das ich  durch den Listener z.B. in meinem SharePoint den Connectionstring auf <Listener> und nicht auf <Listener>\Instanz einstellen muss. Das ist die Named Instanz 1 (siehe oben).

    Für die TCP Ports nehme ich mit, das im SQL Config Manager unter TCP/IP der Instanz unter "All IP" "TCP Dynamic Ports" leer bleibt und die Zeile "TCP Port" mit einem freien Port belegt wird.

    Richtig. Diese ist auch wirklich in keiner Weise redundant. Bei den anderen kann man diskutieren (s.o.) :-)

    Für die IP-Einstellungen kann man hier nachlesen: http://technet.microsoft.com/de-de/library/ms177440.aspx

    Bei mir heisst das "IPAll", und dann wäre das so, ja


    Andreas Wolter | Microsoft Certified Master SQL Server
    Blog: www.insidesql.org/blogs/andreaswolter
    Web: www.andreas-wolter.com

    Dienstag, 13. August 2013 11:22