how to install operating system on a virtual machine programatically - operating-system

It may be a duplicate question but i could not find it anywhere.
Anyway, my goal to install operating system(both linux and windows) programatically on a virtual machine running on vmware hosts.
Although my search, I am quite lost about where to start.
Is there a framework or project you can suggest?

You could use templates; i.e. create a VM, install the Linux distribution of your choice and make the VM a template. Then don't create VMs but deploy the template.
Alternatively, google for the Linux distribution of your choice and something like "network installation". You'll need a DHCP server and probably a TFTP and/or web server.
Working with Templates and Clones
Creating VMware Virtual Machine Templates

Try having a look at Vagrant: http://www.vagrantup.com/. It allows you to install/uninstall a predefined VM from the command line.

Related

How can I use a local TwinCat 3 runtime with Hyper-V enabled?

I'm trying to run TwinCat 3 XAR in a PC where I need to have hyper-V ON to run Azure IoT Edge (which uses hyper-V). Is there a way to run XAR with hyper-V turned on? Is there any way to isolate the cores from hyper-v or something else?
Edit 22 April 2022
For a complete tutorial on this see my blog post.
There is a way to accomplish this. You can do this by instead of having a local runtime, you can run the code on a runtime in a virtual machine. I got the idea from this reddit post.
To make it work I did the following:
Download and install VMware Player. Its free for non-commercial use. You can also use the paid Pro (Workstation) version. I'm not sure if this also works with Virtual Box.
Install TwinCAT BSD on the virtual machine as described in this excellent YouTube video by Jakob
If you're using VMware Player and need to enable UEFI you need to do the following as noted by YouTube user Eivind Hilde:
Follow the guide in the video, but skip the step where the firmware type is set.
Try to boot the VM. it will fail.
Open the .vmx file in the VM directory with notepad .
Find "firmware = "bios" and replace with "firmware ="efi"" and save. If this line doesn't exist, just add it somewhere.
It will now boot, and you can follow the guide in the video for the rest.
Run your TwinCAT project on the virtual machine, without the need to disable Hyper-V. 🎉
Previous answer
I don't think so. InfoSys mentions:
Hyper-V environment:
The runtime environment cannot be started inside a Hyper-V environment. This refers in particular to virtual Hyper-V machines, which are run in a privileged Hyper-V machine. As soon as a component of the computer uses Hyper-V, only the engineering environment (XAE) can be used on this computer, not the runtime environment (XAR).
But they also mention that:
TwinCAT attempts to detect these Hyper-V environments; however, it is in the nature of virtualization approaches that they do not wish to be detected and TwinCAT therefore cannot carry out any 100% detection.
So maybe there is some way you can prevent TwinCAT from detecting a Hyper-V environment. However, that is something I can't answer.

Dell iDRAC: the difference between "Embedded OS deployment tools" and "Remote OS deployment"

I'm considering getting a collection of Dell PowerEdge servers. Dell documentation is pretty poor (no surprise there) and I have trouble figuring out if I can go with iDRAC Basic or if I need iDRAC Express or Enterprise.
My need is to install Ubuntu Server (minimal install with SSH is enough). After install all I need is SSH and possibly a remote "reset" button. I can install the OS before taking the system to server room so I don't really need remote OS deployment tools. However, the server does not have a graphics adapter. Is it possible to install Ubuntu with just iDRAC Basic or do I need additional hardware?
#iwork4dell Remote OS deployment implies Virtual Console (like VNC) and Virtual Media (using a remote ISO like a local DVD). These are Enterprise license features. OS deployment tools are are the driver pack that is stored in flash on the server and made available during OS installation to support new hardware on older OSes.
The iDRAC is an integrated VGA adapter so all the Power Edge servers do have a video adapter in them unless you disable it in BIOS. If your willing to attach a keyboard and monitor to the server basic is all you need. You can also upgrade the iDRAC with a license key after purchase.
See http://en.community.dell.com/techcenter/extras/m/white_papers/20440743
and http://i.dell.com/sites/doccontent/shared-content/data-sheets/en/Documents/idrac-spec-sheet.pdf
IDRAC is possible, just you can open gui of idrac and then launch on the online server. You can add the iso file on virtual server.

How to host the OpenStreetMap Locally

I want to host the OSM (OpenStreetMap) locally. I need the basic idea what are required for hosting the OSM and how the task can be done in a step wise manner. I have to host it in Windows7 environment.
Any kind of help will be useful.
switch2osm contains detailed instructions and requirements for setting up a OSM server. If you have a Windows system then better set up a Linux VM inside it.
A bit too old but I will just put it here for someone who is searching for the same thing.
An exact instance of OpenStreetMap can be hosted locally by following the installation guide of OpenStreetMap.
Quoting from the Link:
"These instructions are designed for setting up The Rails Port for development and testing. If you want to deploy the software for your own project, then see the notes at the end.
You can install the software directly on your machine, which is the traditional and probably best-supported approach. However, there is an alternative which may be easier: Vagrant. This installs the software into a virtual machine, which makes it easier to get a consistent development environment and may avoid installation difficulties. For Vagrant instructions, see VAGRANT.md.
These instructions are based on Ubuntu 12.04 LTS, which is the platform used by the OSMF servers. The instructions also work, with only minor amendments, for all other current Ubuntu releases, Fedora and MacOSX
We don't recommend attempting to develop or deploy this software on Windows. If you need to use Windows, then try developing this software using Ubuntu in a virtual machine, or use Vagrant."

how do you build your appliances?

virtual machines hold great promise as a way to distribute hard to configure applications. i have been using jeos vmbuilder (and some bash scripts) to generate my appliances, but i'm looking for something more elegant.
in my case, i'm looking for a solution that will build a linux-based vm with configured versions of tomcat and mysql as a base. each future release would be a new war file and a sql update script. it'd be really nice if already deployed vms could self-update and test builds could be pushed to ec2.
in my brief search, i've found rpath rbuilder, turnkey linux,
vagrant up, suse studio, jeos vmbuilder, and vmware studio. rather than try all of these, i figure i'd ask what this community uses to build and distribute appliances...
I use pungi myself.

UNIX web development server for virtual machine PC in Windows

I'm planning to build Linux web development server in virtual machine environment on Windows Virtual PC. As I don't have much experience with installing and configuring Linux web servers, I wanted to ask for some advice:
What Linux distribution do you recommend for such server? I want the virtual server to look like real hosting environment.
Do any pre-configured virtual machines for web development exist out there?
Maybe some instruction and tips on configuring?
My requirements for the server are quite standard: latest versions of Apache, MySQL, PHP, probably Python and Postgre.
Thank you.
UPDATE: OK I think I'll go with Ubuntu Server for this.
You can probably go with Ubuntu. It is easy for a beginner and there is plently of documentation on how to install a LAMP stack and later you can move on to other distros.
If you are looking for pre-configured machines, then you can have a look at VMWare Appliances
For the distribution I would recommend Ubuntu - you can add all the server software you want from their repositories.
For a virtual machine I'd recommend Ubuntu Server Edition JeOS, as that won't have any un-needed software on it.
Debian Lenny - rock solid stability & the most package support
I'm sure you can find some
Use prefork-worker apache, MySQL 5/PHP 5, Postgres 8.4.
There are lots of prebuilt vmware images that you can use. You might also consider looking at something like Amazon EC2 for which there are lots of off the shelf images.
I would also suggest Ubuntu server as a base OS.
Incidentally there are other virtualisation options in case Virtual PC doesn't recognise those prebuilt image formats (I think those formats are more standardised and interoperable these days, but not sure)...e.g. there is vmware, and there is virtualbox.org
Does it need to be in Linux straight away? You can run (Apache et al) XAMPP locally and get it up and running in 5 minutes.