Flashing new firmware on HP hard drives without proliant hardware

I purchased a few hard drives off ebay for Docker homelab that I am building and found a good deal on a 2TB HP Enterprise branded hard drive (basically a rebranded Seagate disk with HP stickers on them).

The disk actually is a Seagate ST32000644NS that HP calls it its own model MB2000EAMZF. Once the disks arrived and I was ready to test them I noticed a fatal flaw. Their firmware was very out of date and HP made a critical update that is mandatory for these drives to avoid them from failing due to 24/7 usage.

To my surprise although these drives are Seagate and the internals are exactly the same they run different firmwares, and Seagate’s tools or utilities will not flash or work on HP branded drives thus forcing you to grab the firmware updates from HP.

Seagate makes these firmware updates available for free and HP does as well but with one gotcha – you must run the firmware update tool in Hewlett Packard hardware or the firmware will not flash and there seems to be no workaround. Thumbs down to HP for locking down a critical firmware update to only run on HP Proliant server hardware (I have Dell but a SATA hard drive is recognized as a normal hdd on any brand computer thanks to computing standards).

Useful software development tools

This post is meant to be updated with useful tools for software development. I will only classify the tool and post a link to it, this post will be helpful for someone just starting out in devOps

API

  • Postman: allows to share, test, document & monitor APIs.

IDE

  • Visual Studio: Windows software development IDE (C#/WPF)
  • Jetbrains Webstorm: Javascript IDE that becomes powerful with plugins (I use it for writing Go code)

Text editors

Must have tools

  • Git (or Github Desktop or Git for Windows)
  • Linux terminal/bash (available on any Mac/Linux machine, for Windows download Git for Windows linked above)

Running Windows containers in Docker

Microsoft Windows Server 2016 now supports containers, this means we can now isolate windows applications and share the underlying kernel of windows much like we have been doing in Linux for years with OpenVZ or more recently LXC (linux containers).

On January 4, 2017 Rancher announced experimental support for Windows containers (link below).

Official Microsoft documentation on containers.
Rancher v.1.3 has implemented experimental windows container support.

This is a good reason to spin up a Windows Server 2016 node and experiment in a lab. I’ll be looking forward to trying this when I get some time.

A comprehensive list of hypervisors and cloud platforms

In my last post I discussed Proxmox and SmartOS as possible alternatives to ditching vmware ESXi for my homelab.

Given the amount of information that is out there on the internet and that I spent quite a few hours trying to find other open source projects / cloud platforms that could be other alternatives, I thought why not make a post linking to all the platforms I have come across during my search, this way it will help someone else to simply click thru opening new tabs.
Continue reading

Virtualization hypervisor and containers all in one

I’m a big fan of virtualization, the ability to run multiple platforms and operating systems (called guests) in a single server (called host) is probably one of the best computing technologies of the past 10 years.

Personally, I have been using virtualization circa 2004. It all took off after 2006 when chip manufacturer’s started bundling virtualization technologies in their processors (Intel VT-x or AMD-v). The reason why “cloud” computing is so popular can also be attributed to virtualization.

In a container world…

However, in the past couple of years a new technology has been making making the rounds everywhere, the words “containers”, “docker”, “orchestration” is picking up steam in the past year. They say that containers are changing the landscape for system administrators and application developers.

Claims that containers can be built and deployed in seconds, share a common storage layer and allow you to resize the container in real-time when you need more performance or capacity are really exciting concepts and I think the time is now for me to jump in and learn a thing of two about this new technology when its hot a new. Continue reading

Configure Webstorm to use Github Desktop for Windows git-bash

If you have installed Github Desktop on Windows, you may have noticed that the application itself comes with a “Git Shell” which is basically a linux terminal emulator running on windows and its very useful for developers or linux users that are familiar with bash.

The problem I recently encountered was trying to find the executable PATH of the git-bash.exe so that I can configure my Webstorm IDE to use it. All the documentation on the internet seems to point to C:/Program Files/Git folder but Github may have changed this as in the latest release I downloaded (v 3.3.3.0) the files reside elsewhere and I will share where to find them.
Continue reading

Fix Webstorm “Plugin ‘Go Lang Plugin’ is incompatible with this installation

If you are running Webstorm IDE (my version as of writing is 2016.3.2) and you are trying to ‘install from disk’ the Golang plugin and get this error:

You may have tried to upload a .zip version 0.171.XXX and got this error. To fix it:

  1. Download plugin version (0.13.xxx) just download the latest one that begins with 0.13 (disregard the top of the list that has a version 0.171.xx as they are incompatible with Webstorm.
  2. Go-0.13.1924.zip is the latest one as of writing.
  3. After loading the .zip file into the program it should ask to restart Webstorm.
  4. You should now have successfully installed the Golang plugin on Webstorm IDE… confirm by going to Settings > Plugins


That’s all folks  🙂

My LASIK research for hyperopia and astigmatism

This will probably be part 1 of my research into getting LASIK surgery to correct my hyperopia (also called hypermetropia or farsightedness) combined with some mild astigmatism. Continue reading

Plex mediaserver on FreeNAS allowing anyone to stream without login

I’ve been a user of Plex mediaserver for over two years, I set this up on a FreeNAS jail a long time ago and in the past few days I noticed something funny.

Out of nowhere there were two additional streams going on in my server onto the internet, I usually share my library with friends and family but what was curious about this traffic was that Plex was claiming that these two streams were “on my local network”
Continue reading

cPanel DNSonly bind recursion

In case you may be running into issues with named/bind domain service on cPanel DNSonly not responding to DNS queries recursively, I have a fix for you.

In older versions of named/bind9 used by cPanel if you wanted to allow anyone (or if you wanted security you could have setup an ACL, let’s assume you want to allow all) you could simply edit the configuration file and change “recursion no;” to “recursion yes;” to allow anyone to make queries to your DNS server for those domains or records that are not kept in your local server (ie: resolve yahoo.com)
Newer versions of BIND9/named changed their past behavior and now require a more specific configuration, just add these under “options” section

options {
...
allow-recursion { any; };
allow-query { any; };
allow-query-cache { any; };
...
};

I found a detailed explanation on why bind/named dns server changed its behavior, on the next page  a copy of the support bulletin from July 2007: