Windows Server 2012 R2 and Windows Server 2016 have a strange bug (or feature?) which identifies a network as “Public network” or “Private network” when it should be identified as a “Domain network”. In my case I had a server with a team of NICs for Management on a Corporate Network and another set of NICs on a private iSCSI network. After a reboot, the Network Location Awareness service would identify the network as Private causing policies to begin blocking services such as Remote Desktop. I found all sorts of potential solutions from delaying the start up of the NLA service, adding a Default Gateway to the iSCSI adapters, and editing Group Policy. The solution for me was editing the NetworkName and PolicyOverdue registry values under HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Group Policy\History. (more…)
Redirecting a WordPress website from HTTP to HTTPS is not as easy as it should be. I have yet to understand why there isn’t a simple checkbox to complete this task. There’s also numerous references which provide inaccurate information of how to accomplish this task. I’ll explain how to accomplish this with Apache, Nginx, IIS, as well as some popular web hosting control panels. These configuration changes are not WordPress-specific and can be referenced for any type of website.
If you don’t already have a certificate, check out Let’s Encrypt to obtain a trusted certificate at no cost. In most cases Let’s Encrypt certificates can be easily requested from your CPanel or Plesk web hosting control panel.
A common requirement of new operating system deployments from Configuration Manager is to have the ability to prompt for variables such as a computer name, time zone, and whether or not to install applications and updates. You could add MDT integration to Configuration Manager or you could create your own HTA using basic HTML and VBScript. However there are limitations with HTA files you should be aware of and you’ll need to tweak your task sequences. (more…)
I was recently deploying a WSUS server as part of a System Center Configuration Manager implementation when my Configuration Manager server’s CPU became pegged at 100%. It was clear the issue was being caused by the WsusPool IIS application pool. I was expecting the CPU to struggle for a few hours during the initial check-ins by Windows Clients. I had also made the recommended changes to the WsusPool to service the demands of Windows 10 clients. However after 24 hours the server was still struggling with 8 vCPU using 99% CPU.
Eventually I noticed VMTools was absent from the virtual machine. I researched whether this could have an enormous performance impact and as it turns out, it can. The storage drivers alone vastly improve I/O performance for intensive workloads.Installing VMTools immediately resolved the issue. The WsusPool continued to be intensive for a few more hours while it processed client check-ins but used only 20-30% CPU while the IIS Worker Process was able to grow to consume 12GB of memory. But a few hours later initial client check-ins had completed and everything was back to normal.
Conclusion: Install VMTools.
Windows 10 and Server 2016 Express Updates may not be what we think they are. I was recently implementing System Center Configuration Manager 1702 and thought I’d try enabling Microsoft’s newly released Express Updates functionality which become fully supported as of the April 2017 Cumulative Update. However I quickly discovered there’s major consequences of enabling the global settings.
In this article I’ll walk you through setting up VMPerf-To-Graphite PowerShell script written by Matthias and available on GitHub. This will provide the ability to graph metrics such as CPU memory, IOPS, read latency, and write latency on a per-VM basis. It’s extremely useful information that will provide insight for troubleshooting resource contention. And the best part, it’s Open Source.
Graphite is a scalable metric graphing solution. It’s a popular choice in the enterprise for collecting metrics from multiple sources and producing readable graphs. However, Graphite’s graphing interface isn’t all that user friendly and it’s difficult to showcase the collected metrics. This is where Grafana shines. Grafana is a web front-end for Graphite or InfluxDB. Although they have their own graphing solutions, Grafana is far more powerful and much easier to use. I’ll guide you through installing and configuring Graphite and Grafana on Ubuntu 14.04.
Installing PHP on IIS appears to be fairly straight forward. Microsoft even has a tool called the Web Platform Installer which is supposed to make it even easier but it can actually be a bit frustrating. Many resources available on the web overlook a few prerequisites when installing PHP on IIS running on Windows Server 2012 R2. I’ve developed a guide and a list of requirements that will make the process of installing PHP on IIS much easier. (more…)
Recently I started receiving the error “VMware Remote MKS has stopped working” when starting, rebooting, and shutting down virtual machines with the VMware vSphere Client console. I searched the VMware community forums and was overwhelmed with the amount of ignorance. It turns out the problem is caused by overlapping versions of the vSphere Infrastructure Client.
It appears that the VI Client for vSphere 6 relies on the version 5.5. This is fine until you need to install version 5.1 of the VI Client which overwrites some registry values causing version 6 to become unstable. Luckily the user enriquepessoa on the VMware community forums has a solution by running a simple registry file which can be downloaded from this thread, https://communities.vmware.com/message/2576374#2576374. I no longer receive the error “VMware Remote MKS has stopped working” when starting, rebooting, and shutting down virtual machines.