13 December 2010

Where are my desktop icons?

It happened again :( About a week ago I installed Windows 7 on my laptop, this time x64 version, and today it happened again. Some of my desktop icons, more exactly broken links, disappeared.
 These happened to me before, when I installed my first Windows 7. I noticed that my icons keep disappearing. Until I found a solution. Don’t be afraid this is not a virus, neither a spyware but it’s a feature of Windows 7 diagnostic task.

To resolve this issue open Task Scheduler with administrative rights (Start-All Programs-Accessories- System Tools).



Expand the tree of Task Scheduler to Diagnostic (Task Scheduler-Task Scheduler Library-Microsoft-Windows-Diagnosis).


Right click on scheduled task and click Disable.


Simple as that, and no more disappearing icons :)


This is it for today. Have fun!

12 December 2010

Virtualizing Windows 2000 server (P2V)

Last week a customer called and said that a disk died in an old Dell PowerEdge 1500SC server with Windows 2000 installed. Since this is a really old server, my estimation is about 8 years, the best solution was to virtualize it. This was also my suggestion for the customer. They agreed and I started working.

At the beginning I didn’t prepare much since I made numerous P2V migrations with VMware Converter in my career without any problems, but none of it involved Windows 2000. I prepared server and network like I usually do:
- I checked latest full server backup.
- Installed and connected temporary Gigabit switch (pluged in server and my laptop which have VMware vCenter Converter Standalone Client installed).
- Wrote down IP settings (ipconfig /all).
- Stopped / disabled all unnecessary services and wrote down their names and startup type. We wanted to control services startup. I also stopped and disabled all Dell management agents and AV software.

After server was prepared I started VMware Converter and run P2V wizard as described in my previous blog.

During this wizard I was asked to point to newer version of Scsiport.sys file. My current version was 5.0.2195.7017 and I needed 5.0.2195.7059. I started searching and found it on some other W2k server. I pointed a wizard to this file and moved forward. After two hours server was virtualized and ready to start.

Before booting virtual machine I always change Power On Boot Delay parameter to value 9000 in Virtual Machine Properties. I do it because I don't like catching ESX at boot to choose whatever boot parameter I need.


Dammit, Blue Screen or so called BSOD! It says STOP: 0x0000001E (0xC0000005,0x804a6467,0x00000000,0x000000B0).

I checked on Google and quickly found out that the problem is in Scsiport.sys driver. Quote from MS KB904374: “This problem occurs because of a code problem in the Scsiport.sys driver that is included in Update Rollup 1 for Windows 2000 SP4”. I also found this two other links: KB Article 1879 and KB Article 1005208.

Here is few suggestions for solving this issue that I found but didn’t help:
1. Injecting SCSI controller device drivers into Windows (VMware KB 1005208). I tried it and it didn’t help.
2. I also tried changing Scsiport.sys with some older and newer versions and didn’t help either. I did this by booting virtualized server from Ultimate Boot CD and copying the files to proper location on server’s hard disk.
3. I downloaded and extracted Hotfix from KB904374 and copied files to virtualized server. Didn’t help.
4. I changed SCSI controller from BusLogic to LSI Logic and got different error “STOP 0x0000007B INACCESSIBLE_BOOT_DEVICE”.

The solution that worked was:
1. I installed hotfix from KB904374 to original server.
2. I also installed VMware SCSI controller driver to original server. I did this:
   a. Download the VMware SCSI Disk Controller driver floppy.
   b. Extract with vmscsi-1.2.0.4.flp with 7zip to original server.
   c. Start “Add new hardware” from Control panel.
   d. Add new SCSI device and point to extracted files.
3. Repeat server prepare steps and start P2V wizard from VMware Converter.
4. Boot virtualized server and “Voila” Windows 2000 virtualized server is now booting.

After successful first boot I prepared virtualized machine as described in my previous blog.

Next time I’ll do P2V of something for the first time I’ll probably Google first ;)

This is it. Have fun!

01 December 2010

Virtualization and SAN upgrade on Windows 2003 cluster (part 2)

In my previous blog I described how we migrated data from our old SAN to new one. In this blog I’ll describe how we virtualized (P2V) two cluster nodes from HP physical machines to VMware ESX 4 virtual environment.

So let’s go straight to the point. Before the actual virtualization we prepared a short plan how we’re gonna do it without too much impact on this 24/7 production environment. Our steps were:
- We informed users that there may be some troubles on the network.
- We prepared server environment.
- P2V virtualization of cluster nodes.

There is not much to talk about informing the users. The usually don’t read notifications and they always complain that they didn’t receive one.

The preparation of server environment was done like this:
- We assigned appropriate LUNs to VMware servers.
- We backed up both cluster nodes.
- We wrote down IP settings (ipconfig /all)
- We migrated all cluster resources to one node (Node1).
- We installed VMware vCenter Converter Standalone Client to one of the computers with Gigabit Ethernet.


After all this was done, we started virtualizing Windows 2003 cluster servers.
- We stopped / disabled all unnecessary services and wrote down their names and startup type. It is very important to stop and disable Cluster Service, because we don’t want it to accidently start after server is virtualized and not yet configured. We wanted to control services startup.


- We also stopped and disabled all HP management agents and AV software.

After server was prepared we started VMware Converter and run P2V wizard.
- Choose the server we wanted to virtualize.


- Choose the destination server


- Enter the name of the virtual machine


- Choose datastore and virtual machine version


- Setup parameters for the conversion task. Be careful to remove unnecessary disk drives from conversion. We only need local drives and not those located on SAN.


- Once again review the conversion parameters and start conversion.


After conversion was done and before we started this machine we edited machine properties to add RAW hard disks and change startup delay.


I always change Power On Boot Delay parameter to value 9000. I do it because I don't like catching ESX at boot to choose whatever boot parameter I need.


OK, everything looks great and we were ready to start the server. But before we did it we switched off the old one! This is very important, never leave both servers running!

After successful first boot we did these:
- Installed VMwareTools.


- Configured correct IP address.
- Uninstalled HP management agents.
- Checked and configured correct disk / SAN presentation.
- Checked DNS just to be sure that cluster node didn’t register itself with wrong IP address.
- Rechecked cluster communication on Node1



After all this was done we enabled and started services one-by-one, with Cluster Service being the last.

Cluster service started successfully and we could start testing resource migration to these newly configured virtual cluster node. After we tested all resources and few days passed we virtualized the second node. We did it the same as the first one.

I hope this blog will help someone at their cluster migration :)

This is it. Have fun!

14 November 2010

Virtualization and SAN upgrade on Windows 2003 cluster (part 1)

Recently we've got task that is not as frequent as we'd like on our territories. We needed to do virtualization and disk migration of two Windows 2003 clustered servers.

So in this and in my next blog I’ll describe how we approached this delicate task, without major downtime in this 24/7 production environment.

First of all we upgraded our HP DL360 g5 servers with additional processor, RAM and FC controller for VMware cluster. We also upgraded two HP DL360 g5, running Windows 2003 cluster, with FC controller. Then we installed, configured and presented LUNs on HP StorageWorks 2024fc G2 Modular Smart Array. And at the end we installed VMware ESX 4.1 cluster.

So now what? We have two VMware ESX clustered servers and two Windows 2003 clustered servers, we also have HP MSA2024fc and old HP MSA500 SCSI. We started Googling (useful link), testing different migration strategies and at the end we decided to do it like this:
- First we’ll migrate data from old SAN to new one (Blog - part 1).
- Virtualize Windows cluster nodes on by one (Blog - part 2).

Our MS Windows cluster has these resource groups that needed to be migrated to new disks:
- File Server resource group
- Print Perver resource group
- Quorum resource group
- MS SQL Server resource group
- Domino Server (Lotus Notes) resource group

Migrating data of different cluster resource groups from old SAN to new one was done in this order:
1) Quorum
- We added new cluster resource disk named NewQuorumDisk with drive letter X:

- Moved old Quorum to new resource named NewQuorumDisk like described in MS KB280353.

- Stopped cluster resource OldQuorumDisk and delete Q: drive from the cluster
- Opened Disk Management and change drive letter Q: to Y: and X: to Q:
- Before migration to second cluster node we deleted OldQuorumDisk on second cluster node
- Tested Quorum migration between nodes

- At the end we removed LUN mapping for OldQuorumDisk

2) File server (with as little as possible downtime)
- We notified users about migration and scheduled maintenance date and hour.
- We added new cluster resource disk named NewFSDisk with drive letter X:
- Started synchronizing data between OldFSDisk (S:) and NewFSDisk (X:). We did this with RoboCopy (download) and Total Commander - Synchronize Dirs command. We repeated synchronization for a few days until the D-day.

- Made print-screens from resources in file server cluster group, just to be sure we don’t forget some settings later.
- On scheduled maintenance we stopped all File Server resource group resources except disks.
- We run file synchronization for the last time.
- We checked if number of files and size in bytes are exactly the same on both disks.
- Then we changed “Dependencies” and “Parameters” on “File Share” resource with new NewFSDisk (X:) value.
- We also checked and if necessary replaced with NewFSDisk (X:) value all other resources in this group.
- We stopped cluster resource OldFSDisk and deleted OldFSDisk from cluster resource.
- In Disk Management we changed drive letters of OldFSDisk S: to Y: and NewFSDisk X: to S:
- Then we needed to changed “Dependencies” and “Parameters” on “File Share” again to fit new lettering NewFSDisk (S:).
- We also checked and if necessary replaced with NewFSDisk (S:) value all other resources in this group.
- Before migration to second cluster node we also changed lettering there OldFSDisk S: to Y:
- After all this we started all resources, checked if file sharing is OK and then we tested cluster group migration to another cluster node.
- At the end we removed LUN mapping for OldFSDisk.

3) Print Server disk migration is almost the same as File Server disk migration
- We added new cluster resource disk named NewPSDisk with drive letter X:
- Made print-screens from resources in Print Server cluster group, just to be sure we don’t forget some settings later.
- We stopped all Print Server resource group resources except disks.
- Started synchronizing data between OldPSDisk (P:) and Print Server (X:).
- We checked if number of files and size in bytes are exactly the same on both disks.
- Then we changed “Dependencies” and “Parameters” on “Print Spooler” resource with new NewPSDisk (X:) value.
- We stopped cluster resource OldPSDisk and deleted OldPSDisk from cluster resource.
- In Disk Management we changed drive letters of OldPSDisk P: to Y: and NewPSDisk X: to P:
- Then we changed “Dependencies” and “Parameters” on “Print Spooler” resource with new NewPSDisk (P:) value.
- Before migration to second cluster node we also changed lettering there OldpsDisk P: to Y:
- After all this we started all resources, checked if Print Server is OK, printers are printing and then we tested cluster group migration to another cluster node.
- At the end we removed LUN mapping for OldFPSDisk.

At the same time we also migrated MS SQL Server cluster resource group and Domino server (Lotus Notes) cluster resource group to new disks.

So as you can see from this blog, changing SAN in MS clustered environment is not so hard as it seems. But in real, you’ll see ;)

In my next blog, part 2 of these series, I’ll describe how we did Physical to Virtual (P2V) migratin of MS clustered servers with VMware vCenter Converter Standalone Client.

I think this is enough for this one. Have fun :)

05 November 2010

Windows "Add a printer" wizard

Yesterday I encountered interesting situation. I prepared new Windows 2008 R2 server with print server role installed on it and started publishing printers. This task is on Windows 2008 R2 not as easy as advertised by MS. But never the less I did it.

After that I tried adding published printers to our test computer (Windows 7 x64). I started "Add a printer ..." wizard from Devices and Printers.



Click on "Add a printer"



Choose "Add a network, wireless or Bluetooth printer"



On my surprise there were no newly added printers to choose from. But they were listed if I clicked on "The printer that I want isn't listed" wizard.



And Next with "Find a printer in the directory, based on location feature" selected.



So the printer was listed in Active Directory but didn’t show in the wizard. This is weird!? So I started googling for a solution.

Then I found MS forum post where someone had exact same problem. This is actually not a bug but a feature :) This "Add a printer" wizard default configuration is to show 20 printers. And you can change this setting by changing this group policy "Computer configuration\Policies\Administrative Templates\Printers\Add Printer wizard - Network scan page (Managed network)"



Change it to a number that works best for you. In my case I changed it to 50.



Well done. But then again why going thru all this trouble if you can easily add printer just by right clicking on desired printer in Windows Explorer and choose Connect?



Have fun :)

17 January 2010

VMware Server 2 - slow response

Foreword:
Few days ago I received a task to make a virtual testing environment. So after searching our warehouse I found one HP business PC on which I installed Windows 2008 R2 x64 server. On this platform I later added VMware Server 2.0. Both installs went thru without any problems. I also converted few physical servers on to this newly created virtual host.

The problem:
When I started to use these virtual machines in my test lab I noticed extremely slow response time. It was almost impossible to work on them over RDP. Copying files between hosts and virtual machines was also extremely slow (aprox. 30KB/Sec).

Solution:
1. I disabled Large Send Offload (IPv4) and Large Send Offload v2 (IPv4) in Advance setting of host's Broadcom NetLink (TM) Gigabit Ethernet card. I also disabled TCP/UDP Checksum Offload (IPv4) and TCP/UDP Checksum Offload (IPv6).

It didn't help so ...

2. I disabled IP v6 on host and virtual client.
Under Network Connections, select the network adapter, and then click Properties. In the properties window, click to clear the check box for Internet Protocol Version 6(IPv6).

Using Registry Editor, locate the following registry key:
HKEY_Local_Machine\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters

Right-click the Parameters key, click New, and then click DWORD (32-bit) Value. For the key, add the following values:
Name: DisabledComponents
Data: 0xFFFFFFFF

Reboot and problem solved :)

Links:
http://communities.vmware.com/message/1191782
http://technet.microsoft.com/en-us/library/cc671176(EXCHG.80).aspx

The Beginnings

First of all I'd like to say that the content of this blog will in 90% cases contain solutions to the problems that I encounter while I work as an IT engineer. 10% of the blog's content will be... Well I really don't have any idea right now :)

So I hope some of these solutions, that I'll present, will come handy. This will be my little contribution to make our work a little bit easier.

Have fun,
Luka Obersnu