(cas:72) Google Analyticator was unable to authenticate you with Google using the Auth Token you pasted into the input box on the previous step.

This could mean either you pasted the token wrong, or the time/date on your server is wrong, or an SSL issue preventing Google from Authenticating.

Try Deauthorizing & Resetting Google Analyticator.

Tech Info 400:Error fetching OAuth2 access token, message: 'invalid_grant'
Unique
Visitors
Powered By Google Analytics
Linux – Long White Virtual Cloudsu by http://longwhiteclouds.com all things Nutanix, VMware, cloud and virtualizing business critical applications Thu, 06 Aug 2015 09:22:11 +0000 en-US hourly 1 https://wordpress.org/?v=6.7.6 45024036 Rapid Provisioning Linux VDI Desktops with Horizon View http://longwhiteclouds.com/2015/08/06/rapid-provisioning-linux-vdi-desktops-with-horizon-view/ http://longwhiteclouds.com/2015/08/06/rapid-provisioning-linux-vdi-desktops-with-horizon-view/#comments Thu, 06 Aug 2015 09:22:11 +0000 http://longwhiteclouds.com/?p=10890


A little while ago VMware released Horizon View 6.1, which for the first time allowed Linux VDI desktops among many other new improvements. All customer that have Horizon 6 Enterprise Edition, or VMware Workspace Suite are entitled to use Horizon Linux Desktops. Supported Linux distributions include Ubuntu, RHEL, CentOS, and NeoKylin. Importantly VMware also supports 3D […]

]]>


A little while ago VMware released Horizon View 6.1, which for the first time allowed Linux VDI desktops among many other new improvements. All customer that have Horizon 6 Enterprise Edition, or VMware Workspace Suite are entitled to use Horizon Linux Desktops. Supported Linux distributions include Ubuntu, RHEL, CentOS, and NeoKylin. Importantly VMware also supports 3D GPU Hardware Acceleration with these operating systems leveraging NVIDIA. At the moment however there is no automatic way to install the Horizon View Linux Agent on the desktops out of the box, so you have to automate it if you want to use this at scale. After I had built my first Linux desktop and started using it I liked it so much I wanted to provision more desktops, and see how fast I could do it. This article will take you through some of the steps and the scripts I used to provision 400 Linux desktops from template and register them as managed machines with Horizion View in just 11 minutes.

First before we look at the scripts there are some pre-requisites. You’ll need to have a working VMware Horizon View 6.1 environment, VMware PowerCLI installed (latest version recommended), a Linux desktop based on one of the supported distributions, the VMware Horizon View Agent for Linux, and a Linux customization specification created in vCenter.

In order for the new desktops that you provision to be able to automatically register with the Horizon View Connection Server you need to place some first boot scripts into the template of your Linux Desktop, and you need to ensure that the Horizon View Agent is installed on the template VM. In the scripts below the directory for the Horizon View Agent is /root/VMware-viewagent-linux-x86_64-6.1.1-2772438.

In the template, which I have called LinuxDT-Template, the first script is placed in /etc/rc.d. This script is called at startup and will check for the existence of the first boot script, and if it exists will be executed.

/etc/rc.d/rc.local:

#!/bin/sh
#
# This script will be executed *after* all the other init scripts.
# You can put your own initialization stuff in here if you don't
# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local
FBSCRIPT="/root/firstbootview.sh"
if [ -f $FBSCRIPT ]; then
echo "Firstboot script exists, executing..."
$FBSCRIPT
fi

The next script is the first boot script itself. This will check to see if the Horizon View Agent is already installed and if so will clean that out. It will also check that the script is not being run on template itself. This script will install and configure the Horizon View Agent on the Linux Desktop and register the desktop with Horizon View. It checks to make sure the hostname of the VM matches the DNS records, else the registration process will not be successful.

/root/firstbootview.sh
#!/bin/bash
VIEWAGENTDIR="/etc/vmware"
VIEWAGENTINSTALL="/root/VMware-viewagent-linux-x86_64-6.1.1-2772438"
VIEWMANAGER="nxviewmgr.nxmgmt.local"
DOMAINNAME="nxmgmt.local"
USERNAME="viewmgr"
PW="YourPass"
HOSTNAME=`hostname`
LOOKUP=`nslookup $HOSTNAME | grep $HOSTNAME | cut -c 7-`

echo "Checking if Horizon View Agent was previously installed"

if [ -d $VIEWAGENTDIR ]; then
 echo "$VIEWAGENTDIR exists, uninstaling"
 /usr/lib/vmware/viewagent/bin/uninstall_viewagent.sh >> /root/viewagentinstall.log
 rm -rf $VIEWAGENTDIR
fi

while [ "$LOOKUP" != "$HOSTNAME.$DOMAINNAME" ]; do
 sleep 5
 LOOKUP=`nslookup $HOSTNAME | grep $HOSTNAME | cut -c 7-`
done

echo "Installing VMware Horizon View Agent for Linux..."
cd $VIEWAGENTINSTALL
echo "Working directory" `pwd`
$VIEWAGENTINSTALL/install_viewagent.sh -b $VIEWMANAGER -d $DOMAINNAME -u $USERNAME -p $PW >>/root/viewagentinstall.log
cat /root/viewagentinstall.log

if [ "$HOSTNAME" != "LinuxDT-Template" ]; then
 echo "Firstboot script complete, self destructing in 5 seconds..."
 sleep 5
 echo "Deleting $0 ..."
 rm -rf $0
 reboot
fi

Now that you have the Linux Desktop Template created and the first boot scripts set up, along with the other pre-requisites, you can proceed to deploying as many Linux VDI desktops as you wish. Each will be registered with Horizon View, and then you will be able to add them to a desktop pool. The sample PowerCLI script below will rapidly provision as many desktops as you like. It has been written to be multi-threaded, and will use all of the CPU on the client system it is run from. Also because it runs all clone tasks in parallel, it will also place a fairly high load on vCenter. So it is recommended you test this first in a non-production environment and decide if it’s safe to use in production before you go provisioning all of the desktops on any existing systems. As with all the scripts in this post, use them at your own risk, they are provided for informational and educational purposes only.

Clone-LinuxDT.ps1:
# PowerCLI to create VMs from existing vSphere VM
# Version 1.1
# Original Author: Magnus Andersson RTS
# Updated by: Michael Webster
#
# Specify vCenter Server, vCenter Server username and vCenter Server user password
$vCenter="YourvCenter"
$vCenterUser="YourUsername"
$vCenterUserPassword="YourPassword"
#
# Specify number of VMs you want to create
$vm_count = 400
#
#Specify where to start the VM Numbering Sequence
$start_count = 11
#
# Specify the VM you want to clone
$clone = "LinuxDT-Template"
#
# Specify the Customization Specification to use
$customspecification = "Linux"
#
# Specify the datastore or datastore cluster placement
$ds = "Erebor"
#
# Specify vCenter Server Virtual Machine & Templates folder
$Folder = "NXPERFENG"
#
# Specify the vSphere Cluster
$Cluster = "NXNZTest2-3000"
#
# Specify the VM name to the left of the ñ sign
$VM_prefix = "LinuxDT"
#
# End of user input parameters
#_______________________________________________________
#
write-host "Connecting to vCenter Server $vCenter" -foreground green
Connect-viserver $vCenter -user $vCenterUser -password $vCenterUserPassword -WarningAction 0
$start_count..(($vm_count+$start_count)-1) | foreach {
$y="{0:D2}" -f $_
$VM_name= $VM_prefix + $y
$ToD = (Get-Date).ToLongTimeString()
Write-Host "Script Stated Executing at" $ToD
$ESXi=Get-Cluster $Cluster | Get-VMHost -state connected | Get-Random
write-host "Creation of VM $VM_name initiated" -foreground green start-process powershell -NoNewWindow -ArgumentList "Add-PSSnapin VM*; Connect-viserver $vCenter -user $vCenterUser -password $vCenterUserPassword -WarningAction 0 | out-null; New-VM -Name $VM_Name -VM $clone -VMHost $ESXi -Datastore $ds -Location $Folder -OSCustomizationSpec $customspecification | out-null; Start-VM $VM_Name | out-null; write-host 'Creation of VM $VM_name initiated' (GetDate).ToLongTimeString() -foreground white;"
}

I used the script above to successfully provision 400 Linux VDI desktops in 11 minutes. In order to do this you not only need a decent client system to run the script (I used a Windows VDI Desktop running on a Nutanix cluster), you also need a very good back end infrastructure to stand up all of the cloned desktops. They will all be provisioned, customized and booted essentially in parallel. There will be a lot of IO and a lot of CPU usage across the system. It would be normal for this to tax the CPU’s on the hosts to 100% utilization for a sustained period.

Part of the reason I was able to do all of this in 11 minutes was because I was using a Nutanix 4 node NX3000 cluster (albeit a 3 year old cluster) and ESXi 6.0. So on a newer more modern cluster I probably would have been able to do the same task in less than 10 minutes. Remember, this is provisioning all desktops from template, customizing them, powering them on, and registering them with VMware Horizon View, for 400 desktops, in 11 minutes. If I doubled the number of desktops and doubled the number of Nutanix hosts in the cluster (to say 8), the provisioning time wouldn’t take twice as long, provided I have enough horsepower on vCenter and on the system executing the clone tasks, it would take the same amount of time. This is because the Nutanix platform scales linearly. Once you know how many VM’s you get per node, every node you add, you get exactly the same, consistent, predictable performance.

Here is a copy of the LinuxVMCustomizationSpec.xml file you can modify and import into vCenter. This is pretty simple. Uses DHCP for IP addressing. It has been configured to use the Google DNS Servers. So you will need to change that to your DNS servers.

LinuxVMCustomizationSpec.xml

<ConfigRoot>
 <_type>vim.CustomizationSpecItem</_type>
 <info>
 <_type>vim.CustomizationSpecInfo</_type>
 <changeVersion>1414648162</changeVersion>
 <description/>
 <lastUpdateTime>2014-10-30T05:49:22Z</lastUpdateTime>
 <name>LinuxVM</name>
 <type>Linux</type>
 </info>
 <spec>
 <_type>vim.vm.customization.Specification</_type>
 <globalIPSettings>
 <_type>vim.vm.customization.GlobalIPSettings</_type>
 <dnsServerList>
 <_length>2</_length>
 <_type>string[]</_type>
 <e id="0">8.8.8.8</e>
 <e id="1">8.8.1.1</e>
 </dnsServerList>
 <dnsSuffixList>
 <_length>1</_length>
 <_type>string[]</_type>
 <e id="0">nxmgmt.local</e>
 </dnsSuffixList>
 </globalIPSettings>
 <identity>
 <_type>vim.vm.customization.LinuxPrep</_type>
 <domain>nxmgmt.local</domain>
 <hostName>
 <_type>vim.vm.customization.VirtualMachineNameGenerator</_type>
 </hostName>
 <hwClockUTC>true</hwClockUTC>
 <timeZone>Pacific/Auckland</timeZone>
 </identity>
 <nicSettingMap>
 <_length>1</_length>
 <_type>vim.vm.customization.AdapterMapping[]</_type>
 <e id="0">
 <_type>vim.vm.customization.AdapterMapping</_type>
 <adapter>
 <_type>vim.vm.customization.IPSettings</_type>
 <ip>
 <_type>vim.vm.customization.DhcpIpGenerator</_type>
 </ip>
 </adapter>
 </e>
 </nicSettingMap>
 <options>
 <_type>vim.vm.customization.LinuxOptions</_type>
 </options>
 </spec>
</ConfigRoot>

Now if you were running these scripts in a test environment and planning to run the tests over and over again you will quickly realize that Horizon View allows duplicate entries in it’s database. You’ll also quickly realize that there is no easy way to quickly remove lots and lots of registered machines from Horizon View. You’ll also notice, if you research it, that there is currently no way to do anything about either of these problems with the Horizon View PowerCLI CMDLets. So where does that leave us? Well I’m glad you asked. In this case you will have to edit the Horizon View LDAP directory directly to remove the machines after they have been deleted. You can do this also when you decommission large numbers of VDI VM’s. But it is certainly advisable to have a backup before doing anything like this. The PowerShell script below uses LDIFDE to interrogate the Horizon View LDAP Directory and search for any machines that are showing as Agent Unreachable. This means they are off or not longer can be contacted (probably as you’ve deleted them). Any agents that fall into that category will be removed form the Horizon View LDAP Directory and therefore be removed from the Registered Machines in View Manager.

RemoveUnreachableDesktops.ps1
$desktopcn = @()

$removedesktops=(Get-DesktopPhysicalMachine -State "Agent unreachable").displayName
$removedesktops | foreach {
   write-host "Searching for dn of $_"
   ldifde -s localhost -d "dc=vdi,dc=vmware,dc=int" -r "(description=$_)" -l dn -f "$_.txt"
   write-host "Writing output to $_.txt"
   $getcn = (Get-Content "$_.txt")[0]
   $desktopcn += "$getcn"
   Remove-Item "$_.txt"
   write-host "Desktop DN's to Remove = $getdn"
}

$desktopcn | foreach {
   $output = @()
   write-host "Adding items to remove file..."
   write-host "$_"
   write-host "changetype: delete"
   $output += "$_"
   $output += "changetype: delete`n"
   $output | Out-File -Filepath removedesktops.txt -Append
   write-output `n | Out-File -Filepath removedesktops.txt -Append
}

write-host "About to remove all of the desktops..."
pause
ldifde -i -f removedesktops.txt -s localhost
Remove-Item removedesktops.txt

I’m no scripting expert, but I’ve used all of these scripts above in my lab environment. They could have probably been written more efficiently and more elegantly. But I just wrote them in a brief period of time to do a job and that’s it. So please feel free to improve upon them and if you do I’d greatly appreciate it if you could post any updates here.

 

Final Word

The combination of VMware Horizon View, VMware vSphere 6.0 and Nutanix web-scale converged infrastructure is an unparalleled combination for running any desktop workload (and almost all non-desktop workload as well). In this example I have used the new functionality in Horizon View 6.1 to provision Linux VDI Desktops rapidly. Due to the smart cloning features of the Nutanix platform the clones didn’t consume any additional storage space. This was not dedupe, this was data avoidance. No point creating unnecessary data in the first place. This is a demonstration of what you can do with a smart modern infrastructure platform to move your business forward, do non-disruptive upgrades in your lunch time, and with self healing capabilities, spend more time with your friends and family. If you like the sound of that, get in touch with any of the Nutanix team and ask us about it.

This post first appeared on the Long White Virtual Clouds blog at longwhiteclouds.com. By Michael Webster +. Copyright © 2012 – 2015 – IT Solutions 2000 Ltd and Michael Webster +. All rights reserved. Not to be reproduced for commercial purposes without written permission.


]]>
http://longwhiteclouds.com/2015/08/06/rapid-provisioning-linux-vdi-desktops-with-horizon-view/feed/ 2 10890
Installing Cumulus Linux from a MacBook Pro http://longwhiteclouds.com/2014/11/13/installing-cumulus-linux-from-a-macbook-pro/ http://longwhiteclouds.com/2014/11/13/installing-cumulus-linux-from-a-macbook-pro/#comments Thu, 13 Nov 2014 11:35:22 +0000 http://longwhiteclouds.com/?p=9283


Cumulus Linux is the answer to companies that want to run software defined networking on a range of open networks industry standard switches, without necessarily being locked into one physical switch hardware vendor. But unlike network virtualization solutions such as NSX, Cumulus Linux is the Network OS (NOS) for the physical switches, rather than a […]

]]>


CumulusTurtleLogoCumulus Linux is the answer to companies that want to run software defined networking on a range of open networks industry standard switches, without necessarily being locked into one physical switch hardware vendor. But unlike network virtualization solutions such as NSX, Cumulus Linux is the Network OS (NOS) for the physical switches, rather than a virtualization layer on top. Cumulus is part of the NSX ecosystem and integrated into NSX, so essentially you can use Cumulus to run on the physical switches and integrate it to NSX to provide the network virtualization (termination and VXLAN switching/routing in hardware also supported on some switches). Cumulus is Linux for network switches, so it’s easy to manage, and very easy to automate. I happen to be working on a project now to build the best practices for Cumulus Linux with Nutanix and VMware vSphere. So I needed an easy way to get Cumulus installed on my lab switches, from my MacBook Pro, which is what the remainder of this article is about.

You can choose open network (ON) switches from a variety of vendors that are on the Cumulus HCL. In my case I chose Dell Force10 S4810-ON‘s. The -ON is an important part, as that is the Open Network variety. The Dell Force10 Switches are enterprise class low latency switches. The -ON switches come with the Open Network Install Environment included, so that you can install Cumulus Linux. This is the default boot environment for the switches and starts automatically.

There are 6 ways you can install Cumulus Linux NOS on your Open Network switches as follows:

  1. Passed from the boot loader.
  2. Search locally attached storage devices for one of the ONIE default installer filenames (for example,
    USB).
  3. Exact the URLs from DHCPv4.
  4. Inexact URLs based on DHCPv4 responses.
  5. Query to IPv6 link-local neighbors using HTTP for an installer.
  6. TFTP waterfall — from DHCPv4 option 66

In my case I had DHCP configured for my management network so I just needed an easy way to start up a web server so the switches could discover the Cumulus Linux firmware and download and install it. As a tip, if you don’t have a DHCP server already you can configure your MacBook Pro for Internet sharing, which then starts a DHCP server. Setting up the web server was a lot easier than I thought it would be. It turns out there is a very easy way to start up a temporary HTTP server on a MacBook Pro from any directory through the terminal. I stumbled across an article titled Start a Simple Web Server from Any Directory on Your Mac. All I had to do was change to the directory containing the Cumulus Linux package, which I had renamed to work with the ONIE process. But there was one key element missing from the article that I needed in order to get it to work.

If you attempt to run the web server exactly as mentioned in the Life Hacker article, such as python -m SimpleHTTPServer 80, you will get the following:

michael2012mbp:Cumulus michaelwebster$ python -m SimpleHTTPServer 80

Traceback (most recent call last):

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py”, line 162, in _run_module_as_main “__main__”, fname, loader, pkg_name)

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/runpy.py”, line 72, in _run_code exec code in run_globals

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SimpleHTTPServer.py”, line 224, in <module> test()

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SimpleHTTPServer.py”, line 220, in test BaseHTTPServer.test(HandlerClass, ServerClass)

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py”, line 595, in test httpd = ServerClass(server_address, HandlerClass)

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py”, line 419, in __init__ self.server_bind()

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/BaseHTTPServer.py”, line 108, in server_bind SocketServer.TCPServer.server_bind(self)

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/SocketServer.py”, line 430, in server_bind self.socket.bind(self.server_address)

  File “/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/socket.py”, line 224, in meth return getattr(self._sock,name)(*args)

socket.error: [Errno 13] Permission denied

This was easily fixed by using the sudo command, entering the admin password, and running the operation as root. Which resulted in the following:

michael2012mbp:Cumulus michaelwebster$ sudo python -m SimpleHTTPServer 80

WARNING: Improper use of the sudo command could lead to data loss or the deletion of important system files. Please double-check your typing when using sudo. Type “man sudo” for more information.

To proceed, enter your password, or type Ctrl-C to abort.

Password:

Serving HTTP on 0.0.0.0 port 80 …

Then it was just a matter of kicking off the discovery process on my S4810 switches, which I did by rebooting them via the console cable (which happens to be connected via USB to a VDI desktop running on one of my Nutanix hosts, and it even still works with vMotion).

Once the switches restarted they found my MacBook on the network and found the web server and began to search for the firmware. ONIE goes through a standard process to identify and download the correct firmware by using the following naming conventions from the most specific to the lest specific:

  1. onie-installer-<arch>-<vendor>_<machine>-r<machine_revision>
  2. onie-installer-<arch>-<vendor>_<machine>
  3. onie-installer-<vendor>_<machine>
  4. onie-installer-<arch>
  5. onie-installer

In my case it looked like this from the web server on my MacBook Pro:

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] “GET /onie-installer-powerpc-dni_7448-r0 HTTP/1.1” 404 –

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] code 404, message File not found

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] “GET /onie-installer-powerpc-dni_7448 HTTP/1.1” 404 –

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] code 404, message File not found

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] “GET /onie-installer-dni_7448 HTTP/1.1” 404 –

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] code 404, message File not found

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] “GET /onie-installer-powerpc HTTP/1.1” 404 –

xxx.xxx.xxx.11 – – [13/Nov/2014 19:31:34] “GET /onie-installer HTTP/1.1” 200 –

As you can guess from the above I had named the Cumulus Linux package onie-installer. I could have named it onie-installer-powerpc or any one of the other specific naming conventions. If this was a large scale environment it would be best to set up the distribution point using specific names for each model of system in the environment. Although the Dell S4810’s are PowerPC based some switches are x86_64 based, such as the Dell S6000-ON 40GbE switches.

Final Word

The process I used to get Cumulus Linux installed on my lab switches is probably fine for small scale environments and PoC’s. For large scale you will want something more robust and automated. One of the great things about Cumulus being Linux for switches is that it can fit into you existing Linux management and automation frameworks, such as Puppet, Chef and CFEngine. You can completely automate the configuration and management of a large scale switching environment, which when combined with network virtualization by NSX can become incredibly agile and flexible for any type of application workload. I’m working with Cumulus and I will be documenting the official best practices for Cumulus with Nutanix and it will be published on the Nutanix web site once we’re done. Along the way I will bring you any interesting things that I find.

This post first appeared on the Long White Virtual Clouds blog at longwhiteclouds.com. By Michael Webster +. Copyright © 2012 – 2014 – IT Solutions 2000 Ltd and Michael Webster +. All rights reserved. Not to be reproduced for commercial purposes without written permission.


]]>
http://longwhiteclouds.com/2014/11/13/installing-cumulus-linux-from-a-macbook-pro/feed/ 1 9283
Planning to Migrate Oracle from Unix to Linux on vSphere http://longwhiteclouds.com/2012/09/25/planning-to-migrate-oracle-from-unix-to-linux-on-vsphere/ http://longwhiteclouds.com/2012/09/25/planning-to-migrate-oracle-from-unix-to-linux-on-vsphere/#comments Tue, 25 Sep 2012 10:47:57 +0000 http://longwhiteclouds.com/?p=1099


A while ago with much fanfare Oracle announced it would no longer develop it’s flagship software and database for use on HPUX and HP’s Itanium platform due to its perception that the platform didn’t have a solid roadmap. This caused a great flurry of lawyers filing papers on HP’s side. But the end result right […]

]]>


A while ago with much fanfare Oracle announced it would no longer develop it’s flagship software and database for use on HPUX and HP’s Itanium platform due to its perception that the platform didn’t have a solid roadmap. This caused a great flurry of lawyers filing papers on HP’s side. But the end result right now after the lawyers got involved Oracle will still be supporting HPUX for the meantime. But who knows how long this will last. So now might be the perfect time to consider migrating your Oracle databases and applications off the HPUX systems (and any other traditional Unix platform) and onto Linux on vSphere. This article will take you through a high level overview of why you should migrate to Linux on vSphere and some of the important considerations and methods to achieve a successfully migration. This is based on the experience I’ve gained from doing a few successful migrations projects, some of which I spoke about during breakout sessions at VMworld US 2012.

Although this article is primarily targeted at customers that wish to consider migration from HPUX to Linux it is also applicable to migrating any other traditional Unix platform to Linux. Before we discuss the migration considerations firstly I’ll cover off why Linux, and why Linux on vSphere.

Why migrate to Linux?

  1. Greatly reduced maintenance costs compared to traditional Unix platforms.
  2. Simpler migration process as more skills are transferable. In my view the transfer of skill and disciplines from traditional Unix platforms to Linux is much easier than to Windows. Some of the commands are similar or the same or only have slight variations. You will need to retain the traditional Unix platform skills during your migration and your administrators need to be able to pick up the new platform quickly and efficiently. If the existing platform has scripts written by the administrators these can be reused with minimal modification in some cases.
  3. Robust platform that is more secure as it is not as susceptible to viruses and malware as Windows.
  4. Freedom of choice, multiple robust and well supported distributions to choose from.
  5. Very tunable and flexible, may exceed performance of comparable Windows system when tuned, though this has lessened over the years (Windows 2008 R2 beat SLES 11 SP1 in my Jumbo Frames Network Performance Test Results).
  6. More available skilled resources. In my experience more Oracle DBA’s are training on Unix and Linux than on Windows.

Why Linux on vSphere?

(Repeated from my article 10 Reasons to Migrate Oracle Databases from Traditional Unix to Linux on vSphere)

  1. Make more efficient use of existing Oracle licenses while still providing required SLA’s. The enterprise class features of vSphere such as Distributed Resource Scheduler (DRS), VMware HA, resource pools, CPU and Memory reservations, Storage IO Control, and Network IO Control make it possible to get the most efficient resource usage and therefore license usage without sacrificing SLA’s for critical systems. Reduce risks of noisy neighbor and denial of service conditions without the need for hard partitioning. Simple resource isolation between VM’s with reduced management overheads.
  2. Enterprise Support, VMware and Oracle fully support virtualized Oracle Databases, even Oracle RAC (Since Nov 2010 on vSphere 4.x and only version 11.2.0.2 and above) on vSphere provided it is implemented on a supported operating system. For Oracle’s VMware support statement Refer to document ID #249212.1, available on MyOracleSupport.com. Under the VMware Extended Support Policy for Oracle Databases VMware Technical Support will take total ownership of any Oracle Database problems reported to them, well as providing access to a team of Oracle DBA resources, and working with Oracle support until resolution.
  3. Hardware independence and much simpler more auditable and consistent DR. Because a virtual machine is encapsulated in a small number of files it is runnable on any hardware platform that vSphere is supported on. With Site Recovery Manager the recovery process in a DR event can be simplified and orchestrated in a consistent run book that removes human error, allows for non-disruptive testing of DR procedures and provides an audit report that can be used for DR compliance reporting. No need to have identical or the same amount of hardware at the product and DR sites.
  4. Avoid planned downtime and allow Non-disruptive hardware maintenance. VMware vMotion and DRS allow for VM’s to be automatically evacuated from hosts that need to undergo maintenance (using Maintenance Mode) without any disruption or loss of service. vSphere 5.x allows the fastest evacuation and live migrations from hosts by using multiple NIC’s (up to 4 x 10G or 16 x 1G) and up to 8 concurrent migration operations.
  5. Simplify server refresh cycles and provide Non-disruptive performance scalability. Again using VMware vMotion and DRS you can add new faster hosts to a new or existing cluster of hosts and non-disruptively migrate the VM’s in order to take advantage of the improved performance immediately. Old servers can be quickly and easily evacuated using Maintenance Mode and then replaced after all the VM’s are moved to the new servers. Use hot add to add CPU’s, Memory, NIC’s and Disks to a live running VM without disruption to take advantage of more hardware resources in the newer hosts.
  6. Better than native OS on physical High Availability, even for Oracle RAC. VMware HA protects individual VM’s from hardware failure and automatically restarts them on a surviving host within the VMware Cluster. Traditionally if a RAC node failed it would require the hardware to be replaced before coming back into service. With VMware HA the RAC Node is automatically restarted on a surviving VMware Host and the services (and protection level) continues much faster while the failed server is repaired. No longer need to provision N+1 nodes in an individual RAC Cluster. VMware HA VM Monitoring with App HA can automatically restart application services within a VM if a failure is detected at a app service or process level.
  7. Rapid provisioning. A new database server or RAC node can be provisioned from a template in minutes, and entire RAC cluster can be built from templates in less than 2 hours. The provisioning of new servers from template can be automated to include the installation and configuration of the database software and automated addition of nodes to RAC cluster.
  8. Reduced database and application maintenance headaches. Can run multiple OS instances and multiple RAC Clusters on the same group of hosts without significant additional management overheads. This may allow dedicated DB’s for some applications reducing the effort and complexity of database maintenance planning and approval processes during required DB and app maintenance and upgrades. Development and test systems can be much more representative of production at a much lower cost and this can greatly improve the reliability and reduce the cost development and testing, including database and application maintenance.
  9. Enhanced Operations Management and Application Insight with reduced troubleshooting time. VMware vCenter, vCenter Operations Manager and VMware Application Performance Management Suite provide detailed availability monitoring, capacity planning, early event warning, and in depth performance monitoring and analysis (down to DB and App transaction by transaction). VMware vCenter and vCenter Operations provide the detailed performance, event, availability statistics and capacity planning. VMware AppInsight and vFabric Hyperic (part of the Application Performance Management Suite) provide the in depth application analytics down to transaction by transaction details. AppInsight can be used as part of the tool-set to baseline the performance of the existing physical database server environment from and end user and DB transaction performance perspective that can then be directly compared to the virtualized system during initial performance testing and post migration.
  10. Robust enterprise class security, compliance auditing and reporting. vSphere 4.x and 5.0 has achieved EAL4+ Common Criteria certification. In addition to the base platform being highly secure the vSphere Hypervisor (ESXi) has a small attack surface and reduced patching requirements. vCenter Configuration Manager provides automated security hardening and security baseline comparison for the vSphere Infrastructure, and virtual machine Guest OS in addition to configuration and change reporting, and security and change compliance auditing and reporting. The vShield suite offers additional level of protection with embedded hypervisor based traffic inspection (vShield App), perimeter protection (vShield Edge). vShield App  protects against unauthorized traffic flows even between VM’s on the same subnet and VLAN. vShield Edge can provide perimeter protection including  Firewalling, NAT, and DHCP services to physical and virtual systems in addition to Cross Site IPSEC VPN termination.

High Level Solution and Migration Process and Considerations

The picture below is the high level solution process that I take customers through as part of the Unix to Linux migration and this gives an example of an Oracle migration in this case (same process for SAP, Oracle, Java and other Commercial Off the Shelf or COTS applications). The process is the same for most applications. There will be variations if custom code needs to be ported and/or redeveloped as part of the process. Those migrations are generally more complex.

All of these stages are critical to ensuring a successful outcome to a complicated process. Here are the vSphere Infrastructure specific stages:

  • Environment Assessment – Performance Baseline Analysis, Inventory Mapping and Application Dependencies
  • vSphere Cluster Architecture Design and VM Template Design
  • vSphere Cluster Build and Validation
  • Multi-dimension Layered System Classification
  • Migration Planning
  • Migration Execution

Workload Classification

I use a layered multi-dimensional classification process that provides a holistic approach to architecture design and project planning. This helps to develop an understanding of the highest priority applications with the best ROI in the shortest timeframe and also understand the dependencies. Application Blueprinting is  a service that VMware Professional Services offers and I highly recommend it as part of this process. The process feeds into the business plan and migration plan and includes Performance Analysis and Classification, Complexity Classification, Service Classification and Service Definition (RPO / RTO, Availability etc), and Financial Classification.

It is important to identify quick wins early on in the process as these will help the project gain momentum. Tackle the low hanging fruit first. I would normally try and use the least complex applications with the highest ROI during the validation and PoC. These would normally be applications that are supported on both the source and destination platform and have a proven migration method that meets the business objectives and availability objectives. The cost and complexity of the migration process itself should be a major consideration to the project.

Testing and Validation

Testing and validation of the solution and also the migration plans needs to be very thorough. There is a very good reason these systems have been deployed on traditional Unix platforms. You need to take a very diciplined approach to planning, migration, design and validation in order to ensure success. Here are a list of areas I recommend you cover in your test planning.

  • Pilot and Design Verification Testing
    • Has the design been implemented as expected?
    • Does the migration process work as expected?
  • System and Operation Testing
    • Does the application and the full solution function as expected?
    • Do the maintenance and operational aspects of the design work as expected?
  • Availability and Recovery Testing
    • Do individual infrastructure and application components behave as expected when components fail?
    • Do the business continuity and availability aspects of the infrastructure and applications work as expected under various disaster event scenarios?
  • Performance and Scalability Testing
    • Does the solution meet the performance SLA’s for application and infrastructure?
    • What is the saturation point and headroom of the design and individual components, and what is the sweet spot for scalability?
  • User Acceptance Testing
    • Are the users getting what they expect?

I recommend that you ensure that all your key business and technical objectives are not only designed into your solution and migration plans but also tested as part of the verification process.

Migrate in Phases

I recommend a phased approach to migration where Dev / Test proceeds before Production. This is mostly just common sense. It allows you to become familiar with the process and also get a full understanding of the environnent prior to taking on the production workloads.

Ensure Application and Systems Owners and Business Stakeholders are a Key Part of the Team

If you don’t have the applications and systems owners and key business stakeholders as part of your project steering committee and playing an active part in your project you will struggle. It’s important that the project and everyone involved is focusing very intently on building a solution that meets all the business and technical requirements and that it proves the benefits that have been put forward in the business case. If you can get senior leadership buy in at an early stage you will find the process much smoother. Don’t underestimate the operational changes that will be required to operate in the newly virtualized environment. Many applications and systems owners will need different access so they can assure themselves of performance and availability objectives. Make them part of the testing proces. I have done this successfully on many occasions with large enterprise Java migrations, SAP and Oracle DB and Oracle Applications migrations. Although some members of the team may not be completely on board at the start by the finish they can’t understand why they didn’t do this years ago. But it will take a lot of effort. It certainly helps to have someone on your team that has done this many times before. So consider engaging VMware Professional Services, or a VMware Partner that has gained competence in these types of projects and is accredited under the  VMware Virtualizing Business Critical Apps competency.

When should you think about kicking off a migration project? 

The most appropriate time will depend on your business but generally the following may present good opportunities to start a migration project:

  • Hardware or software refresh
  • Uptime and compliance issues
  • Mergers or rapid business transformation

Other reasons to consider a migration or creating a new platform include:

  • Rapid reliable and repeatable provisioning of valid test environments to improve dev/test cycles
  • Reduce reliance on complex traditional clustering technologies as the only means of ensuring availability objectives
  • Underutilized services causing inefficient use of expensive software licenses
  • Systems coming to end of their lease of very high annual maintenance costs
  • Scalability issues (e.g. parallelism or data latency)
  • Application downtime due to frequent software and system upgrades
It’s All About the Applications
A Unix to Linux on vSphere Migration projects is not as much about the infrastructure as it is about the applications. You need to take an application (in this case Oracle), systems and process approach to the project and you will likely follow a SDLC style. You need to understand how the applications (Oracle) work, how they are architected, how they scale and perform, what their dependencies are, and to quite a detailed level. The architecture design needs to be very much a collaborative effort between the applications and infrastructure specialists. Your database is an extension of your storage, so storage planning, architecture and design will be of critical importance.
You need to deal with Endianness, so there is a data translation element as part of the project when moving from one platform to another. It is not a simple P2V exercise. For these reasons the Unix to Linux migration project may be aligned with a wider application redesign or application refresh project. For Oracle this means that you need to have a machine independent format migration method. For example, RMAN Transportable Tablespaces, Import/Export, Datapump, or Golden Gate.
Support and Licensing
You will need to cover off the support and licensing early on. You will need to ensure that your applications are supported on the destination platform and you will need to design your architecture to try and minimize licensing costs. A well designed vSphere architecture should save you money on licenses, either through reduced maintenance costs, reduced need to acquire new licenses, and/or more efficient use of existing licenses. From an Oracle Database perspective it is supported on vSphere by both Oracle and also VMware. Oracle supports Oracle RAC 11g R2 (11.2.0.2) and above on vSphere 4 since November 2010 (as mentioned perviously). All you need to know specific to Oracle is available on my Oracle Page. Licensing and Support of Oracle is addressed in my article Fight the FUD –  Oracle Licensing and Support on VMware vSphere.
If for some reason your applications vendor doesn’t currently support it’s product running on vSphere (even though vSphere doesn’t change the base OS) assuming there is a supported x86 OS then you can talk to VMware. They have a team of people that helps educate ISV’s on their products so they can understand the infrastructure and support it better.

Tools for Success

  • VMware Capacity Planner
  • VMware vCenter AppSpeed or AppInsight
  • VMware vCenter Application Discovery Manager
  • VMware vCenter Operations Enterprise
  • HP Load Runner, Apache Jmeter
  • IOMeter, ORION, FIO
  • NetPerf, iPerf
  • Swingbench
  • Splunk
  • Existing Enterprise and App Monitoring Tools and System Logs

The above list is not exhaustive but it is a good list of tools that may help you on your Unix to Linux Migration project journey.

Final Word

It’s not just you, many organizations are virtualizing critical business applications and migrating off traditional Unix platforms. Over 40% of VMware customers are already virtualizing things like Oracle DB and Oracle applications (Source: VMware Statistics up to July 2012). VMware has the industry leading hypervisor that can deliver the rock solid SLA’s and predictability and performance that your applications need. There are people within VMware Professional Services and Partner companies who have been delivering these projects for many years that can help you.

The savings can be astronomical. One of my customers saved 90% CAPEX and almost the same OPEX after they virtualized all of their critical Oracle systems from previous SPARC E25K platforms. The whole project including software, services and hardware was less than 30% more than the cost of annual maintenance alone. But the new platform had 3 years maintenance built in. At the same time they also achieved 5 x the performance of the pervious system (measured by transaction latency and throughput).

For additional information on virtualizing Oracle visit my Oracle Page.

This post first appeared on the Long White Virtual Clouds blog at longwhiteclouds.comby Michael Webster +. Copyright © 2012 – IT Solutions 2000 Ltd and Michael Webster +. All rights reserved. Not to be reproduced for commercial purposes without written permission.


]]>
http://longwhiteclouds.com/2012/09/25/planning-to-migrate-oracle-from-unix-to-linux-on-vsphere/feed/ 1 1099
10 Reasons to Migrate Oracle Databases from Traditional Unix to Linux on vSphere http://longwhiteclouds.com/2012/06/20/10-reasons-to-migrate-oracle-databases-from-traditional-unix-to-linux-on-vsphere/ http://longwhiteclouds.com/2012/06/20/10-reasons-to-migrate-oracle-databases-from-traditional-unix-to-linux-on-vsphere/#comments Tue, 19 Jun 2012 12:50:42 +0000 http://longwhiteclouds.com/?p=1113


This article provides an overview of what I believe are 10 good reasons why you should seriously consider migrating Oracle Databases off traditional Unix platforms to VMware vSphere based on my experience managing, designing and implementing such projects. Here is my top 10 list. I’d be interested to get your feedback and thoughts on what […]

]]>


This article provides an overview of what I believe are 10 good reasons why you should seriously consider migrating Oracle Databases off traditional Unix platforms to VMware vSphere based on my experience managing, designing and implementing such projects.

Here is my top 10 list. I’d be interested to get your feedback and thoughts on what other reasons are your key drivers for considering a migration to Linux on vSphere.

  1. Make more efficient use of existing Oracle licenses while still providing required SLA’s. The enterprise class features of vSphere such as Distributed Resource Scheduler (DRS), VMware HA, resource pools, CPU and Memory reservations, Storage IO Control, and Network IO Control make it possible to get the most efficient resource usage and therefore license usage without sacrificing SLA’s for critical systems. Reduce risks of noisy neighbor and denial of service conditions without the need for hard partitioning. Simple resource isolation between VM’s with reduced management overheads. Efficiency gains will likely result in substantial maintenance or license cost savings. A good reference is the Forrester report Total Economic Impact of Virtualizing Oracle on vSphere.
  2. Enterprise Support, VMware and Oracle fully support virtualized Oracle Databases, even Oracle RAC (Since Nov 2010 on vSphere 4.x and only version 11.2.0.2 and above) on vSphere provided it is implemented on a supported operating system. For Oracle’s VMware support statement Refer to document ID #249212.1, available on MyOracleSupport.com. Under the VMware Extended Support Policy for Oracle Databases VMware Technical Support will take total ownership of any Oracle Database problems reported to them, well as providing access to a team of Oracle DBA resources, and working with Oracle support until resolution.
  3. Hardware independence and much simpler more auditable and consistent DR. Because a virtual machine is encapsulated in a small number of files it is runnable on any hardware platform that vSphere is supported on. With Site Recovery Manager the recovery process in a DR event can be simplified and orchestrated in a consistent run book that removes human error, allows for non-disruptive testing of DR procedures and provides an audit report that can be used for DR compliance reporting. No need to have identical or the same amount of hardware at the product and DR sites.
  4. Avoid planned downtime and allow Non-disruptive hardware maintenance. VMware vMotion and DRS allow for VM’s to be automatically evacuated from hosts that need to undergo maintenance (using Maintenance Mode) without any disruption or loss of service. vSphere 5 allows the fastest evacuation and live migrations from hosts by using multiple NIC’s (up to 4 x 10G or 16 x 1G) and up to 8 concurrent migration operations.
  5. Simplify server refresh cycles and provide Non-disruptive performance scalability. Again using VMware vMotion and DRS you can add new faster hosts to a new or existing cluster of hosts and non-disruptively migrate the VM’s in order to take advantage of the improved performance immediately. Old servers can be quickly and easily evacuated using Maintenance Mode and then replaced after all the VM’s are moved to the new servers. Use hot add to add CPU’s, Memory, NIC’s and Disks to a live running VM without disruption to take advantage of more hardware resources in the newer hosts.
  6. Better than native OS on physical High Availability, even for Oracle RAC. VMware HA protects individual VM’s from hardware failure and automatically restarts them on a surviving host within the VMware Cluster. Traditionally if a RAC node failed it would require the hardware to be replaced before coming back into service. With VMware HA the RAC Node is automatically restarted on a surviving VMware Host and the services (and protection level) continues much faster while the failed server is repaired. No longer need to provision N+1 nodes in an individual RAC Cluster. VMware HA VM Monitoring with App HA can automatically restart application services within a VM if a failure is detected at a app service or process level.
  7. Rapid provisioning. A new database server or RAC node can be provisioned from a template in minutes, and entire RAC cluster can be built from templates in less than 2 hours. The provisioning of new servers from template can be automated to include the installation and configuration of the database software and automated addition of nodes to RAC cluster.
  8. Reduced database and application maintenance headaches. Can run multiple OS instances and multiple RAC Clusters on the same group of hosts without significant additional management overheads. This may allow dedicated DB’s for some applications reducing the effort and complexity of database maintenance planning and approval processes during required DB and app maintenance and upgrades. Development and test systems can be much more representative of production at a much lower cost and this can greatly improve the reliability and reduce the cost development and testing, including database and application maintenance.
  9. Enhanced Performance, Operations Management and Application Insight with reduced troubleshooting time. Customers I have worked with have experienced up to 5x or more improvement in performance post migration in a properly designed and implemented vSphere environment compared to their traditional Unix platforms as measured by DB transaction latency and infrastructure metric data. VMware vCenter, vCenter Operations Manager and VMware Application Performance Management Suite provide detailed availability monitoring, capacity planning, early event warning, and in depth performance monitoring and analysis (down to DB and App transaction by transaction). VMware vCenter and vCenter Operations provide the detailed performance, event, availability statistics and capacity planning. VMware AppInsight and vFabric Hyperic (part of the Application Performance Management Suite) provide the in depth application analytics down to transaction by transaction details. AppInsight can be used as part of the tool-set to baseline the performance of the existing physical database server environment from and end user and DB transaction performance perspective that can then be directly compared to the virtualized system during initial performance testing and post migration.
  10. Robust enterprise class security, compliance auditing and reporting. vSphere 4.x and 5.0 has achieved EAL4+ Common Criteria certification. In addition to the base platform being highly secure the vSphere Hypervisor (ESXi) has a small attack surface and reduced patching requirements. vCenter Configuration Manager provides automated security hardening and security baseline comparison for the vSphere Infrastructure, and virtual machine Guest OS in addition to configuration and change reporting, and security and change compliance auditing and reporting. The vShield suite offers additional level of protection with embedded hypervisor based traffic inspection (vShield App), perimeter protection (vShield Edge). vShield App  protects against unauthorized traffic flows even between VM’s on the same subnet and VLAN. vShield Edge can provide perimeter protection including  Firewalling, NAT, and DHCP services to physical and virtual systems in addition to Cross Site IPSEC VPN termination.

Although not in the top 10 list something worth considering is that you are entitled to use an unlimited number of virtualzed Suse Linux Enterprise Server (SLES) 11 SP1 instances and receive patches as part of your vSphere licenses as part of an OEM agreement that VMware has with Novell. There is a fee per physical ESXi host if you wish to add phone support. See the VMware Suse Linux Enterprise Server for VMware site for details.

For additional information on virtualizing Oracle visit my Oracle Page.

This post first appeared on the Long White Virtual Clouds blog at longwhiteclouds.com, by Michael Webster +. Copyright © 2012 – IT Solutions 2000 Ltd and Michael Webster +. All rights reserved. Not to be reproduced for commercial purposes without written permission.


]]>
http://longwhiteclouds.com/2012/06/20/10-reasons-to-migrate-oracle-databases-from-traditional-unix-to-linux-on-vsphere/feed/ 13 1113