2 Creating a Virtual Development Environment

A virtual development environment (VDE) is an application development environment (ADE) set up on a virtual machine. By using virtual machines, you can work with multiple Operating Systems (OS) without the need for a separate hardware for each OS. Oracle Solaris offers multiple options for setting up and configuring virtual environments. This document states how you can choose, set up, and configure the virtual environment. Because a virtual machine acts like a physical machine for the purposes of hosting an ADE, the process for setting up the ADE is the same for virtual or physical machines. This chapter provides guidelines for choosing, setting up, and configuring a virtual environment to host your ADE.

Virtualizing Your Development Environment

Virtualizing your development environment through Oracle Solaris has multiple benefits:
  • Saving downtime – A VDE helps you reduce downtime by enabling you to develop your application in a virtual machine (VM) that is backed up and easily restored. A VM that is backed up on one system can be restored on a different system.
  • Protecting hardware – Because VMs are virtual, developing applications on VMs cannot damage your hardware, which enables you to perform risky procedures safely. You can back up and restore easily without any damage to the underlying physical machine.
  • Simulating production environment – Setting up a virtual development environment mimicking your production environment helps ensure that testing and developing your applications will produce useful results.
  • Security – Strong security features mean you can use your VDE without compromising on security.
  • Multiple OS versions – Virtualizing the development environment allows you to work with different versions of operating systems on a single physical machine.

Choosing a Virtualization Option

Before you can install your ADE, you need to plan and set up the virtualized environment that will host the ADE. One important consideration is the balance between isolation and flexibility.

The following table describes the virtualization models available for Oracle Solaris.

Table 2-1 Virtualization Models Available for Oracle Solaris

Virtualization Model Virtualization Technology Description
Operating System Virtualization
  • Oracle Solaris Zones
  • Oracle Solaris Kernel Zones
Each environment contains what appears to be a private copy of the OS in a container. The OS virtualization model provides near-native performance and flexibility, and has a much smaller disk, RAM, and CPU footprint than either virtual machines or physical machine.
Virtual Machines
  • Oracle VM Server for SPARC systems
  • Oracle VM Server for x86 systems
  • Oracle VM Virtual Box
  • Oracle Linux Virtualization Manager
By using virtual machines, you can run multiple OS instances with a single set of hardware resources. Each virtual machine that you create runs its own OS. A software or firmware hypervisor creates the illusion that each guest OS instance is running on its own system. Although virtual machines provide less resource flexibility than a physical machine that uses OS virtualization, they provide more isolation.
Physical Domains Oracle SPARC Enterprise M-Series servers Hardware partitions provide physical separation between the running OS and its separate set of resources and power. Because this model does not use a hypervisor, it provides bare-metal performance. This virtualization model provides the most isolation but it is much less flexible with resource configuration than either the virtual machine or OS virtualization model.

The following diagrams illustrate some of the virtualization models described in the table.

Figure 2-1 OS Virtualization by Using Oracle Solaris Kernel Zones



Figure 2-2 Using Virtual Machines on an Oracle SPARC System



Figure 2-3 Using Virtual Machines on an Oracle x86 System



Choosing a Virtualization Technology

Oracle Solaris provides virtualization technologies that you can use in various virtualization models. This section focuses on compute virtualization relevant to creating a virtual development environment. For more information about how virtual environments are managed in a network, see Introduction to Oracle Solaris 11.4 Virtual Environments.

Table 2-2 Using Oracle Solaris Virtualization Technology in Your Environment

Virtualization Technology Description Sample Usage Scenarios Using the Technology
Oracle Solaris Zones A virtualized operating system environment created within a single instance of the Oracle Solaris operating system.
  • Provide better resource management and control by installing similar applications in a common zone.
  • Balance workloads by logically separating the system.
  • Test migration scenarios for applications.
Oracle Solaris Kernel Zones A zone with its own kernel and OS installation separate from the global zone.
  • Install multiple Oracle Solaris OS versions on a single physical machine.
  • Test migration scenarios for applications.
  • Require enhanced security and more isolation.
Oracle VM Server for SPARC system Hypervisor-based virtualization for SPARC servers. Deploy and configure different versions of the Oracle Solaris OS on SPARC T-Series and SPARC MSeries servers. Oracle VM Server for SPARC
Oracle VM Server for x86 system (Xen) Hypervisor-based virtualization for x86 based servers. Deploy and configure x86 system with heterogeneous operating systems, including the Oracle Solaris 10 OS and the Oracle Solaris 11 as OS guests. Oracle VM Server for x86 and Oracle VM Manager
Oracle VM VirtualBox Hosted workstation and server virtualization for x86 based systems.

Develop and test software on different OS platforms.

For example, you can install Oracle Solaris and Oracle Linux on a Windows system.

Oracle VM VirtualBox
Physical domains (Also called as hardware partitions) Electrical isolation into domains on Oracle SPARC M-Series servers. Create multiple physical server entities that work independently of each other on a single hardware. Oracle SPARC M-Series Servers
Oracle Linux Virtualization Manager Server virtualization management platform for x86 based servers. Deploy, configure, monitor, and manage an environment with enterprise-grade performance and support from Oracle. Oracle Linux Virtualization Manager

Virtualization Tools

The following tools simplify and speed up installing and managing your virtual environment:

  • Oracle Solaris VM Templates – Facilitate fast installation of Oracle Solaris virtual environments. The following types of Oracle Solaris VM templates are available:
    • Oracle VM Templates for SPARC system
    • Oracle VM Templates for x86 system
    • Oracle VM Templates for Oracle VM VirtualBox

For more information, see the Oracle Solaris VM Templates product page.