VMworld 2016 and vSearch 3.0 Preview

The VMworld 2016 is coming in about two weeks. Although I’ve attended every single VMworld after 2007, it’s my first time as an exhibitor myself, to be exact, as a new innovator in the show. If you follow my blog and Twitter, you probably have know the company DoubleCloud that I had founded and the cool products/technologies we’ve been working on. This is the first year for us to promote our products in show. Please come to see our product demos, or simply stop by and say hi. Our booth is 841#4.

Posted in Applications & Tools, Cloud Computing, News & Events | Tagged , , , , , | 3 Responses

Install Squid as HTTP and HTTPS Proxy Server

While creating the vSearch 3.0, we needed a HTTP/HTTPS proxy server to test the new features like public cloud support. With a little search, I found the Squid server. It turned out to be pretty easy to install a new one and use it based on default settings.

Install
Like most of the software package on CentOS, Squid can be installed using the yum command line. Here is what’s needed to install and configure it.

Posted in Applications & Tools | Tagged , , , | 2 Responses

vSearch 2.0 Released: “Super vCenter” is Even Superer

After more than 4 months of hard work, we are proud to announce the second major release of the product. On the high level, there are 3 major features besides many smaller improvements over the first release based on the customers’ feedback.

1. VM Actions and Group Actions

Posted in Virtualization | Tagged , , , | 3 Responses

How to Install Kubernetes to Run Docker on VMware vSphere

Installing Google Kubernetes does not require VMware vSphere or any other virtual machine hypervisor. However, doing that on a VM is very convenient, so it’s highly recommended especially for development and testing environment.

Regardless VM or physical machine, a Linux OS is a must. As always, I picked CentOS 7 which is a fork of RHEL. Once getting a CentOS installed, the rest is easy. If you have a CentOS template already, deploying a new one should be very fast.

Posted in Applications & Tools, Cloud Computing | Tagged , , | Leave a comment

Too Early to Say GoodBye VMware vSphere Client?

VMware published a blog “Goodbye vSphere Client for Windows (C#) – Hello HTML5” with two announcements: 1. There won’t be the traditional C# based vSphere Client for the next version of vSphere (no one knows the version yet but it’s safe to call it the next version.). 2. The vSphere HTML5 Web Client Fling will be supported soon (no exact timetable is given). My guess is that it will make into next release of vSphere if not earlier.

Posted in Virtualization | Tagged , , | 2 Responses

How to Wait for Promises in AngularJS

In one of my previous blogs – How to Cache Results from Asynchronous Calls in AngularJS, I mentioned a technique that downloads data from remote server via $http service as a promise. This is quite often used in Web application development, for example, you want to save configuration, user preference on remote server and download them on fly.

Posted in Software Development | Tagged , , | Leave a comment

Book Review: Docker Containers – Build and Deploy with Kubernetes, Flannel, Cockpit, and Atomic

After the virtualization buzz, the industry is actively looking for the next big thing. The container technology just came in at the right timing. Docker is the clear leader in the container technology, followed by CoreOS Rocket and RancherOS today.

Posted in Applications & Tools, Cloud Computing | Tagged , | 4 Responses

Google Cloud Platform: Hello World with Service Account

In my last post, I showed a sample with OAuth. It works well for application on others’ behalves. For the hello world program, it’s better to run without any user’s manual interaction. Google has provided “Service Account Key” for that purpose.

When you create a new credential, the console asks the type of key. You can select the service account key, and then select the “Compute engine default service account” with P12 as the key type. The generated key will be downloaded automatically. Save it safely and it cannot download again. You can then copy the key to the project home with a name as key.p12.

Posted in Cloud Computing, Software Development | Tagged , | 1 Response

Google Cloud Platform: Hello World with OAuth 2

Google Cloud is the 3rd public cloud I tried after Amazon AWS and Microsoft Azure. I used its AppEngine before and it worked pretty well. Google started very early in the cloud game but it lost the opportunity to Amazon because it over-estimated the attractiveness of its own infrastructure that runs Google search.

Posted in Cloud Computing, Software Development | Tagged , , | Leave a comment

Azure Service Management APIs: The Old APIs That Works

After the initial bad experience with the new Azure Resource Management APIs, I took a different approach – try the old Service Management APIs. While transitioning from old system to new system, the old one may still be the best for an unexpected long period of time. Like VMware vSphere Client, VMware has declared end of life many times, but it’s still the favorite for most customers, while the future Web Client remains “future” since 2011.

Posted in Cloud Computing, Software Development | Tagged , , , | Leave a comment

Paradigm Shift in Data Center Management: What’s After VMware?

The recent release of DoubleCloud vSearch represents a paradigm shift in how we manage data center in the future. Before agreeing with me on that, let’s take a quick look at the history.

Yahoo vs. Google

When the Web first came out in the early 90s, there weren’t many Web sites and pages out there. To help us find pages of interest, a typical directory approach was used. That created the initial success for Yahoo in the first place.

Posted in Cloud Computing, Virtualization | Tagged , , , , | Leave a comment

What I Learned about Microsoft Azure and its Resource Management APIs

It was my plan to go over the popular cloud services on their management APIs. After familiarizing myself with Amazon AWS Java SDK with a few samples, I started with Azure and it turned out to a painful process.

In the following I will walk you through what I had experienced, and what works and not. Hope my experience will help you save some time with Azure.

Posted in Cloud Computing, Software Development | Tagged , | Leave a comment

Amazon Web Service Java SDK Tutorial: List All Networks

In my previous posts, I showed samples on virtual machine creation, virtual machine instances listing, storage volume listing. This sample shows how to list all the networks that you have.

With the information about your networks, you can get all the private and public IP addresses.

To run the following sample, you can check out the previous post for the pom.xml file and how to get AWS credentials from AWS console.

faf2ddae4dbab3ec27a6cbe965bab1cb022

Posted in Cloud Computing, Software Development | Tagged , , , | 1 Response

Amazon Web Service Java SDK Tutorial: List All Volumes

In my previous posts, I showed samples on how to create a new virtual machine instance, and how to list all the virtual machine instances you own. This sample shows how to list all the disk volumes that you have.

To run the following sample, you can check out the previous posts for the pom.xml file and how to get AWS credentials from AWS console.

package org.doublecloud.awssample;
 
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.PropertiesCredentials;
import com.amazonaws.services.ec2.AmazonEC2;
import com.amazonaws.services.ec2.AmazonEC2Client;
import com.amazonaws.services.ec2.model.DescribeVolumesResult;
import com.amazonaws.services.ec2.model.Volume;
 
public class AwsEc2ListVolumes
{
  public static void main(String[] args) throws Exception
  {
    AWSCredentials credentials = new PropertiesCredentials(AwsEc2ListVolumes.class.getResourceAsStream("/AwsCredentials.properties"));
    AmazonEC2 ec2 = new AmazonEC2Client(credentials);
 
    DescribeVolumesResult volReq = ec2.describeVolumes();
 
    int count = 1;
    for (Volume vol : volReq.getVolumes())
    {
      System.out.println("Volume " + count   + "\n Details: " + vol);
      count++;
    }
  }
}

The output will be something as follows:

Posted in Cloud Computing, Software Development | Tagged , , , | 3 Responses

Amazon Web Service Java SDK Tutorial: Create New Virtual Machine

In my previous post, I showed a sample on how to list virtual machine instances. While that is helpful, maybe even more so is to create a new virtual machine. Here comes another sample that creates new virtual machine instance using the Amazon Java SDK.

Posted in Cloud Computing, Software Development | Tagged , , , | Leave a comment

Windows 10: WiFi Network Not Found After Hibernation

Windows 10 is definitely better than Windows 8 and 8.1 in terms of usability. I find myself using my labtop a lot more after upgrade from the factory installed 8.0. Compared with Windows 7, however, I don’t see much difference and that is why I haven’t taken advantage of the free upgrade from Microsoft on my desktop.

Posted in Applications & Tools | Tagged , , | 1 Response

How to Create Plugin Framework Using AngularJS

As I mentioned earlier, the AngularJS is an amazing JavaScript framework. It separates the model from view, and really makes programming in JavaScript pleasant. We actually use it in our recently released product DoubleCloud vSearch. I have personally used it for almost one year now and like it a lot even though I am not yet an expert.

Posted in Software Development | Tagged , , , | Leave a comment

Amazon Web Services: How to Get Volume Snapshots Including Others’

As I mentioned in my previous post, I started to play with Amazon Web Services, in particular its APIs. As part of the learning process, I tried to invoke different APIs to familiarize myself with their usages.

Most of the APIs worked as expected without much surprise until I called describeSnapshots() method to list all the volume snapshots under my account. Because I hadn’t created any snapshots, I did not expect to see any snapshot returned. But my code actually got me 10,933 volume snapshots.

Posted in Applications & Tools, Cloud Computing | Tagged , | Leave a comment

Amazon Web Service Java SDK Tutorial: Simplest Hello World

I looked at Amazon Web Services SDK a while back and started to work with it recently. While searching it the Internet, I got all the results on the first two pages on Google pointing back to Amazon, which is great. After reading these documents, however, I got headaches. Why? For one thing, they are pretty long and sometimes run over different Web pages. Do you want to read for an hour to get your first program running? Or you are like me who would like to get my first program like Hello World to run in 5 minutes or even shorter. We should then read more if we don’t understand some parts. If you have gone through the Amazon documents, you’d know it’s impossible.

Posted in Cloud Computing, Software Development | Tagged , , , | 1 Response

Book Review: The Go Programming Language

After launching our flagship product “Super vCenter”, I finally got a little time to catch up with my other works. One of these is to write a book review for Alan Donovan and Brian Kernighan on their new book The Go Programming Language. I received a copy a couple months ago from the publisher Pearson which also published my book VMware VI and vSphere SDK in 2009.

Posted in Software Development | Tagged , | 1 Response
  • 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.