Zum Inhalt

Schlagwort: microsoft

Exchange: RPC_S_SERVER_UNAVAILABLE 0x6ba – Es wird versucht, ein Ping-Signal an RPC-Endpunkt 6001 (Exchange Information Store) auf Server xy zu senden

Fehlermeldung:

OUTLOOK EXCHANGE RPC
Es wird versucht, ein Ping-Signal an RPC-Endpunkt 6001 (Exchange Information Store) auf Server exchsrv.intern.de zu senden.
Fehler beim Versuch, ein PING-Signal an den Endpunkt zu senden.
Weitere Informationen zu diesem Problem und zu möglichen Lösungen
Weitere Details
Der RPC_S_SERVER_UNAVAILABLE-Fehler (0x6ba) wurde vom RPC-Laufzeitprozess ausgelöst.

Ich musste den Eintrag in der Registry [HKLM\Software\Microsoft\Rpc\RPCproxy] von

"ValidPorts"="exchsrv:593;exchsrv:49152-65535"

in

"ValidPorts"="exchsrv:6001-6002;exchsrv.intern.de:6001-6002;exchsrv:6004;exchsrv.intern.de:6004;exchsrv:593;exchsrv.intern.de:593"

ändern. Der Servername muss selbstverständlich angepasst werden 🙂

Leave a Comment

HOW-TO: Desktopdarstellung unter Winodws Server 2012 installieren

Versucht man unter Windows Server 2012, das Feature “Desktopdarstellung” zu aktivieren, was z.B. für Anwendungen wie Microsoft OneNote auf Development-Servern benötigt wird, wird man sich wohl erstmal fragen, wo man denn dieses Feature installieren kann. Denn über die Feature-Installation im Server-Manager ist es nicht mehr auffindbar. Die Lösung lautet: Windows PowerShell (mit Administratorrechten). In der Shell führen wir folgenden Befehl aus:

Install-WindowsFeature Server-Gui-Mgmt-Infra, Server-Gui-Shell, Desktop-Experience

Nach einem Neustart des Servers steht die Desktopdarstellung dann zur Verfügung.

screenshot

Leave a Comment

Exchange 2013: Default Global Address List / Globale Standard-Adressliste neu erstellen

Die Standard-GAL kann man nicht löschen. Deswegen erstellt man zuerst mit

New-GlobalAddressList -Name "Name der neuen Liste" -IncludedRecipients MailboxUsers

eine "Normale" neue GAL. Danach mittels "adsiedit.msc" wechseln zu

Configuration [<domainController>.contoso.com] CN=Configuration,DC=contoso,DC=comCN=Services CN=Microsoft ExchangeCN=<OrganizationName> CN=Address Lists Container CN=All Global Address Lists

und die "alte" Default Global Address List suchen. Diese wird mit rechter Maustaste -> Eigenschaften bearbeitet und der Eintrag "msExchRecipientFilterFlags" leer gemacht (nicht gelöscht).

Die neue GAL taucht dort ebenfalls in der Liste auf. Hier setzt man bei "msExchRecipientFilterFlags" den Wert 3.

In der Exchange Powershell sollte man nun mittels

Update-GlobalAddressList -Identity "Name der neuen Liste"

einmalig die neue Adressliste generieren. Die alte Liste lässt sich mit

remove-GlobalAddressList -Identity "Default Global Address List"

löschen. Fertig 🙂

Leave a Comment

HOWTO: Windows Server 2008/2012 Backups/VSS-Fehler debuggen

Ein schönes Beispiel um zu zeigen, wie man Windows Backup-Fehler generell debuggen kann, gültig für Windows Server 2008 und neuer (entspricht den Client-Betriebssystemen Vista und neuer):

(1) FEHLERBESCHREIBUNG

Log des Sicherungsprogramms meldet:
The backup operation stopped before completing.
Detailed error: ERROR – A Volume Shadow Copy Service operation error has occurred: (0x800423f4)
The writer experienced a non-transient error. If the backup process is retried, the error is likely to reoccur.

Die sog. VSS Writer sammeln Daten von der Festplatte, MSSQL, IIS, Exchange, und so weiter ein und schreiben die jeweiligen Daten(-banken) in einem konsistenten Stand ins Backup, übrigens werden die meistens auch bei Drittanbieter-Software verwendet (Acronis, BackupExec, etc…)

(2) WER IST DER SCHULDIGE?

Infos darüber, welches VSS-Writer-Modul den Fehler erzeugt, findet man in der Konsole mit "VSSADMIN LIST WRITERS"

Writer name: 'SqlServerWriter'
Writer Id: {a65faa63-5ea8-4ebc-9dbd-a0c4db26912a}
Writer Instance Id: {4fb3be04-8d39-4fc4-9b39-dd6abe6061a9}
State: [8] Failed
Last error: Non-retryable error

Ergo: irgendwas mit SQL.

(3) EIN BISSCHEN GENAUER, BITTE

Die Windows-Ereignisanzeige (am besten schaut man immer zuerst bei den "Administrativen Ereignissen", da bekommt man nur Warnungen und Fehler) sagt zum Zeitpunkt, als das Backup abgebrochen ist:

Source: SQLWRITER
EventID: 8193
SQL writer error: Unexpected error calling routine
IClientVirtualDevice::GetCommand. hr = 0x80770004.

sowie viele dutzende:

Source: MSSQL$MSSQLSERVER2008
EventID: 3041
BACKUP failed to complete the command BACKUP DATABASE MSSQL047.
Check the backup application log for detailed messages.

Ein kurzer Blick nach den beiden Event-IDs und dem Fehlercode 0x80770004 bringt einen dazu, dass es wohl um kaputte Datenbanken geht, die wegen einer Eigenschaft "AutoClose = True" kaputt gehen, gerade auf hektisch befahrenen MSSQL-Servern.

(4) DIE PROBLEMLÖSUNG

Microsoft sagt dazu, es sei "Best Practice", die AutoClose Property abzuschalten. AutoClose bringt den SQL-Server dazu, die Datenbank beim disconnect des letzten Clienst die Daten auf die Festplatte zu schreiben. Verbindet wieder ein Client, wird die DB wieder geöffnet, und wieder geschlossen, und auf, und zu, und BUMM.

siehe:
http://blogs.msdn.com/b/buckwoody/archive/2009/06/24/sql-server-best-practices-autoclose-should-be-off.aspx

Das ist nicht nur anspruchsvoll für die DB, sondern macht auch jegliche Caching-Versuche zunichte. Der Server sollte halt bei deaktiviertem AutoClose nicht hart abgeschalten werden.

Schnell das MSSQLMS (Microsoft SQL Server Management Studio) gestartet, als Administrator eingeloggt, "New Query", und mit folgender Abfrage betroffene Datenbanken gesucht:

SELECT * FROM sys.databases WHERE DATABASEPROPERTYEX (name, 'IsAutoClose') = 1

Die Datenbanken kann man nun mit rechtsklick auf die Datenbank -> Eigenschaften -> Optionen -> AutoClose = false entsprechend konfigurieren.

Manche Datenbanken quittieren das mit einem Fehler 9001, da hilft es die DB offline und online zu nehmen. Die Ursache dafür ist genau der Datenbankdefekt, der durch die angeschaltene AutoClose Option beursacht wurde.

Hint: Microsoft hat ab *irgendeiner* Version (eine neuere als die, an der ich sitze) AutoClose = off direkt in das CREATE DATABASE Statement als Standardwert implementiert. Besser spät als nie.

(5) AUFRÄUMARBEITEN

Hat man alle Datenbanken richtig konfiguriert, werden die kaputten DBs noch repariert. Das kann man sich klicken, schneller geht's aber mit folgendem Query:

SQL-Kung Fu für "ich habe kein Backup aber will alle Datenbanken jetzt sofort reparieren":

MSSQL 2005 und früher:
exec sp_MSforeachDB 'DBCC CHECKDB ("?") WITH ALL_ERRORMSGS, DATA_PURITY'

MSSQL 2008 und später:
exec sp_MSforeachDB 'DBCC CHECKDB ("?") WITH ALL_ERRORMSGS, EXTENDED_LOGICAL_CHECKS, DATA_PURITY'

Danach startet man das Backup und freut sich auf das nächste Problem 🙂

Leave a Comment