How-to Install Linux Integration Components on Ubuntu 12.04 LTS

I am using Ubuntu Server 12.04.04 LTS that I have migrated from VMWare ESXi to Hyper-V. Microsoft has supplied the Linux community with Linux Integration Components (LIC) that provide additional support for Ubuntu Linux.

Integration services are built in modules that need to be added to startup. To add them edit the modules file:

vi /etc/initramfs-tools/modules

append the following modules to the file:

hv_vmbus
hv_storvsc
hv_blkvsc
hv_netvsc

Now, update initramfs:

sudo update-initramfs –u

and now reboot.

Upon reboot, you should see the modules with lsmod.

Thanks to:

http://baudlabs.com/how-to-install-hyper-v-integration-services-in-ubuntu-12-04-lts/

WMI and JMX with Icinga

Over the past week I have been flexing my monitoring skills again. Of course the landscape has changed since I worked on this a few years ago. Today, I am struggling with a commercial product, unnamed. Bloated, expensive, horrible GUI, and time consuming. I am sure it is a good product given that you have an entire staff dedicated to managing it.

So, I went back to my roots and set up an Icinga instance. I have it fully working on a Linux box monitoring Windows hosts. Agentless. No more nsclient installs. I am using check_wmi_plus plugin for everything Windows. You can supply a wmi query string to the plugin for anything WMI. Here are some URLs:

https://wiki.icinga.org/display/howtos/check_wmi_plus

some service definitions:

http://www.edcint.co.nz/checkwmiplus/?q=nagiosservicedefinitions

I am also monitoring out Java infrastructure. You need to make sure the java app is set up for remote jmx monitoring before this will work.

http://exchange.nagios.org/directory/Plugins/Java-Applications-and-Servers/check_jmx/details

and some nice service defs and commands:

https://kb.op5.com/display/HOWTOs/Jboss+Monitoring+with+check_jmx

Maybe I will get some time to write up a comprehensive faq.

Java on Ubuntu 13.04 (Raring Ringtail)

Installing Oracle Java on Ubuntu can be a pretty daunting task. After reading the Ubuntu documentation here:

Java

I came across this nice github project:

oab-java6

Simply run

git clone https://github.com/flexiondotorg/oab-java6.git

Then cd into oab-java6 and run

sudo ./oab-java.sh

This will set up a local apt repository for Sun Java 6 and Oracle Java 7. Now run

sudo apt-get update

to add the packages from the repository. As the documentation states, you can now run

sudo apt-get install sun-java6-jre

To install Java 6 runtime environment.

One small thing to note:

I had to run

sudo update-alternatives --config java

and select the Sun JRE since the system defaulted to IcedTea.

Now do

java -version

to see what you have!

Five Great Reasons Why We Should Blog

A colleague of mine sent this article to me on why we as devops/webops need to blog. It is a good read.

5 Reasons Why DevOps Should Blog

“By writing we carefully sift through our own thought processes to break it down for novices, or a broader audience. This is a learning process for us, too. It’s therapeutic. But it also hones our message and makes us better teachers. We literally learn by doing.”

MySQL Connectivity Issues with Spoon 4.4.1

I recently installed Pentaho DI 4.4.1. I was previously using PDI 3.2. Transferring my ETL’s to the new PDI installation resulted in this error message (truncated).

Error connecting to database [mysql] : org.pentaho.di.core.exception.KettleDatabaseException: 
Error occured while trying to connect to the database 

Exception while loading class 
org.gjt.mm.mysql.Driver 

Digging around, the full error can be found here:

Exception while loading class mysql.Driver

The answer is provided in the Jira ticket. You need to download and install the MySQL JDBC connector which can be found here:

Download Connector/J

I am using the Windows x64 version so I had to place the jar file here: C:\Program Files\pentaho\design-tools\data-integration\libext

Now I am able to connect to MySQL.

According to Pentaho, they can no longer include the MySQL JDBC connector as it is not compatible with the Apache 4.3 license.

Install Oracle JDK 8 on Ubuntu Server

I am trying to evaluate the MySQL plugin for NewRelic so I have to install a JRE on the MySQL server. Gut instinct tells me to go with Oracle JRE….not the alternatives. So, Here is what I did to install JRE 8.

sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer

If you receive an error while adding the ppa, something like this:

error sudo: add-apt-repository: command not found

then

sudo apt-get install python-software-properties

Connection problems to github.com

One of my colleagues had a small issue with pulling the latest from github for my site today. The error was:

ssh: connect to host github.com port 22: Connection refused
fatal: The remote end hung up unexpectedly

Of course the word “fatal” would freak out any non linux user. So a with a little searching the following is the solution.

Add the following to your ./.ssh/config:

host github.com
    hostname ssh.github.com
    port 443

This forces ssh over https for github. All fixed! Now I do not have to bother networking for a firewall rule.

Add Your own Script to Default Run Levels in Ubuntu

This uses the old Sys V init.d scripts. Not upstart. I may write a post on upstart at a later date. So, you write a cool script that you want to run at startup. Place it in /etc/rc.d/init.d and make it executable. Next run the following command:

sudo update-rc.d my_cool_script defaults

This will set the script to run on all the default run levels.