[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [HTCondor-users] VirtualBox: Guest user vs. Condor account!?!



----- Original Message -----

From: John (TJ) Knoeller <johnkn@***********>
To: Rob <spamrefuse@***********>; HTCondor-Users Mail List <htcondor-users@**********>
Cc: 
Sent: Saturday, November 17, 2012 3:42 AM
Subject: Re: [HTCondor-users] VirtualBox: Guest user vs. Condor account!?!

> load_profile only works with HTCondor slot users.
> These are created by HTCondor,  and are the default user context for 
> running jobs.
> 
> I think you may be confusing load_profile with run_as_owner.
> run_as_owner = true cause HTCondor to run a job as a normal user, logging on
> using stored credentials.
> 
> load_profile = true should get you a registry setup the same as the All 
> Users profile,
> but these users probably won't have access to resources on the network.
> 
> -tj


Thanks for the explanation. So this is then what I have done:


# submit description file
universe = vanilla
requirements = (target.Arch == "INTEL") && (target.OpSys == "WINDOWS")
load_profile = True
executable = virtualbox.bat
when_to_transfer_output = on_exit
output = $(CLUSTER)_$(PROCESS).out
log = $(CLUSTER)_$(PROCESS).log
error = $(CLUSTER)_$(PROCESS).err
notification = complete
queue 1
# end of submit description file


REM the DOS batch script 'virtualbox.bat'
"C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" list ostypes
REM end of script


The DOS batch script simply calls VBoxManage to output the list of OS-types (i.e. a text list) it can be handle as a parameter when creating a new virtual machine. When the job is done, the output file is empty; the error file has following three lines:

VBoxManage.exe: error: Failed to create the VirtualBox object!
VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.


The execution machine is Windows XP; would "load_profile = True" work here too? Or what else could be missing?

Again: when I sit in front of the Windows XP console, I can run the VirtualBox commands in the "Guest" account without any problems......so what are other essential differences between the "Guest" account, and the account created for the Condor job?


Thanks,

Rob.


On 11/15/2012 11:15 PM, Rob wrote:
> Thanks for explaining some more Windows context here.
>
> However, I'm afraid that
>
> load_profile = True
>
>
> only works with dedicated users, hence needs users with passwords on the Windows PCs.
>
>
> I'm disappointed that VirtualBox commands apparently require privileges, which normal
> Condor jobs do not have......
>
> Or are there other options I could try.....?
>
> Rob.
>
>
>
> ----- Original Message -----
> From: Ziliang Guo <ziliang@xxxxxxxxxxx>
> To: HTCondor-Users Mail List <htcondor-users@xxxxxxxxxxx>
> Cc:
> Sent: Friday, November 16, 2012 12:46 PM
> Subject: Re: [HTCondor-users] VirtualBox: Guest user vs. Condor account!?!
>
> By default the user accounts used to run Condor jobs do not have a
> registry loaded. If VBox is dependent on something in the user's hive,
> then it'll probably fail. I would suggest adding
>
> load_profile = True
>
> into the submit file and see if that works.
>
> On Thu, Nov 15, 2012 at 6:31 PM, Rob <spamrefuse@xxxxxxxxx> wrote:
>> Hello,
>>
>> I am trying to by-pass the VM universe, and use VirtualBox commands directly
>> on a Windows XP pool PC, with the Vanilla universe and a DOS batch script that
>> handles the necessary VirtualBox commands (the WIndows XP pool PC already
>> has VirtualBox installed)
>>
>> As for now, I am only testing this idea and the DOS batch script just creates
>> a headless virtual machine and then deletes it again.
>>
>>
>> REM Start of DOS batch script
>> REM create a VM
>>
>> "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" createvm --name condor --ostype Other --register
>> REM remove the VM again
>>
>> "C:\Program Files\Oracle\VirtualBox\VBoxManage.exe" unregistervm condor --delete
>> REM End of DOS batch script
>>
>>
>> I walked over to the Windows XP machine and ran this DOS script as the "Guest" user.
>> It worked just fine, so I assumed that then also Condor was allowed to execute the script.
>> Here is the submit description file:
>>
>> universe = vanilla
>>
>> requirements = (target.Arch == "INTEL") && (target.OpSys == "WINDOWS")
>> # this is the same DOS batch script as above
>>
>> executable = virtualbox.bat
>> when_to_transfer_output = on_exit
>>
>> output = virtualbox.out
>> log      = virtualbox.log
>> error    = virutalbox.err
>> notification = complete
>>
>> queue
>>
>>
>> When I submit this job description, I get this in the error file:
>>
>> VBoxManage.exe: error: Failed to create the VirtualBox object!
>> VBoxManage.exe: error: Code CO_E_SERVER_EXEC_FAILURE (0x80080005) - Server execution failed (extended info not available)
>> VBoxManage.exe: error: Most likely, the VirtualBox COM server is not running or failed to start.
>>
>> (the output file remains empty).
>>
>> Does the error occur because Condor runs the batch script as an unprivileged user?
>> If I can run the batch script as a "Guest" user, then why is it not possible for Condor
>> to run the commands in the batch script?
>>
>>
>> The Condor manual says:
>>
>> "Condor executes jobs on Windows using dedicated run accounts
>> that have minimal access rights and privileges, and which are recreated
>> for each new job."
>>
>> Is there a difference between Condor's "dedicated run account with minimal access rights"
>> and the "Guest" account?
>>
>> I am very much puzzled here!
>>
>> Thank you!
>>
>> Rob.
>>
>> _______________________________________________
>> HTCondor-users mailing list
>> To unsubscribe, send a message to htcondor-users-request@xxxxxxxxxxxxxxx a
>> subject: Unsubscribe
>> You can also unsubscribe by visiting
>> https://lists.cs.wisc.edu/mailman/listinfo/htcondor-users
>>
>> The archives can be found at:
>> https://lists.cs.wisc.edu/archive/htcondor-users/
>
>