Mittwoch, 13. Mai 2015

Skype4Business EnableSkypeDirectorySearch $true

Delete the "Skype" Entry in S4B Controlpanel - Federation and External Access - SIP Federated Providers. After that, run the following PowerShell cmdlet.

New-CsPublicProvider -Identity Skype -ProxyFqdn federation.messenger.msn.com -IconUrl https://images.edge.messenger.live.com/Messenger_16x16.png -NameDecorationRoutingDomain msn.com -NameDecorationExcludedDomainList "msn.com,outlook.com,live.com,hotmail.com" -VerificationLevel AlwaysVerifiable -Enabled $true -EnableSkypeIdRouting $true -EnableSkypeDirectorySearch $true

Close S4B Client and restart it afterwards. Have fun.

Mittwoch, 11. Februar 2015

Lync 2013 Monitoring Reports Fail to Load with “Query execution failed for dataset” Error

Nach Update der Lync Frontend Instanz mit einem CU kann der zuvor eingerichtete Reporting Service über Browser nicht mehr genutzt werden. Beim Öffnen des Report Service wird eine Fehlermeldung angezeigt:

Um das Problem nun zu beheben, gibt es die Möglichkeit mit Hilfe des SQL Management Studios die Datenbank resp. sich darin befindliche Stored Procedure auszuführen.
Innerhalb der LCSCDR und der QoEMetrics DBs gibt es die folgenden Stored Procedures:
- dbo.RTCClearTimeZoneInfo
- dbo.RtcGenerateSummaryTables
In beiden Datenbanken müssten nun die jeweiligen Stored Procedures in der richtigen Reihenfolge ausgeführt werden, um das Problem zu beheben. Jedoch gibt es auch ein PowerShell Skript, welches das automatisiert durchführt.
Dazu muss im SQL Management Studio innerhalb der Lync-Instanz die folgende Query ausgeführt werden:

USE [LcsCDR]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
declare @Status int
set @Status = 0
BEGIN TRANSACTION
    DELETE from DaylightSavingYears WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 DELETE from TimeZones WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 ALTER TABLE TimeZoneConfiguration DISABLE TRIGGER "TimeZoneConfigurationTrigger";
    DELETE from TimeZoneConfiguration WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 ALTER TABLE TimeZoneConfiguration ENABLE TRIGGER "TimeZoneConfigurationTrigger";
COMMIT TRANSACTION
exec @Status = RtcTruncateSummaryTables
SELECT @Status
 
USE [QoEMetrics]
GO
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
declare @Status int
set @Status = 0
BEGIN TRANSACTION
    DELETE from DaylightSavingYears WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 DELETE from TimeZones WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 ALTER TABLE TimeZoneConfiguration DISABLE TRIGGER "TimeZoneConfigurationTrigger";
    DELETE from TimeZoneConfiguration WITH (TABLOCKX)
    if (@@error <> 0) begin
        ROLLBACK TRANSACTION
    end
 ALTER TABLE TimeZoneConfiguration ENABLE TRIGGER "TimeZoneConfigurationTrigger";
COMMIT TRANSACTION
exec @Status = RtcTruncateSummaryTables
SELECT @Status

Zum Abschluss des Workarounds resp. deren Lösung müssen in beiden Datenbanken noch die dbo.RtcGenerateSummaryTables StoredProcedures ausgeführt werden. Im Anschluss kann der Report Service für Lync wieder ordentlich gestartet werden.

Quelle: http://eureka.greenhead.com/lync-monitoring-time-zone/

Freitag, 6. Februar 2015

Shrink VIM_VCDB on SQLExpress

Wenn eine vCenter Datenbank auf SQL Express betrieben wird, kann es vorkommen, dass die 10GB Grenze durch haufenweise alter Eventeinträge erreicht wird. Durch das Erreichen der Speicherlimite von 10GB müssen die Datenbanken überprüft und "verkleinert" werden.
Folgendes Vorgehen kann dazu verwendet werden um die Eventdatabase von "alten" Events zu erlösen und somit Speicher der Datenbank freizugeben:

1. Stoppen der vCenter Services.
2. Öffnen von Microsoft SQL Server Management Studio.
3. Wählen der VIM_VCDB Datenbank.
4. Ausführen der Query zur Kontrolle der Speichernutzung von versch. DBs
SELECT [Table Name],
(SELECT rows FROM sysindexes s WHERE s.indid < 2 AND s.id = OBJECT_ID(a.[Table Name])) AS [Row count], [Total space used (MB)] FROM
(
SELECT QUOTENAME(USER_NAME(o.uid)) + '.' + QUOTENAME(OBJECT_NAME(i.id)) AS [Table Name],
CONVERT(numeric(15,2),(((CONVERT(numeric(15,2),SUM(i.reserved)) * (SELECT low FROM master.dbo.spt_values (NOLOCK) WHERE number = 1 AND type = 'E')) / 1024.)/1024.)) AS [Total space used (MB)]
FROM sysindexes i (NOLOCK)
INNER JOIN
sysobjects o (NOLOCK)
ON
i.id = o.id AND
((o.type IN ('U', 'S')) OR o.type = 'U') AND
(OBJECTPROPERTY(i.id, 'IsMSShipped') = 0)
WHERE indid IN (0, 1, 255)
GROUP BY QUOTENAME(USER_NAME(o.uid)) + '.' + QUOTENAME(OBJECT_NAME(i.id))
) as a
ORDER BY [Total space used (MB)] DESC
5. Prüfen der betroffenen Datenbanken (z.b. VPX_Event_ARG / VPX_Event)
6. Öffnen der Table 'dbo.VPX_PARAMETER' mit den Top 200 Rows.
7. Anpassen der Einträge 'Event.maxAge' auf z.B. 30 (Tage) und 'Event.maxAgeEnabled' auf true.
8. Schliessen der dbo.VPX_PARAMETER.
9. Öffnen der StoredProcedure 'dbo.cleanup_Events_Tasks_proc' unter 'VIM_VCDB - Programmability - Stored Procedures' und ausführen dieser.
Alternativ kann auch eine neue Query geöffnet und der Befehl 'execute cleanup_Events_Tasks_proc' ausgeführt werden.
10. Starten der vCenter Services.

Mittwoch, 28. Januar 2015

Teamviewer und UAC Meldung (erhöhte Rechte)

Nutzt man Teamviewer um einen Fernsupport durchzuführen, scheitert es oft an fehlenden Rechten beim Endbenutzer. UAC Meldungen werden standardmässig in einem anderen Kontext geöffnet, welche nicht (standardmässig) durch die Fernwartung übertragen werden. Stattdessen erhält man ein Fenster mit der Meldung, dass vermutlich ein Programm ausgeführt wird, welches privilegierte Rechte benötigt.


Teamviewer bietet neben dem standardmässigen Authentifizierungsverfahren auch die Windows-Authentication an. Diese Technologie ermöglicht es die UAC-Meldungen über Teamviewer zu übertragen. Dazu muss nach erfolgreicher ID-Eingabe bei der Authentifizierung der 'Erweitert'-Button gewählt werden. Dort können dann im Anschluss die nötigen Windows-Credentials eingegeben werden (welche von Vorteil über erhöhte Rechte verfügen).

 

Im Anschluss sieht man auch die nötigen UAC-Fenster, welche mit administrativen Konteninformationen abgefüllt werden können.