I am overwhelmed and flattered by the tremendous interest in SimDK. Due to the high barrier of entry at this early stage in SimDK’s development, I’ve created a Virtual Appliance with SimDK preinstalled (a dirty, dark secret about me — I know nothing about Virtual Appliances or how to create them, so bear with me please).
Virtual Appliance Configuration
- Ubuntu 9.04 (Jaunty Jackalope) x64 Server (Minimal Virtual Machine)
- 2 GB RAM
- 1.9 GB Hard Drive (VMDK), LSI Logic Controller, No Space Pre-Allocation
- Automatic Security Upgrades Enabled
- OpenSSH
- Tomcat6 (HTTP on port 80)
- MySQL5
- SimDK 0.0.1-SNAPSHOT
- Created with VMware Fusion 3.0.2 (232708)
Credentials
- Operating System – simdk / password (the root account is not enabled; use sudo)
- MySQL – root / password
- SimDK – root / password
Logs
- Tomcat – /var/log/tomcat6
-
SimDK – /var/log/simdk
- simdk.log – The primary SimDK log file.
- simdk.reqsp.log – This log file contains all of the request/response XML for SimDK.
Configuration Files
-
Tomcat – /etc/tomcat6
- server.xml – This is the file where you can configure the ports that SimDK uses and whether or not to use SSL.
- security.config – The Java Authentication and Authorization Service (JAAS) configuration file. This file instructs the web service which login module to use to authenticate and authorize requests.
- vimService.wsdl – The file returned by requests for /sdk/vimService.wsdl.
- vim.wsdl – The file returned by requests for /sdk/vim.wsdl.
- ws.properties – The SimDK web service’s properties file. This file is primarily used to configure logging.
Connecting to the SimDK Virtual Appliance
Here are some examples of connecting to the SimDK Virtual Appliance with the vSphere Perl Toolki, vSphere PowerCLI, and directly with MySQL.
vSphere Perl Toolkit
[0]akutz@legacy:general$ ./viversion.pl --server 192.168.53.135 --protocol http --username root --password password This is VirtualCenter 4.0 This is VMware vCenter Server 4.0.0 build-162856 running on x86-based Windows systems The product Line ID is a unique identifier for a product line. This is VMware VirtualCenter product. Short form of the product name is VMware vCenter Server having version 4.0.0 System is running on x86-based Windows systems
vSphere PowerCLI
[vSphere PowerCLI] C:\> Connect-VIServer -Server 192.168.53.135 -Protocol http -User root -Password password Name Port User ---- ---- ---- 192.168.53.135 80 root [vSphere PowerCLI] C:\> Get-Cluster Name HAEnabled HAFailover Level DrsEnabled DrsAutomationLevel ---- --------- ---------------- ---------- --------------- North HA Cluster ESX40 False 1 False FullyAutomated North HA Cluster ESX35 False 1 True FullyAutomated
MySQL
The MySQL server has been configured to allow remote connections, so be aware of that if you put the virtual appliance on a public network. For example, this command can be used to list all of the Managed Entities from a remote system against the SimDK server’s MySQL instance:
[0]akutz@legacy:~$ echo "SELECT * FROM ManagedEntity;" | mysql -u root -p -h 192.168.53.135 -D db_simdk
After being prompted for the password (which is password), the following output would be displayed:
C3f385cf1774464b1314fdcc15bcf8a00 Cce94f240e29b3767c256b3a077730dcd C450667569b771ca5ab11b6895b4a8ab0 Cedcb058f569e75dd4f08b8fd59ee7b36 jpaId JC16e7f385b0e85ad376aa7b72cd6a0150 0 Datacenters 0 group-d1 NULL 0 datastore 0 group-s84 datacenter-2 0 minnesota:storage1 3 datastore-121 group-s84 0 vm 0 group-v3 datacenter-2 0 network 0 group-n86 datacenter-2 0 network-upgrade 0 group-n87 group-n86 1 VM Network 1 network-25 group-n87 0 datastore-upgrade 0 group-s85 group-s84 0 maine:storage1 1 datastore-46 group-s85 1 Resources 1 resgroup-7 domain-c5 1 NorthHA_vApp 1 resgroup-v916 resgroup-7 1 Bangor 1 vm-289 NULL 1 Bethel 1 vm-58 NULL 1 Maxfield 1 vm-52 group-v26 1 Dexter 1 vm-54 group-v26 1 Frenchville 1 vm-56 group-v26 1 Kittery 1 vm-60 group-v26 1 Franklin 1 vm-80 group-v3 1 RP1 1 resgroup-281 resgroup-7 1 RP2 1 resgroup-284 resgroup-281 1 Kennebunkport 1 vm-50 group-v26 1 Augusta 1 vm-48 group-v26 1 North HA Cluster ESX35 1 domain-c5 group-h4 1 maine.hyper9.com 1 host-43 domain-c5 0 Chigger 2 datastore-128 group-s84 0 Spider 1 datastore-130 group-s84 0 Wasp 2 datastore-132 group-s84 1 Resources 1 resgroup-117 domain-c115 0 north-dakota:storage1 2 datastore-126 group-s84 1 Fargo 1 vm-163 group-v26 1 Bismarck 1 vm-167 group-v26 1 Harvey 1 vm-169 group-v26 1 Minot 1 vm-173 group-v26 1 Park River 1 vm-177 group-v26 1 Ambrose 1 vm-188 group-v26 1 LinkedClone_of_Bismarck 1 vm-912 group-v26 1 Cavalier 2 vm-175 group-v26 1 St-Cloud 1 vm-138 group-v26 1 St-Paul 1 vm-141 group-v26 1 Minneapolis 1 vm-144 group-v26 1 Maple Grove 1 vm-149 group-v26 1 Blaine 1 vm-165 group-v26 1 Lakota 1 vm-179 group-v26 1 Killdeer 1 vm-181 group-v26 0 Another folder 0 group-v280 group-v3 1 Dazey 1 vm-183 group-v280 1 thinprov-nd 1 vm-274 group-v26 1 LinkedClone_of_Blaine 1 vm-909 group-v26 1 Duluth 1 vm-152 group-v26 1 Eagan 1 vm-161 group-v26 1 10,000 Lakes 1 vm-185 group-v26 1 north-dakota.hyper9.com 2 host-123 domain-c115 1 Minnetonka 3 vm-146 group-v26 0 Discovered Virtual Machine 0 group-v26 group-v3 1 Alvarado 1 vm-135 group-v26 0 North 0 datacenter-2 group-d1 0 host 0 group-h4 datacenter-2 0 New-Folder 0 group-h278 group-h4 0 VM Folder 2 0 group-h279 group-h4 1 North HA Cluster ESX40 1 domain-c115 group-h4 1 minnesota.hyper9.com 2 host-118 domain-c115
Download
The following files are available for immediate consumption!
- simdk.vmx 2.39 KB (md5: 9b4ba880a52b6f61cd302e856db24a12) – The virtual machine configuration file.
- simdk.vmxf 260 B (md5: 63ca2be042a2a38f92ba4ddba82d2a3a) – The extended configuration file.
- simdk.vmdk 1649 MB (md5: d637013ccac19f2d8f0901a6a44b374c) – The virtual hard disk file.
Please let me know if you have any questions / problems.
Additional Information
As an added bonus, here is the database dump file used to populate the virtual appliance’s SimDK database with information.
- db_simdk.sql 9.5 MB (md5: c53655992962bc87662a3b997f9302e6) – A SimDK MySQL5 database dump file.
You can import this dump file into any MySQL5 server with these steps:
- Create a database named db_simdk
echo "CREATE DATABASE db_simdk;" | mysql -u USER -p
- Import the dump file with the following command:
mysql -u USER -p db_simdk < db_simdk.sql
Oh, and if you want to dump your own SimDK database from MySQL, use the following command (the –single-transaction is important):
mysqldump -u root -p --single-transaction db_simdk > db_simdk.sql
Hi Andrew, Is there any way to use vSphere client against SimDK ?
BTW, thanks a lot for this great “sandbox” !
Sorry, i didn’t noticed your previous blog post https://akutz.wordpress.com/2010/03/10/how-to-vsphere-client-to-vcenter-using-http/
Thanks :)
I’ve got the vSphere client working to the point where it authenticates, but not beyond that yet unfortunately. I talked to god, and she just won’t add another 13 hours to the day like I asked…
I miss understood your previous blog post (read too fast) :s
Do you have an idea of what’s going on and if it’s doable ?
I do know what’s going on (mostly), and it’s doable. It’s just not done yet. If you’re a developer and want to help, please let me know :)
Sounds good anyway :)
I’m not a developer, just a Power-CLI advanced user but if you need help for testing fell free to ask me !
Hi Andrew – Great Idea but I cannot connect the VI-Client to it at all. I can ping the VM. I followed your notes about using port 80. But still no joy. Also I think there is an easiler way which is to point the VI client to > servername/ip:80
Any thoughts.
Ricky,
You cannot yet connect to SimDK with the vSphere client as the vSphere client uses more than just the SDK. I’m working on it :)
Andrew, i tested some cmdlet. get-vmhost and get-view is not working, is it “by design” or under dev. ?
BTW, is it possible to create new VM, new clusters and new host ?
I don’t think these are working. You can always check the server logs to see what error/warning is being thrown and post the logs on the SimDK SourceForge site. This is definitely a work in progress. Creation of items is not supported yet, but will be in the next snapshot. I’m working on improving the build process right now.
Can’t wait ! Thanks a lot for your time Andrew :)
Great work so far, looking forward to the future features!
If you figure out a way to get those extra hours in the day, let me know ;)
/m
Great Work!
This Appliance works like a charm. Keep up this good work and i’m looking forward for the first XenServer Proxy Appliance :)
Patrick
Hi There!
I managed to get the appliance running under VMware Workstation. When I try to connect however, I get the following error:
> Connect-VIServer -Server 10.28.1.38 -Protocol http -User root -Password ********
Connect-VIServer : Namespace prefix ‘S’ not defined
I’m using: VMware vSphere PowerCLI 4.0 U1 build 208462
Any clues ? thanks.
Oops!
Nevermind, I found the problem. I had changed the root password of the appliance. Setting it backup to “password” solved the issue.
How can i fix the issue of:
Namespace prefix ‘S’ not defined
Thanks!
What is your client?
Hi,
this “Name space” problem happens when there is some exception thrown. Just try to run the SimDK properly, meaning see the mysql running status / tomcat running status etc., If everything works ok, just restart the SimDK machine once and run your powerCLI script again. I think, the ServiceInstances are cached, in my lab this problem occurs when SimDK runs for more than a day, have to restart to make it work.
-mj
I have a Java Client which I am trying to connect to SIMDK and I get below error. Help would be appreciated a lot.
WARNING: Axisfault-javax.net.ssl.SSLHandshakeException: Remote host closed connection during handshake
Thanks
GG
You’re using Axis? You should look up how to connect to a web service using a dummy SSL validator. Here’s an example: http://taskboy.com/blog/?bid=176.
Hi akutz!!!
Thanx for your nice simdk simulator and emulator Virtual Appliance. I downloaded and configured in my EXS 4.0 host. Now itz running as one of the VM in a Datacenter.
I am able to login to Ubuntu OS and query for mysql database.
Query:
Could you let me know how to get connect to that vm running simdk from vSphere Client or vSphere Power CLI.
Thanx in advance
The original demo video demonstrates how to accomplish this via the PowerCLI. The vSphere Client is not supported at this time.
Thanx for your prompt response.
As per suggestion, I tried connecting through Power CLI, but unfortunately got an Connection Exception.
[vSphere PowerCLI] C:\> connect-viserver -server 10.28.1.40 -Protocol http – User root -Password password
Connect-VIServer : Network connectivity error occured. Please verify that the network address and port are correct.
At line:1 char:17
+ connect-viserver <<<< -server 10.28.1.40 -Protocol http -User root -Password password
+ CategoryInfo : ObjectNotFound: (:) [Connect-VIServer], ViServer
ConnectionException
+ FullyQualifiedErrorId : Client20_ConnectivityServiceImpl_Reconnect_BadNe
tworkConnection,VMware.VimAutomation.Commands.ConnectVIServer
Could please help in resolving this issue
Thanx
SDKFan
I can ping the VM through PowerCLI, but not able to connect. How to fix this issue?
I’m not sure. I am not actively developing SimDK at the moment. It was more of “can I do it” type of project. There was never critical mass behind it, so I had to move on to other things.
Thanks a lot for providing this. It’s very helpful. I have a question, however. The SimDK/VM seems to be emulating a virtual center. How hard would it be to make it look like an ESX host, that is managable by a real vCenter?
It wouldn’t be too hard, but I’m not actively developing SimDK at the moment.
Hi,
I’m trying to install simdk and use it as an emulator/simulator but I’m getting the following issue:
PS C:\Program Files\VMware\Infrastructure\vSphere PowerCLI> Connect-VIServer -Se
rver localhost -User root -Password password -Protocol http -Port 8080
Connect-VIServer : 10/18/2010 3:22:51 PM Connect-VIServer Could not c
onnect using the requested protocol.
At line:1 char:17
+ Connect-VIServer <<<< -Server localhost -User root -Password password -Prot
ocol http -Port 8080
I have verified that the database db_simdk on MySQL and it was even able to import data from an existing vcenter server.
I've also verified that tomcat does deploy the simdk-ws-0.0.1 war file. I'm not able to connect to the server either using power cli or a sample program that i have to connect to my real vcenter. Any help in this regard will be really great since i've basically hit a wall.
Thanks
Samir
How can i fix the issue
Thanks,
Amit Patil
Hi ,
We are not able to download appliance files (simdk.vmx ,simdk.vmxf,simdk.vmdk) from given link. we tried it couple of times but its not totally copied . so is there any other mirror link ??? from where we can download.
We also tried with binary package. and followed the all instruction given on http://simdk.sourceforge.net/installing.html , we observe the log and we find that all WS is up and running .. but when we try to connect it through power-cli we cant able to connect it ..
We got following connection Exception.. ====>
[vSphere PowerCLI] C:\> Connect-VIServer -Server psms413 -Protocol http -User ro
ot -Password ####### -port 8080
Connect-VIServer : 2/18/2011 6:57:36 PM Connect-VIServer Could not co
nnect using the requested protocol.
At line:1 char:17
+ Connect-VIServer <<<< -Server psms413 -Protocol http -User root -Password bm
cAdm1n -port 8080
+ CategoryInfo : ObjectNotFound: (:) [Connect-VIServer], ViServer
ConnectionException
+ FullyQualifiedErrorId : Client20_ConnectivityServiceImpl_Reconnect_Proto
colError,VMware.VimAutomation.ViCore.Cmdlets.Commands.ConnectVIServer
~Thanks
Amit
Hey Sameer,
I am precisely stuck at the same point. How did you go further? Any luck in setting it up?
Thanks in advance
Pallavi