VMWare Server 1.x

Jun 8, 2009 at 4:25 PM

Hello :)

Does VMTasks support VMWare Server 1.x?

Vestris.VMWareLib.VMWareVirtualHost vmHost = new Vestris.VMWareLib.VMWareVirtualHost();

vmHost.ConnectToVMWareVIServer("orcastest", "boneal", "WhatMyPasswordIs");

The second operation throws an exception with message "The operation timed out." (ORCASTEST is the hostname of a machine running VMWare Server 1.0.9)

Am I doing something wrong or does VMTasks not support 1.x?

Billy3

Coordinator
Jun 8, 2009 at 4:44 PM

Yes, but you're using the wrong call. ConnectToVMWareVIServer means connect to a Virtual Instructure server. You need ConnectToVMWareServer.

Jun 8, 2009 at 5:01 PM

Hello, dblock :)

How does one specify a username/password to connect to VMWare Server? Or is that currently not possible?

Very nice library btw.

Billy3

Jun 8, 2009 at 5:13 PM
Edited Jun 8, 2009 at 5:14 PM

Hello once more :)

I added the following to VMWareVirtualHost.cs and now everything works correctly.

 

        /// 
        /// Connects to a VMWare Server.
        /// 
        /// <param name="hostName" />DNS name or IP address of a VMWare host, leave blank for localhost.
        /// <param name="user" />Username.
        /// <param name="password" />Password.
        public void ConnectToVMWareServer(string hostName, string user, string password)
        {
            Connect(ServiceProviderType.Server,
                hostName, 0, user, password, VMWareInterop.Timeouts.ConnectTimeout);
        }
        /// 
        /// Connects to a VMWare Server.
        /// 
        /// <param name="hostName" />DNS name or IP address of a VMWare host, leave blank for localhost.
        /// <param name="user" />Username.
        /// <param name="password" />Password.
        /// <param name="timeoutInSeconds" />Timeout in seconds.
        public void ConnectToVMWareServer(string hostName, string user, string password, int timeoutInSeconds)
        {
            Connect(ServiceProviderType.Server,
                hostName, 0, user, password, timeoutInSeconds);
        }

Hope that helps,

Billy3

EDIT: Copy/paste broke the XML comments but I hope you get the idea :)

Coordinator
Jun 8, 2009 at 8:01 PM

Duh. This was missing, I should really install a VMWare Server somewhere :) I'll make the change in the library and commit it for 1.3. Thx.

Jun 8, 2009 at 8:15 PM

No, thank you :)

Billy3

Coordinator
Jun 9, 2009 at 6:54 PM

I've posted a 1.3 daily build that has this change amongst others. http://vmwaretasks.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28489 Maybe 1.3 will get your 5 stars :)

Jun 9, 2009 at 7:39 PM

It will :)

Jun 18, 2009 at 9:31 PM

Looking at this -> http://vmwaretasks.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=28489

If you are connecting to localhost, no username or password is needed. You can connect to it just like you to do workstation.

You only need those if you're connecting to a remote host ;)

Billy3

Coordinator
Jun 18, 2009 at 10:08 PM

I thought about this and considered it's wrong to add an interface that doesn't take a username/password. VMWare Server is primarily a server, and should not be used locally - I mean you would use the Workstation product for that. I think if you need no credentials, you should really specify null/null for username/password explicitly. What do you think?

Jun 18, 2009 at 10:12 PM

6 of this, half dozen of another to me :) Only reason I'm pointing this out is that if you leave as is, then you don't have to list things as an incompatible change.

While server is supposed to be for servers, it's also the main free VMWare product. (Well... server 2.x now) I'm sure several use it for more Workstation type workloads. Many users simply don't need the team and multiple snapshot features workstation provides.

Have a nice day,

Billy3

Coordinator
Jun 18, 2009 at 10:19 PM
Edited Jun 18, 2009 at 10:21 PM

I hear you. So maybe the right function is ConnectToVMWareServer without any parameters, not with hostname whatsoever? Can you connect with all null-s to your local VMWare Server or should I specify "localhost"?

Jun 18, 2009 at 10:20 PM

Hmm.. .good point. Yes.

Coordinator
Jun 18, 2009 at 10:21 PM

Can you connect with all null-s to your local VMWare Server or should I specify "localhost" as default?

Jun 18, 2009 at 10:38 PM

Hmm... give me some time to give that a shot. I don't have VMWare Server installed anywhere but remotely atm.

Billy3

Jun 25, 2009 at 6:19 PM

It appears I cannot install VMware Server on this machine -- if Workstation is installed it won't install side by side :( I'm sorry.

Billy3

Coordinator
Jun 25, 2009 at 6:44 PM
Edited Jun 25, 2009 at 6:47 PM

I actually ended up installing VMWare Server. I am all in the know about how things work now. I've also modified the docs to be very clear about it. For VMWare Server 2.0 specifically, it's really VMWare VI, so you need to connect to it like for ESX, except that the default port is different. So it's ConnectToVIServer("localhost:8333", username, password) for example. Since the port is non-default, you have to specify the host name.

For VMWare Server 1.x, that's the topic of this discussion, I will install it and check it out. I think not very many people do care though any more.

Jun 25, 2009 at 7:38 PM

For testing against server 2 and remote machines, I was unable to connect using DNS names in there... it only worked if I manually converted to an IP address.

We still have a lot of server 1.x hosts here... many aren't happy with VMWare Server 2's web interface. The thick client is so much nicer... it's a shame they removed it.

Cheers!

Billy3

Coordinator
Jun 26, 2009 at 12:04 AM

I had similar problems with hostname/IPs. I'll make a note and do some testing, possibly will report issues to VMWare.

For the UI, download VMWare Infrastructure Client (aka VSphere Client). That's a thick UI that lets you do most of the things that VMWare Server web-based UI allows you to do. Connect with hostname:port, eg. localhost:8333. VMWare Server 2.0 works just like VMWare VI in terms of APIs.