Automatically deploy Puppet agent on VMWare Templates

When you deploy a VMWare template, you have the option to create a customization specification. I recommend creating a customizaiton specification to be used when deploying your virtual machines.One of the options in your customization specification is a run once command. Or really, it is a list of run once commands. There are three commands you should add to this section:First, you want to download the puppet agent by using this command:powershell "new-item C:\install -type directory; (new-object Read more [...]

Fixing Error 500 in WordPress

HTTP Error 500 means internal server error. This can have a variety of causes. With wordpress there are 4 common causes:Allocated Memory has been exhaustedCorrupted .htaccess filecorrupted php fileBad pluginAllocated Memory has been exhausted:You can adjust the max memory for your site by adding the following to your wp-config.php file in the root folder for your site:define('WP_MEMORY_LIMIT', '64M');The above code can be added anywhere within the <?php> tagIf that does it, then you need Read more [...]

Squashing GIT Commits

When you are working with version control. You may have multiple commits that you would like to combine into a single commit. Or perhaps you want to change their order, etc...First you need to determine how far back you want to go. Open a command prompt or terminal window, navigate to your Git, type>git log -10 The above command will show the last 10 commits. If that does not go far enough back, in increase the number 10Once you have identified the commits you wish to squash Read more [...]

Creating a BranchCache enabled CIFS share on Netapp

Branch Cache is a caching technology to help with performance when accessing file shares over a WAN. Netapp supports this technology and it can be used with compatible clients such as Windows 7 Enterprise and newer, and Server 2008r2 and newer Enable Branch Cache on a storage system Enable SMB 2.1: options cifs.smb2.enable on The command enables both SMB 2.0 and SMB 2.1.Enable BranchCache: options cifs.smb2_1.branch_cache.enable onOptional: Configure the time (in seconds) to keep an unused BranchCache Read more [...]

Windows Update Commands

The windows update command utility in windows is: WUAUCLTHere are a list of the available switches for the WUAUCLT command:/DetectNow/ReportNow/RunHandlerComServer/RunStoreAsComServer/ShowSettingsDialog/ResetAuthorization/ResetEulas/ShowWU/ShowWindowsUpdate/SelfUpdateManaged/SelfUpdateUnmanaged/UpdateNow/ShowWUAutoScan/ShowFeaturedUpdates/ShowOptions/ShowFeaturedOptInDialog/DemoUIYou can also do it via powershell. You can download the powershell module here: Read more [...]

Sending an email Programmatically using Java

This post includes a function you can use for sending emails from your Java application. One thing to note is the javax.mail libraries are not included in the Java JDK, so you will have to download them separately. The java mail library can be downloaded from the following location: Once you have downloaded the java mail library, you will need to add the mail.jar Read more [...]

Invalid Virtual Machines

Sometimes virtual machines within your VMWare environment may show up as invalid. The machine is in-fact still running at this point; but you are unable to manage the virtual machine. This can happen for a few reasons, but in my experience the most common is when the esx host is unable to access the storage. I have seen this caused by high latency when accessing an NFS datastore, when you leave an offline datastore mounted for an extended period, and I have also seen this happen when a SAN controller failover event occurs. This condition happens when the esx host cannot access the vmx file (vmware configuration file) in the datastore, so VMWare just sort of forgets the configuration of the machine. The process which runs the virtual machine is still running on the host, so your VM does not crash. But, you still need to recover since HA, DRS, etc... no longer work when the VM is in this state. Read more [...]

Scripting Basics

Scripting is a very useful skill which will save any Sysadmin a lot of time. Who wants to go to every device in their environment and perform the same task over and over again? In this posting I will cover a few basics for those getting started in scripting. Read more [...]