Posts

Citrix – Unable to open internet shortcuts and links from Outlook 2003.

When using: HDX Flash Redirector 1.1.6.

http://support.citrix.com/article/CTX134523

Issue: When Internet Explorer 8.0 is used and you open an internet shortcut (for example from your desktop or Outlook 2003) it doesn’t open in the browser. The cursor indicates the browser is busy but nothing happens.

When the browser is closed and restartedthe page opens in another Internet Explorer window.

If Internet Explorer isn’t active when the link is clicked the page is opened immediately.

clip_image001

Solution:

 

Read more

Citrix: Export to network drive really slow

For one of our customers I was asked to troubleshoot an application that exports data to several file types, including Microsoft Excel’s XLS file type.

Environment

The client runs Citrix XenApp 5 on Windows Server 2003 (x86). All user homedrives are mapped to the H-drive.

Problem

The application lets you perform queries on your Oracle database, analyze and format the results and prepare those for presentation. When the application exports an XLS-file to the H-drive, it freezes for 5 minutes and then responds normally again. However, when the same application exports a TXT- or CSV-file to the same drive, it freezes for just a few seconds.

Read more

Our partner Denamik has released Denamik LoadGen 2.3

Our partner Denamik has released a new version of Denamik LoadGen. The execution of massive load and stress tests is now easier than before. You can now record your own user action scripts from within LoadGen, and setup LoadBots to handle the execution of these scripts. LoadGen allows you to manage LoadBots to create remote sessions and evaluate your IT environment under stress. A built-in reporting facility will give you instant results.

What is new in LoadGen 2.3:

  • Rewrite of installation and activation of LoadBots
  • Rewrite of internal functions of the DUAF language to speed up interaction with XenApp desktops
  • Introducing the possibilities to add your own libraries to DUAF scripts

Feel free to check out Denamik LoadGen 2.3, it’s free up to 15 virtual users.

Restoring the Default Domain Policy

It’s a best practice not to alter the Default Domain Policy. The default settings in this policy are intended for all users and computers within the domain. By altering this the environment becomes unstable and unpredictable.

Recently I was troubleshooting a new environment.  There where all sorts of strange policy behavior. While I was browsing thru the domain I found that the Default Domain Policy was renamed and the default rights where also altered.

I wanted to restore the Default Domain Policy but preserve the settings that where set.

Read more

Moving the ISTG role to another domain controller

On a customer site we have multiple Windows 2003 domain controllers in an single AD site. One of the domain controllers has connection problems this causes authentication problems because the troubled server has the Inter-Site Topology Generator (ISTG) role. The server with the ISTG role is responsible for managing the inbound replication connection objects for all bridgehead servers in the site in which it is located.

To end the authentication problems I want to move the ISTG role from server02 to dc001. When you open the Active Directory Sites and Services console. In this console you open the troubled site. When you open the site, you see in the right pan NTDS Site Settings.

image

Read more

Data Protection Manager 2007 – Error ID: 31008

Het is noodzakelijk dat de Volume Shadow Copy Service (VSS) update rollup package voor Windows 2003 is geïnstalleerd voordat er met Microsoft System Center Data Protection Manager 2007 een Protection Group gemaakt kan worden.

Wanneer deze update niet is doorgevoerd treed er een foutmelding (ID: 31008) op wanneer op de desbetreffende server ‘All Volumes’ en ‘System State’ worden aangevinkt. Wanneer de foutmelding hierna nog optreed, dient voor Refresh information in de Management Tab,  Agents Tab onder Actions (rechterpane) gekozen te worden. Dit is noodzakelijk omdat de Agents eenmaal in de 30 minuten ververst worden.

Daniel Nikolic

Microsoft DPM / SCOM error: 800706ba – The RPC server is unavailable

Het kan voorkomen dat de volgende foutmelding verschijnt wanneer er een connectie wordt gemaakt naar de DPM / SCOM server óf wanneer een agent wordt geïnstalleerd:

Agent operation failed. (ID: 370)
The agent operation failed because the DPM Agent Coordinator service on MachineName.DNSName did not respond. (ID: 324)

DPM ID: 0^|^MachineName^|^Agent operation failed^|^DPM^|^Administration^|^MachineName^|^SID

 Wanneer daarna, bijvoorbeeld met de hand de agent wordt geïnstalleerd, in dit geval voor DPM de dpm server gezet wordt verschijnt de volgende foutmelding:

setdpmserver.exe -dpmservername MachineName.DNSName
Configuring dpm server settings and firewall settings for dpm server =[MachineName.DNSName]
DPM server name provided is invalid. Make sure that machine provided is fully qualified name and joined in domain.
SetDpmServer failed with errorcode =800706ba, error says: The RPC server is unavailable.

Volg de stappen in het volgende artikel en controleer in ieder geval of er geping-ed kan worden naar de MachineName.DNSName. Wanneer er gebruik wordt gemaakt van Windows 2008 let dan op dat de Firewall standaard aanstaat, het volstaat om het volgende commando uit te voeren: Netsh firewall set service remoteadmin enable all

Daniel Nikolic

SQL 2005 replicatie via https

SQL 2005 is best een goede database serverapplicatie; zeker nog niet zover als een Oracle bak, maar Microsoft is wel op weg… Zeker als je denkt aan de integratie van het .Net Framework. Maar goed dat is een hele andere discussie 😉

Sinds een tijd wilde ik onze versioning SQL database gaan repliceren naar een andere, fysiek gescheiden, omgeving. Het liefste wilde ik dit natuurlijk via https doen, aangezien een vpn verbinding tussen twee verschillende omgeving niet echt de meest award winning oplossing is…

Sinds SQL 2005 is https replicatie mogelijk. Wat er gebeurd is dat je op de ‘orginele’ database server een ‘Local Publication’ moet aanmaken op basis van een ‘Merge publication’, dan is het mogelijk om de publicatie te synchronizeren met een website. Voordat je de publicatie naar de website kan schrijven is het allereerst noodzakelijk de synchronisatie website aan te maken. Dit kan door middel van de ‘Configure Web Synchronization Wizard’. Deze wizard creëert de website in de desbetreffende context binnen inetmgr (IIS manager), ook plaatst de wizard een dll genaamd ‘replisapi.dll’ in de website. Dit is een ASP.NET web service applicatie; beter gezegd een broker tussen de push en pull SQL servers.

Wanneer de publicatie en de website gereed zijn dient gecontroleerd te worden of de website benaderd kan worden: hiervoor dien je de volgende URL te gebruiker: https://sub.site/directory/replisapi.dll?diag

sql

De volgende pagina moet zichtbaar worden (gebruik in ieder geval een origineel certificaat en ‘Basic authentication’).

Let vooral op de SUCCESS meldingen, deze moeten vanzelfsprekend succesvol zijn, zo niet werkt het niet 🙂

 

 

 

 

Ok, nu moet de andere SQL server natuurlijk nog de Database gaan binnentrekken: ‘Pull subscription’. Allereerst moet de distributie geconfigureerd worden (‘Configure distribution’).

Wanneer dit gereed is dient de volgende T-SQL code uitgevoerd te worden:

DECLARE @publication AS sysname;
DECLARE @publisher AS sysname;
DECLARE @publicationDB AS sysname;
DECLARE @websyncurl AS sysname;
DECLARE @security_mode AS int;
DECLARE @login AS sysname;
DECLARE @password AS nvarchar(512);
DECLARE @login1 AS sysname;
DECLARE @password1 AS nvarchar(512);

SET @publication = N’publication-name-publisher‘;
SET @publisher = ‘sql-servername-publisher‘;
SET @publicationDB = N’databasename-publisher‘;
SET @websyncurl = ‘https://sub.site/directory‘;
SET @security_mode = 0; — Basic Authentication for IIS
SET @loginJob = N’domainusername‘;
SET @passwordJob = ‘password‘;
SET @loginWeb = N’domainusername’;
SET @passwordWeb = ‘password‘;

EXEC sp_addmergepullsubscription
    @publisher = @publisher,
    @publication = @publication,
    @publisher_db = @publicationDB,
    @subscriber_type = N’anonymous’;

EXEC sp_addmergepullsubscription_agent
    @publisher = @publisher,
    @publisher_db = @publicationDB,
    @publication = @publication,
    @distributor = @publisher,
    @job_login = @loginJob,
    @job_password = @passwordJob ,
    @use_web_sync = 1,
    @internet_security_mode = @security_mode,
    @internet_url = @websyncurl,
    @internet_login = @loginWeb,
    @internet_password = @passwordWeb;

GO

Na deze actie zijn we gereed; de ‘Local subscription’ is klaar voor gebruik. Forceer de replicatie door met de rechtermuisknop op de subscription te klikken en te kiezen voor ‘View Synchronization Status’ en daarna voor Start te kiezen. De status kan bekeken worden door voor ‘View Job History’ te kiezen. Lees in dit artikel de ins-en-outs met betrekking tot het synchroniseren van een database via het web.

Happy replicating…

Daniel
http://www.pepperbyte.com

Installatie Altiris Deployment Server

Vandaag weer veel geleerd over Altiris. Tijdens de installatie van Altiris wordt je gevraagd de locatie aan te geven van de MS-Dos bestanden, voor het maken van een bootdisktette. Hiervoor moet je de Windows 98 cd gebruiken. Het is anno 2008 niet eenvoudig om een Windows 98 cd boven water te halen. Nadat we bijna Bob naar Amsterdam hadden gestuurd om daar een Windows 98 cd op te halen kwam de klant zelf met de benodigde cd aan zetten. Na het aanwijzen van de Windows 98 cd blijft de installatie klagen dat hij een aantal bestanden mist. Na de installatie van Altiris heb je een uitgebreide wizzard om de bestanden voor een Bootdisk op te geven. Uiteindelijk lijkt het te lukken met een combinatie van de Windows 98 cd en een Dos bootdisk. Ik zeg met nadruk, lijkt! Na de installatie proberen we een Thin Client via PXE op Altiris te laten aanmelden. Het aanmelden gaat goed totdat de melding “Transferring control to the Boot Diskette Image” op het scherm verschijnt en niet meer weg gaat. Evil and Twisted Na wat onderzoek in verschillende Altiris Knowledgebases lijkt het probleem in de MS-Dos Bootdiskette te zitten.

Om dit probleem te tackelen download men een “Free Dos” bootimage van de Altiris FTP site. Dit bestand, “Altiris_DeploymentServer_6_8_206(GA)_Pre-bootFiles.frm”, wordt ingelezen in de Bootmanger en daarna moet men Free Dos verkiezen  boven MS-Dos.

Nadat de Thin Client opnieuw opstart komt hij een stuk verder, het gaat alleen nu mis op het moment dat de drivemapping naar de expressshare wordt aangemaakt. De foutmelding die verschijnt meld dat het opgegeven wachtwoord niet juist is.  Ik weet 100% zeker dat het wachtwoord klopt, maar door zo’n melding ga je toch twijfelen. Als de systeembeheerder van de klant even later komt buurten maakt hij een opmerking over de beveiliging van Windows 2003. Deze zou het default niet toelaten om middels Dos op het domein in te loggen. Dit was voor mij het wel bekende kwartje, en na een korte Google actie vind ik de juiste instellingen.

Om het mogelijk te maken dat Dos clients zich kunnen aanmelden op een Windows 2003 domein moet het volgende in de”Default Domain Controller Security Policy” worden  aangepast.
 
– Network Security – LAN Manager authentication level = “Send LM & NTLM responses”
– Microsoft Network Server – Digitally sign Communications (always) = “Disabled”
Als dit in de policy is aangepast moet het commando “gpupdate /force”  op de prompt uitgevoerd worden, waarna de drive mapping netjes door de Thin Client wordt uitgevoerd.

Al met al weer een leerzame dag. Big Grin

SQL 2000 Cluster en startup parameters

Wow, na dit weekend heb ik weer een hoop geleerd van SQL server….

Wat nou als je de SQL service start en hij klapt er direct weer uit. Zeker wanneer je een Move group doet op een SQL Cluster en hij faalt direct, ook wanneer je de SQL resource weer terugplaatst naar de originele node en wederom niet opstart. De Event Viewer geeft wazige meldingen zoals:

  • Event ID 1000: Faulting application sqlservr.exe, version 2000.80.2039.0, faulting module msvcr71.dll, version 7.10.3052.4, fault address 0x00011da1.
  • Event ID 17052: [sqsrvres] StartResourceService: Failed to start MSSQLSERVER service.  CurrentState: 1
  • Event ID 17052: [sqsrvres] OnlineThread: ResUtilsStartResourceService failed (status 435)
  • Event ID 17052: [sqsrvres] OnlineThread: Error 435 bringing resource online.

Met deze events kun je weinig, ook googlen helpt weinig… Goed, dan wordt het tijd om eens goed te kijken naar wat er misgaat. We starten een cmd sessie en starten het SQLservr.exe process, we krijgen de volgende melding:

2007-12-17 10:15:24.24 server    Microsoft SQL Server  2000 – 8.00.2039 (Intel X86)
        May  3 2005 23:18:38
        Copyright (c) 1988-2003 Microsoft Corporation
        Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 1)

2007-12-17 10:15:24.24 server    Copyright (C) 1988-2002 Microsoft Corporation.

2007-12-17 10:15:24.24 server    All rights reserved.
2007-12-17 10:15:24.24 server    Server Process ID is 352.
2007-12-17 10:15:24.24 server    Logging SQL Server messages in file ‘C:Program FilesMicrosoft SQL ServerMSSQLlogERRORLOG’.
2007-12-17 10:15:24.25 server    SQL Server is starting at priority class ‘normal'(4 CPUs detected).
2007-12-17 10:15:24.36 server    Using ‘dbghelp.dll’ version ‘4.0.5’
*Stack Dump being sent to C:Program FilesMicrosoft SQL ServerMSSQLlogSQLDump0001.txt
2007-12-17 10:15:24.39 server    SqlDumpExceptionHandler: Process 132 generated fatal exception c0000094 EXCEPTION_INT_DIVIDE_BY_ZERO. SQL Server is terminating this process.
* ******************************************************************************
*
*
* BEGIN STACK DUMP:
*   12/17/07 10:15:24 spid 0
*
*   Exception Address = 006CE3EB (SQLExit + 001668F4 Line 0+00000000)
*   Exception Code    = c0000094 EXCEPTION_INT_DIVIDE_BY_ZERO
*
*  MODULE                          BASE      END       SIZE
* sqlservr                       00400000  00CBAFFF  008bb000
* ntdll                          7C800000  7C8BFFFF  000c0000
* kernel32                       77E40000  77F41FFF  00102000
* Invalid Address                77F50000  77FEBFFF  0009c000
* Invalid Address                77C50000  77CEEFFF  0009f000
* Invalid Address                7C3A0000  7C41AFFF  0007b000
* MSVCR71                        7C340000  7C395FFF  00056000
* opends60                       41060000  41065FFF  00006000
* SHELL32                        7C8D0000  7D0D2FFF  00803000
* GDI32                          77C00000  77C47FFF  00048000
* USER32                         77380000  77411FFF  00092000
* msvcrt                         77BA0000  77BF9FFF  0005a000
* SHLWAPI                        77DA0000  77DF1FFF  00052000
* sqlsort                        42AE0000  42B6FFFF  00090000
* ums                            41070000  4107DFFF  0000e000
* comctl32                       77420000  77522FFF  00103000
* sqlevn70                       41080000  4108AFFF  0000b000
* dbghelp                        02800000  028FFFFF  00100000
*
*        Edi: 00000000:
*        Esi: 00C45E80: 00032760  01110000  01DF0000  00000012  0003FFFF  000278DD
*        Eax: 00000000:
*        Ebx: 00000001:
*        Ecx: 00000000:
*        Edx: 00000000:
*        Eip: 006CE3EB: 25E9F1F7  85FFD45B  61850FFF  6AFFD45B  E8CE8B00  FFD45A1C
*        Ebp: 000AF800: 000AF81C  0041401F  00000001  00000000  00000000  00000000
*      SegCs: 0000001B:
*     EFlags: 00010246: 00730065  00430000  004D004F  00550050  00450054  004E0052
*        Esp: 000AF7D8: 00000000  00C4E0E8  00000001  0000001C  000AF804  00000000
*      SegSs: 00000023:
* ******************************************************************************
*
* —————————————————————
—————

* Short Stack Dump
* 006CE3EB Module(sqlservr+002CE3EB) (SQLExit+001668F4)
* 0041401F Module(sqlservr+0001401F)
* 00414078 Module(sqlservr+00014078)
* 0041566B Module(sqlservr+0001566B)
* 005A09C9 Module(sqlservr+001A09C9) (SQLExit+00038ED2)
* 005655F8 Module(sqlservr+001655F8)
* 005B26DA Module(sqlservr+001B26DA) (SQLExit+0004ABE3)
* 005B37AB Module(sqlservr+001B37AB) (SQLExit+0004BCB4)
* 77E523CD Module(kernel32+000123CD) (IsProcessorFeaturePresent+0000009E)
* ——————————————————————————-

2007-12-17 10:15:29.97 server    Stack Signature for the dump is 0x2514D343
2007-12-17 10:15:29.99 server    SQL Server is aborting. Fatal exception c0000094 caught.

Goed, nou niet echt. Op een SQL cluster met zo’n 150GB aan database breekt het zweet mij dan toch wel enigszins uit EEK

Ik begin dan met troubleshooten:

  • Databases en logs verplaatsen (buiten systeem databases; zoals master, tempdb, pubs, model etc.), controleren en helaas…
  • Vervangen van systeem databases, controleren en helaas…
  • Verplaatsen van de master.mdf en mastlog.ldf, controleren en hé een andere melding:

2007-12-17 10:53:49.32 server    Microsoft SQL Server  2000 – 8.00.2039 (Intel X86)
        May  3 2005 23:18:38
        Copyright (c) 1988-2003 Microsoft Corporation
        Enterprise Edition on Windows NT 5.2 (Build 3790: Service Pack 1)

2007-12-17 10:53:49.32 server    Copyright (C) 1988-2002 Microsoft Corporation.

2007-12-17 10:53:49.32 server    All rights reserved.
2007-12-17 10:53:49.32 server    Server Process ID is 2000.
2007-12-17 10:53:49.33 server    Logging SQL Server messages in file ‘C:Program FilesMicrosoft SQL ServerMSSQLlogERRORLOG’.
2007-12-17 10:53:49.33 server    initconfig: Error 2(The system cannot find the file specified.) opening ‘C:Program FilesMicrosoft SQL ServerMSSQLdatamaster.mdf’ for configuration information.

Oké, dit is positief, ja positief, want dit zou dan wel eens in de opstartparameters van SQL kunnen zitten (Startup Parameters). En inderdaad wanneer ik het register open en de key ‘HKEY_LOCAL_MACHINESOFTWAREMicrosoftMSSQLServerMSSQLServerParameters’ bekijk zie ik inderdaad iets vreemds: de SQLArg3 string met een waarde ‘-P’. Volgende stap is een export maken van de register key en de waarde SQLArg3 verwijderen. YES, binnen de cmd start de SQL server weer op! Maar goed, nu het Cluster nog, via de Cluster Manager de SQLService resource, Bring online en helaas… Hij faalt direct! En de register waarde SQLArg3 is weer terug… Ok, maar hoe verwijder je nou die opstartparameters dan van een Cluster resource? Ik vermoedde op dat moment dat dit door de Quorum (het hart van Windows Cluster) geregeld zou worden. Nou eerlijk gezegd heb ik daar een beetje hulp bij nodig…. Na een paar uur had ik een goede SQL specialist bij Microsoft te pakken. Hij vertelde me het volgende:

  • Ga naar het register en de volgende key: ‘HKEY_LOCAL_MACHINEClusterResources’
  • Zoek daar de GUID met als inhoud Name – SQL Server
  • Onthou het nummer met de waarde: ‘SOFTWAREMicrosoftMSSQLSERVERMSSQLSERVER’
  • Ga naar je Quorum schijf, MSCSGUID en verwijder daar (na eerst een back-up gemaakt te hebben) het bestand met het nummer.cpt
  • Verwijder de SQLArg3 waarde
  • Breng SQL Server, via het Cluster, weer online

WERKEN DUS!

Cool Wink… Maar wel een héél eng en bizar probleem. Het wordt nog een stapje erger… In onze ontwikkel omgeving heb ik de SQL start-up parameters bekeken, en hé daar staat hij ook: ‘-p’. Maar na een herstart van de SQL Service start de SQL service gewoon, zonder problemen! Ok, vaag?! Dan maak ik er maar voor de grap ‘-P’ van en ja hoor: hij gaat net zo hard onderuit als het op Cluster.

Nou zou ik graag willen weten wat de ‘-p’ switch doet, iemand? De SQL specialist van Microsoft had ook geen idee…

Ok, ik heb nagevraagd wat de -P switch doet en dat is het volgende:

From what I understand and have found the -P startup parameter is used to simulate a specific number of processors for SQL Server regardless of the actual number that exist on the computer. For example if the computer only has 1 processor and -P4 is in the startup parameters then SQL Server acts as if there are 4 processors on the box instead of only 1.

Daniel
http://www.pepperbyte.com