Showing posts with label Virtualization. Show all posts
Showing posts with label Virtualization. Show all posts

Friday, December 14, 2007

VMware Capacity Planner: taking the data offline (Part 3: Getting CSV data)

This is part 3 of a series concerning VMware Capacity Planner.

First a general remark about the update to version 2.6 of the tool: it was not always pleasant to use the web interface the last week because of downtime (scheduled maintenance), errors in the interface, latency, etc. It all feels normal again, and some of the new features where definitely worth it.

Back to business: What interests me most when it comes to downloading data from the website is the pure performance data. VMware averages this information over a week, so data can be downloaded on a weekly basis.

I'm not going into the full details of everything that can be tweaked, configured or queried but most of it will be clear when looking at the actual command-line to get a CSV file. Most important is understanding that some of the choices you make are based on the session that is open on te server, and are not selected using POST or GET. Some of these options can be configured on the html view, but not the export view (although the syntax is available) so we have to apply a trick: first get the html view for the type of data we want and then export the data.

Below, you find a typical command-line to download the core VMware statistics for week 45 of a company with ID 1234:


wget --keep-session-cookies --load-cookies cookies.txt
--save-cookies cookies.txt https://optimize.vmware.com/inv_report.cfm?page=ViewStatsMain2.cfm&action=export§ion=View&sort=ObjectName&sortDir=ASC&YearWeek=200745&Mon=2&ISO=2&opt=P&PerfGroupID=1&grpt=S&HostType=0&menutab=Performance --post-data CID=1234&YearWeek=200745 --no-check-certificate -O Stats.csv


Note that quite some things have to be specified: week, company, type of average, type of metrics, system group, etc.

Drop me a line or leave a comment in case you want to know more about the precise parameters that are important or in case you're interested in my little script that does the magic for me.

This concludes the practical part of this series. I plan to write more about capacity planning and capacity monitoring in general later...

Friday, October 26, 2007

VMware Capacity Planner: taking the data offline (Part 2: Cygwin & wget)

I started thinking about avoiding the manual exports from the VMCP website and remembered I used WGET in the past for this kind of stuff. The difference with before was that this time, I needed to login to the website before being able to get data from it.

Login in to the VMCP website is done using a POST method and luckily wget supports that. The next thing is to understand what the post data needs to be. This can be fetched from the source of the logon page:


The relevant POST data is derived to be

fuseaction=Security
Page=users_login.cfm
username=???
password=???


Since I run Windows XP on my laptop, I use Cygwin to run wget. Cookies are used to store a session ID for you logon session, so wget has to be told to store those cookies in a file. This is the resulting command line:


wget --keep-session-cookies --save-cookies cookies.txt 'https://optimize.vmware.com/index.cfm' --post-data 'fuseaction=Security&Page=users_login.cfm&username=???&password=???' --no-check-certificate -O output.html


Parsing the output.html file, you should be able to see whether logon was succesful. The success depends on many factors (local proxy, network settings, username/password, etc.). You can get more info by adding suitable options to wget.

This concludes part 2 of this series of articles. In this part, we used wget to logon to the VMware capacity planner website.

Thursday, October 25, 2007

VMware Capacity Planner: taking the data offline (Part 1: Introduction)

Lately, I have been involved in some VMware Capacity Planner (VMCP) tracks. VMCP deals with monitoring a set of (physical) servers in order to assess possible virtualization scenarios.

VMCP works in the following way: a monitoring server is set-up with a tool that does (but is not limited to) regular performance measurements. This tools sends the data to a VMware database through the web (over a secure channel). Via a web interface, one can then query the information, get reports, view trends, show graphs, configure and create consolidation scenarios, etc. Usually, we let the system run for around 4 weeks to get a realistic idea of the performance characteristics.

What I like about VMCP is that the data is not located at the customer site, and available at all times (once it has been uploaded). This gives me the opportunity to regularly check on the status of the performance measurements.

The biggest disadvantage of VMCP is that the web interface is not the most flexible and fast interface around. Some things I would like to do are not available (lack of flexibility) but could easily be done in, e.g., Excel and at times when everyone in the world is awake it takes ages to refresh a page and get the result of a query. Moreover, it is not easy to get good-looking information to paste in a document.

When it comes to writing a report, the customer is obviously not only interested in a statement like: you will need 5 ESX server of type X to cope with the load. Therefore, I like to add tables with the most useful metrics (CPU, network, Disk I/O, ...) for later reference. I add this information as an appendix.

This is where I would spend at least half a day exporting CSV files from the VMCP website, loading them in Excel, laying it out as a nice table and paste it in the document. I started thinking about automating some of the steps required, and I covered the most time-consuming already: exporting the information from the website as a CSV file.

In the following part, I'll explain how I started this little adventure...

Wednesday, October 03, 2007

Friday, September 28, 2007

VCB for NFS

Read this post: http://storagefoo.blogspot.com/2007/09/vmware-on-nfs-backup-tricks.html. It discusses a free alternative for VMware Consolidated Backup, but over NFS instead of Fibre Channel (SAN).

Wednesday, September 26, 2007

The thing we want Softgrid to do (Active Upgrade+)

This entry started as a comment on
http://blogs.technet.com/softgrid/archive/2007/09/25/methods-for-upgrading-or-updating-virtualized-applications.aspx

The thing with Active Upgrade is that (as the article points out), the user gets the update automatically on next launch of the application. This is a major step forward for application updates. However, it does not solve the whole application testing problem: before pushing changes to the users, I need to test the application. In order to test, both version need to coexist but with Softgrid it is not X and Y but X or Y. The fact that a rollback to an earlier version of an active upgrade is not possible adds to the complexity.

What I basically want is:
1) Make a parallel application branch Y (as it is called in the article) from version X
2) Test this branch (without impacting the existing version)
3) Update the parallel application branch if required (using active upgrade)
4) When tests are successful, use Active Upgrade to update the production version X

This scenario is inherently not feasible because in stage 1, a new asset directory and a new GUID is created so that settings are stored in a different location.

The scenario that comes closest to what I want is the following:
1) Make a parallel application branch Y
2) Test this branch
3) When tests are successful, apply exactly the same procedure to the original version X, but this time using active upgrade.

The main issue in this case is the fact that you need to record the exact upgrade scenario in order to apply it again in step 3.

An other workaround exists, though:
1) Make an active upgrade
2) Test this update by manually importing the SFT file on the client (instead of streaming it)
3) When successful, do the update centrally with active upgrade.

I hear you thinking: but we have a Test envionment in order to do application tests. Ok, right, do you have a test copy for every production database to name just one example of why production tests may be required.

Friday, August 24, 2007

ESX 3.0 on Workstation 6 (Update)

By accident, I found out that on the website of XtraVirt, a series of white papers has been published around this theme. Starting from installing ESX in a VM, to creating a NAS virtual machine for hosting your virtual-virtual machines and doing VMotion etc. Interesting...

ESX 3.0 host as NAS server

A client asked me to configure one of their ESX hosts as an NFS server for hosting ISO files. This host had 300GB of remaining disk space which would otherwise be just a waste. So, I started right away: creating an export directory, formatting the file system (converting vmfs to ext3), tested mounting it from different ESX host... no problem!

Until I tried to import the new volume as a datastore via the VI Client, then the VI Client complains about the fact that the NFS server does not support NFS v3 over TCP. Although NFS over TCP has been around for ages, it appears to have been stripped from the NFSD module in the service console. Is this done on purpose by VMware to make sure you can not easily run a standalone ESX host with shared storage out-of-the-box?

Anyhow, by recompiling the NFSD module (luckily VMware has added the source for the kernel) one can make it work. See this document (in dutch) for a procedure on how to make this work. Works like a charm!

Tuesday, August 21, 2007

ESX on VMware Workstation 6

I installed ESX 3.0 on VMware Workstation 6 today. People have done this before without too many issues, just some important notes:
- Make sure your processor support VT (or the equivalent for AMD) because otherwise performance is extremely poor.
- Enable VT support in your BIOS (my Dell Latitude D620 had this feature disabled by default - duh!).
- Make sure your virtual disk is 4GB
- Choose a combination of LSILOGIC and SCSI

Doing this, installation of ESX is straightforward and takes about 30 minutes (rough estimate). I've seen messages from people that claim to have virtual machines up and running (with VMotion and all). This is the next step...

Keep you posted...

Friday, July 20, 2007

Softgrid: Machine vs User Cache on the Client

Using Softgrid, applications are virtualized and packaged in (basically) on file, streamed to the user and launched locally on the client. On the client, these applications run in a 'bubble' so that it is isolated from other virtual applications. One of the nice consequences of virtualization is that some applications that would normally not be server-based computing (SBC) compliant can be made so. This is a consequence of the fact that on the client, a user cache exists.

Let me give the example of an INI file that is used by application X to store user-related data. Normally, on a terminal server, this INI file would be shared by all users and thus only one user would be able to use the application at one time. Using Softricity, this INI file is virtualized and is configured to be 'user configuration' (see also here). This way, changes to this file are stored in a cache specific to the user (in the user's profile). Every user has its own version of the INI file and no conflicts can arise.

Setting the INI file as 'user configuration' is automatically done by the sequencer during the sequencing process and it is because the sequencer has certain rules saying 'This type of file needs to be user-specific'. In my case, the files that need to be user-specific are not yet created at the time of sequencing (they are later created normal usage of it. No broblem you say?! When a file is created inside a virtual directory (a directory that does not exist locally on the client, but comes with the virtual environment) it is stored cache! Yes, but in machine cache, not user cache!

What I would need in this specific case is a possibility to define which types of files need to be cache machine-wide and which user-based, not on the sequencer (see this SeqTypes tool by VirtualApp) but on the client. Or in other words, I would like to have the SeqTypes tool available on the Softgrid client. Has anyone experience or more information on this?

Friday, June 22, 2007

ITWorks Virtualization Seminar

2 days ago, I was speaking at a seminar concerning Virtualization (http://www.eyeon.be/event.php?id=VIRTD1). Together with Wim van Balen, we gave an overview of different virtualization types (from hardware virtualization to application virtualization) and various examples of tools per type. This is a big scope, and perhaps too big for one afternoon.

One thing that I would have liked to do is putting VMware ESX next to Xen (and possibly Virtual Iron) and compare the products on different levels. This, however, is hard because unfortunately I only have theoretical knowledge about the latter two. Ideally, I would like to sit together with some people who know more about Xen and discuss strong and weak points of both. In the end, this is what and IT manager in the field is asking for... Any volunteers?

Thursday, June 07, 2007

Google and Virtualization

Check this post: http://www.virtualization.info/2007/06/google-acquires-application.html



Not much can be found on the website, but from the description, the idea sounds familiar...

Custom Search