Posts

Showing posts from January, 2014

Cluster Automatic Updates hangs on installation - "Adding CAU clustered role with self-updating enabled"

Image
When installing Cluster Automatic Updates on Windows Server 2012 or above you may notice the setup hangs on installation - "Adding CAU clustered role with self-updating enabled" is displayed in the user interface. More Information Checking the system event log may show the following error The Cluster service failed to bring clustered service or application ' name ' completely online or offline. One or more resources may be in a failed state. This may impact the availability of the clustered service or application. Resolution Cancel the installation, create a computer account in Active Directory using Active Directory Users and Computers and then restart the wizard. Select the prestaged computer option and enter the name of the computer account you created manually. For more information about our software XIA Configuration Server and it's ability to audit Microsoft Failover Server configuration see the following article  Automated Fa

VMware Workstation "Failed to lock the main memory file"

When attempting to start a virtual machine on VMware Workstation you may see the error"Failed to lock the main memory file" and you are prompted whether to discard or preserve the data. It's worth clicking preserve and trying to start the virtual machine again at this point. If you still get the error try renaming the lock file found in the virtual machine's location on the file system. The file will have a .vmem.lck extension for example. DEMO-CLUS2K8-01-2127748b .vmem.lck And then the virtual machine should start again OK. Document your VMware vCenter Configuration

Convert a WMI CIM_DATETIME value to a C# .NET DateTime object

We've been using WMI for a long time and one of the oddities is the WMI DateTime format which you may have noticed are in a format that looks like the following 16010101000000.000000+000 To convert this to a .NET DateTime object I've seen many workarounds and hand written parsing methods on the Internet, if you're using these I'd strongly recommend that you move to the  ManagementDateTimeConverter  this is a built in class designed for converting WMI CIM_DATETIME values to .NET DateTime objects. If you're using WMI to audit your network devices you may be interested to look at our Server Documentation Tool

Storage spaces show no disks in the primordial pool

Image
We've recently been looking at adding support for storage pools and storage spaces for our Failover Cluster Documentation tool . When using Windows Server 2012's new server manager tool storage spaces may show no disks in the primordial pool. For this to work you must ensure that the disks are not initialized and are at least 10Gb in size. You can use iSCSI targets in storage pools.

The wizard was interrupted before VMware Tools could be completely installed.

Image
I've recently come across a problem installing VMware tools using VMware workstation. The tools did not complete an upgrade correctly due to the virtual machines having to be force powered off. Subsequently you receive the error message Installation Wizard Completed The wizard was interrupted before VMware Tools could be completely installed. The error dialog shows overlapping text so you can't read the message correctly and requests that you click buttons that do not exist on the form. Having read several posts I couldn't find anything that worked Backup and remove the following registry key [HKEY_LOCAL_MACHINE\SOFTWARE\VMware, Inc.\VMware Tools] Remove any existing VMware services using the command sc delete servicename IMPORTANT:  Logon as another user account with administrator rights, you will be prompted with the following warning. You can then rollback the installation and continue with a fresh ins

Linux Server Audit

From XIA Configuration Server version 5 it is possible to document the configuration of your Linux and Unix servers and workstations. This allows you to build a documentation library of your Linux systems over time. You an export the data to PDF and also generate reports of changes that have been detected. Document General Unix Information Platform type (e.g. Solaris, HPUX, Linux) Distribution name / version Kernel version Total memory Processors Location Document Unix Hardware Platform Information Manufacturer Model Serial Number Motherboard Manufacturer Product name Version BIOS Information   Document Local Unix User Accounts Username User ID Description Home Directory Start-up application Document Local Unix Group Accounts Group name Group ID Members Document Unix Configuration Files Locate and document important configuration files including   Path Size Permissions File contents Creation date (SSH v4 se

Determine if user is a member of the SQL sysadmin role using C#

When using the SQL management objects (SQLXMO) from .NET you may wish to check if the user that is connecting to the SQL server in code is a member of the sysadmin fixed server role. There are a couple of gotchas here Firstly the following code can be used however often you will have Windows users that are members of a group and this group is then assigned permissions to a SQL server. In this case the code will fail with an null argument exception as the user is not explicitly listed in the logins. Server.Logins[Server.ConnectionContext.TrueLogin].IsMember( "sysadmin" ); You also have to be careful to ensure that you are testing the user's nested group membership, for example if a user "dsmith" is a member of "IT Technical Support" and "IT Technical Support" is a member of "SQL Administrators" which are assigned the sysadmin role on all the databases we need to ensure that the nested group membership is evaluated. The sim

C#.NET determine if a computer, hostname or IP address resolve to the local machine

When you're using a .NET application you may wish to alter how the application behaves depending on whether the machine you're connecting to is a local or remote machine. This is part of our IT Documentation Tool , XIA Configuration Server. It doesn't seem that there's a built in way to determine this with .NET /// <summary> /// Determines if the specified address or hostname belongs to the local machine. /// </summary> /// <param name="Hostname"> The IP address or hostname to validate. </param> /// <returns> A System.Boolean value that indicates whether the address is local. </returns> public static bool IsLocalMachine( String Hostname) {     if ( String .IsNullOrEmpty(Hostname)) { return false ; }     Hostname = Hostname.Trim().ToLower();     IPAddress [] ResolvedAddresses;     try { ResolvedAddresses = System.Net. Dns .GetHostAddresses(Hostname); }     catch ( Exception ) { retur

Download XenCenter

XenCenter is the management console to manage XEN Server from Citrix. I found it strangely difficult to find the XenCenter download as it doesn't install from a web interface on the host system as the VI client does from VMware. The tool is free and very easy to install when you know where to get it... Goto https://www.citrix.com/downloads/xenserver/product-software.html Select the version of XenServer you are using for example XenServer 6.2.0 Select the XenCenter Version Windows Management Console This then downloads XenCenter.msi