Author Archives: Steve Jin

Simple Logging in Java Application

Logging is a common requirement for application. In Java world, there are a few frameworks, the first and the most famous of which is the log4j from Apache foundation. Java included its own logging APIs afterwards. You can find many discussions which one is better in terms of use of use, flexibility, and performance. To reconcile the two APIs, a common abstraction called Simple Logging Facade for Java (SLF4J) was created. As SLF4J works with both log4j and Java logging, you can switch between them easily (in theory).

Posted in Software Development | Tagged , | 6 Responses

Massive Scheduling with ScheduledExecutorService in Java

If you need to do certain things at certain points of time or intervals, you need scheduling capability. Don’t confuse the scheduling with multi-threading even though you can use multi-threading for scheduling but they are not equivalent. You can use single thread for many different tasks. Simply put, threads are executors, and tasks are jobs to be done by executors.

Posted in Software Development | Tagged , , | 3 Responses

vSphere vs. Hyper-V: Difference of Virtual Machine States

While reading articles about Microsoft Hyper-V, I found that Hyper-V seemed to have different states for virtual machines from VMware vSphere. The virtual machine in Hyper-V is represented by the Msvm_ComputerSystem class. If you are familiar with VMware vSphere, you know the equivalent in vSphere is VirtualMachine. At first sight, the Hyper-V APIs may not look straight-forward. The Hyper-V APIs is actually based on Windows Management Instrumentation (WMI), which is essentially CIM from DMTF.

Posted in Virtualization | Tagged , , , , | 8 Responses

Cisco Nexus 1000V Distributed Virtual Switch: Command Line Examples

I just took three day Cisco Nexus 1000V training before Christmas. It’s a pretty good experience to play with the commands in the VSM appliance although I am still not quite familiar with these commands yet. Nevertheless, I managed to run through all the 9 labs thanks to the online lab that I could access even after class. To help myself to remember what I did, I listed a few commands that often needed in managing Nexus 1000V.

Posted in Virtualization | Tagged , , , | 11 Responses

Developing Web Application with JQuery and Java Servlet

It’s been a while since I touched Web application development in 2009. Before the VMworld 2009, I created a simple Web Application for the keynote that collected the names and email for a raffle to go back stage with the famous foreigner. That Web application was so simple that it’s built using Java Servlet with a static home page. It’s hosted with Terremark (part of Verizon now) Enterprise cloud.

Posted in Software Development | Tagged , , , | 7 Responses

VI Java API Project Upgrade

During the past weekend, I upgraded the vijava API project to the new Allura platform provided by Sourceforge.net. That’s really a button click and then waited for incoming emails for status updates. It went smoothly and didn’t take long before it finished.

Note that the upgrade is limited to the project hosting, not the Web site (http://vijava.sf.net) which remains the same and continues to work as before.

Posted in News & Events, vSphere API | Tagged , , | 6 Responses

What is Missing in the VMware and EMC’s Pivotal Initiative?

Last week VMware formally announced that it would form a virtual team with EMC to take cloud service and middleware market. There was a rumor about it the week early which turned out to be mostly true. If you are in IT industry nowadays, you simply cannot under-estimate the power of rumors. I think most of the VMware and EMC employees might hear the rumor before hearing it from their management teams. :-)

Posted in Big Data, Cloud Computing | Tagged , , , | 9 Responses

Big Data or Big Junk?

Two weeks I got a problem with my blog site. Somehow I could not post to announce the GA of open source ViJava API for vSphere 5.1 there. After searching and researching, I found out that the wp_commentmeta table was filled with extra amount of data that exceeded the per database limit of 100MB imposed by my service provider. While I was enjoying Thanksgiving holiday, some spammers and their robots worked diligently posting thousands of spam comments on my site.

Posted in Big Data | Tagged , | 13 Responses

DoubleCloud VM Connector for Remote Desktop Connection Manager in VMware Environment

In my previous article, I introduced the Remote Desktop Connection Manager. It’s highly recommended to use it over the virtual machine console which all goes through the ESXi management IP therefore is not good for performance especially when there are many concurrent connections to virtual machines running on a same physical host.

Even if you are convinced on connecting to virtual machines directly, you will find it’s not convenient to add many virtual machines to the Remote Desktop Connection Manager. That is why I decided to write a small tool to automate it.

Posted in Virtualization | Tagged , , , , , , | 9 Responses

Announcing GA of VI Java API 5.1 Supporting vSphere 5.1

It’s been two months since I announced beta of VI Java API 5.1 supporting vSphere 5.1 on September 23. I got many emails asking for the GA date from ISVs and IHVs as the API is now a corner stone in their products. With the long (could be longer, BTW) Thanksgiving holidays, I got some time to review the fixes and release the GA version. I intended to announce it yesterday but somehow extra spam comments pushed the database behind over 100MB limit thus I could not post any new article.

Posted in vSphere API | Tagged , | 13 Responses

OpenStack: 7 Core Projects You Should Know

Last week I took a two day boot camp on OpenStack, which is increasingly popular these days. The project was initially created at Rackspace in answering Amazon Web Services, and open sourced to the community.

Not only service providers and software vendors showed interests in the project, but also hardware vendors tried to pre-install OpenStack as one of key differentiators (inside most, if not all, of hardware boxes are Intel therefore not much difference).

Posted in Cloud Computing | Tagged , , | 7 Responses

Must-Have Tool: ZoomIt for Technical Presenters

In one of my previous posts, I introduced the Remote Desktop Connection Manager. Here is yet another must-have tool: ZoomIt. If you frequently present technical contents on Windows, you will find it very useful, especially when you want to show source code or screen details to your audience.

I’ve found many cases in which presenters had trouble to walk through source code because the font was too small for audience to see clearly. Instead of using this tool, they often tried to change IDE editor settings for a larger font, which worked but not nearly convenient.

Posted in Others | Tagged , | 5 Responses

Encrypt and Decrypt Password in C#?

I just spent a little time playing with C# on password encryption. Here is a sample code I wrote to get myself familiar with related APIs. Overall it’s pretty straight forward – it first encrypts a clear text to an encrypted Base64 encoded string, then reverses it.

Posted in Software Development | Tagged , , | 2 Responses

Must-Have Tool: Remote Desktop Connection Manager

I think most of us have used Microsoft Remote Desktop Connection (mstsc.exe), which is used to connect to a remote server using RDP protocol. If you have more than several remote servers to connect, it can be very inconvenient to navigator through them. Microsoft knew that and created a new tool called Remote Desktop Connection Manager. You can download it for free at Microsoft site here.

Posted in Others | Tagged , , , , | 15 Responses

Conceptual Deep Dive in VMware vCenter Single Sign On

One of the key new features in vSphere 5.1 is the Single Sign On. Because it’s new and also complicated, I’ve heard it’s not easy to get it right the first time. Experts recommend that you should play with it in a test or staging environment before upgrading your production environment.

Posted in vSphere API | Tagged , , , | 4 Responses

What’s New in vSphere 5.1 SDK and APIs

I know it’s well past the GA date of the product on September 10, but I still decide to write this what’s new for the completeness of vSphere SDK FAQs.

As I always emphasize, the SDK/APIs are “view” to the product (you can think it as “model” here). Therefore to understand a SDK/APIs, it’s important to check out the product first. No exception for the new features: what’s new in vSphere decides what’s new in vSphere SDK/APIs. For that, you want to check out the What’s New in VMware vSphere 5.1 at VMware website.

Posted in vSphere API | Tagged , , | 3 Responses

VMware vSphere SDK with Visual Studio 2012

While trying latest Microsoft Visual Studio 2012 Express, I also played with the C# samples of the VMware vSphere SDK. Unfortunately, there isn’t direct support for VS 2012 but for VS 2010, 2008, and 2005. However, you can easily create project files for the VS 2012 by yourself assuming you are already familiar with the Visual Studio environment.

Posted in vSphere API | Tagged , , , , | 8 Responses

The Fifth Bread and the Mobile Computing

Once upon a time, there was a gentleman who was very hungry. He bought 5 breads. After finishing the first 4 breads, he still felt hungry. While eating the 5th bread, he found himself full. Then he thought it’s the fifth bread that made him full, and wondered why he had wasted money on the first 4 breads.

Posted in Others | Tagged , , | 3 Responses

A Quick Hack With vSphere Web Client Timeout

Last week I released a tiny tool called DoubleCloud Client, which eases the usage of vSphere Web Client. I didn’t have time to add another hack which can bypass the session timeout of vSphere Web Client.

By default, vSphere Web Client times out after 30 minutes of inactivity according to VMware Doc. After timing out, you got to re-login and click back to the page you left out. It’s good for the security, but also not convenient. If you use it on your own desktop and have set up screen saver with password protection, you don’t really need this security feature.

Posted in Virtualization | Tagged , , , | 10 Responses

Hadoop MapReduce Data Flow

As its name suggests, the Hadoop MapReduce include Map and Reduce in its processing data flow. At its highest level, the MapReduce follows the traditional wisdom “Divide and Conquer” – dividing big data to small data that can be processed by a commodity computer and then pulling the results together.

Posted in Big Data | Tagged , | 6 Responses
  • NEED HELP?


    My company has created products like vSearch ("Super vCenter"), vijavaNG APIs, EAM APIs, ICE tool. We also help clients with virtualization and cloud computing on customized development, training. Should you, or someone you know, need these products and services, please feel free to contact me: steve __AT__ doublecloud.org.

    Me: Steve Jin, VMware vExpert who authored the VMware VI and vSphere SDK by Prentice Hall, and created the de factor open source vSphere Java API while working at VMware engineering. Companies like Cisco, EMC, NetApp, HP, Dell, VMware, are among the users of the API and other tools I developed for their products, internal IT orchestration, and test automation.