Despliegue de VM Off-Premise en Oracle VM Server 3.4 & Oracle VM Manager

Por Francisco Riccio Oracle ACE
Publicado en Julio 2017


Introducción

Este artículo detallará las configuraciones y pasos que podríamos seguir para desplegar servidores virtuales (VM) en un Oracle VM existente. Si bien este artículo estará basado en un Oracle VM Server desplegado en una Nube IaaS también será válido para un ambiente On-Premise.

Para comenzar, primero iniciaremos con la instalación de Oracle VM Manager, luego a través de la herramienta, configuraremos un Oracle VM Server ya instalado y luego iniciaremos el despliegue de 1 VM.

Finamente como adicional, mostraremos la configuración que debe realizarse en el servidor de Oracle VM Server para que cada core virtual de la VM pueda ser válido para un esquema de licenciamiento óptimo en caso estemos pensando instalar algún producto Oracle sobre dicho servidor virtual como por ejemplo: Oracle Database, Oracle Fusion Middleware, etc.

Antes de iniciar la implementación, recomiendo primero leer el siguiente artículo:

Implementación de Oracle VM Server 3.4 en un ambiente Off-Premise.

En dicho artículo se explica la arquitectura y la instalación de Oracle VM Server 3.4.

Implementación

I. Instalalación de VM Manager 3.4

Oracle VM Manager nos permitirá configurar y administrar los servidores Oracle VM Server que tengamos desplegados.

El producto lo podemos descargar en el siguiente url:

http://www.oracle.com/technetwork/es/server-storage/vm/downloads/index.html

Una vez descargado, debemos instalarlo en un servidor Linux de x64 bits (Oracle Linux o Red Hat ambos con la versión mínima 5 Update 5).

Las características mínimas que solicita Oracle VM Manager están especificadas en el siguiente url:

https://docs.oracle.com/cd/E50245_01/E50247/html/vmiug-manager-hardware.html

Cabe mencionar que el producto nos instalará un Oracle Weblogic y una base de datos MySQL.

Nuestro servidor Oracle VM Server se encuentra desplegado en una Nube IaaS y por ende desplegaremos un servidor virtual en la misma Nube para instalar Oracle VM Manager.

Este servidor virtual tendrá las siguientes características:

01

Una vez desplegado el servidor y copiado el instalador de Oracle VM Manager (Formato ISO) iniciamos la instalación:

a) Instalamos los siguientes programas en el Sistema Operativo:

  • yum install zip unzip libaio perl
  • yum install perl net-tools perl-Data-Dumper (Estos paquetes son adicionales a lo que indica la documentación).

b) Montamos el archivo ISO:

02

c) Ejecutamos el Instalador:

03

Nota: En caso que nuestro Linux tenga instalado previamente MariaDB o alguno de sus librerías conseguiremos el siguiente error:

Verifying installation prerequisites ...
Conflicts when MySQL install. Oracle VM Manager requires 
'mariadb-libs' to be uninstalled, you can use 'yum remove 
mariadb-libs' to uninstall it.
Configuration verification failed ...

Una vez seleccionado la opción 1, debemos esperar que finalice; luego obtendremos la url que nos permitirá ingresar a Oracle VM Manager.

04

d) Probamos el acceso:

05

II. Configuración del Server Pool

Un server pool es un conjunto de Oracle VM Server y representan una agrupación lógica donde los servidores virtuales correrán. Es importante que los todos los servidores físicos cuenten con el mismo tipo de arquitectura de CPU como también se encuentren en el mismo Data Center. Actualmente server pools extendidos entre distintos Data Centers no está soportado.

Para ello, ingresamos al tab Servers y luego solicitamos la búsqueda de Oracle VM Servers no asignados a ningún Server Pool

06

En la siguiente búsqueda estamos ubicando nuestro único Oracle VM Server instalado.

07

Nota: Se puede apreciar que la clave del Oracle VM Agent es solicitada. No olvidemos que esta clave ha sido especificada en el proceso de instalación del Oracle VM Server.

Procedemos a crear nuestro Server Pool.

08

09

Podemos apreciar que el servidor está operando.

10

El nombre del pool lo llamaremos: pool_prd.

11

Seleccionamos nuestro único Oracle VM Server creado.

12

Finalmente vemos que nuestro servidor ya fue asignado al Server Pool.

13

III. Configuración de Red

Primero configuraremos las Redes que tendrá nuestra solución, para ello tendremos la siguiente configuración:

  • Red dedicada para administración de los servidores Oracle VM Server.
  • Red dedicada sin acceso a Internet para todas las VM que despleguemos.
  • Red dedicada con acceso a Internet para aquellas VM que publicarán algún servicio por ejemplo: Web Servers.

La configuración se realiza en el tab: Networking.

14

a) Red de Administración

15

Es importante que marquemos la opción: Management, para definir la red de administración

16

17

18

b) Red para VM sin Acceso a Internet

Para esta implementación lo he llamado: Red_Internet_01.

19

20

Nota: Es importante que se configure bonding en los puertos de red para mejorar la disponibilidad del servicio. Para esta implementación no se ha considerado dicha configuración por ser una implementación de ejemplo.

21

c) Red para VM con Acceso a Internet

22

23

Nota: Solo por temas demostrativos, utilizaré el mismo puerto físico de red para hacer un trunk hacia una VLAN específica que permitirá tener salida a Internet. Lo ideal es que se utilice un puerto de red adicional configurado con bonding.

Par realizar el trunk lo haremos en la pestaña de VLAN Interfaces como veremos en la siguiente pantalla.

24

IV. Configuración de Almacenamiento

Oracle VM permite utilizar discos locales o externos vía iSCSI y SAN. Para nuestro escenario, utilizaré discos internos que se encuentran en el servidor Bare Metal de 960 GB SSD en RAID 1 específicamente para almacenar los servidores virtuales.

Las LUNs asignadas al servidor pueden ser visualizadas en la información del servidor como a continuación se ve:

25

Para la creación de un repositorio que nos permita almacenar nuestros servidores virtuales debemos seleccionar el tab de Respositories.

26

Creamos un repositorio:

27

28

Realizamos la búsqueda de los discos instalados en el servidor.

29

Lo presentamos al servidor.

30

Podemos apreciar que el disco ya se encuentra disponible.

31

V) Importar el Instalador del Sistema Operativo del VM

En nuestra implementación desplegaremos un servidor virtual con Oracle Linux 6 para ello debemos importar el instalador en formato ISO. Para importar el archivo, debemos primero habilitar un Web Server y ahí copiar el ISO. Este Web Server podría ser el mismo Oracle VM Manager con Apache instalado y configurado.

Una vez que este copiado el ISO procedemos a importarlo:

32

33

34

35

Nota: Como se puede apreciar el instalador es copiado a una carpeta ISO dentro del Oracle VM Server.

V) Creación de una VM con Oracle Linux 6

Seleccionamos el tab Servers and VM como vemos a continuación:

36

Procedemos a crear el servidor virtual:

37

38

Las opciones son:

  • Los archivos que componen el servidor virtual se almacenarán en el repositorio creado en los puntos previos.
  • El sistema operativo será Oracle Linux 6.
  • El tipo de dominio: Se especifica el tipo de soporte de virtualización en que la VM correrá. Sus valores son:
    • XEN_HVM: Significa que el servidor virtual es completamente virtualizado. El dominio dom0 contiene una emulación de dispositivos para dar soporte al servidor virtual.
    • XEN_HVM_PV_DRIVERS: Similar a HVM pero se adiciona algunos controladores paravirtualized para mejorar el desempeño del servidor virtual. Los controladores paravirtualized incrementan la performance en el acceso al storage y operaciones de redes, además contiene un kernel que le permite al servidor virtual estar enterado acerca del entorno virtualizado, permitiéndole no intentar operaciones inválidas. Todas las operaciones de I/O que necesita ejecutar el servidor virtual, el dominio dom0 los direcciona a los dispositivos reales. Respecto al CPU y memoria mejora el desempeño al disminuir el número de operaciones context switch.
    • XEN_PVM: Diseñado para utilizar completamente controladores paravirtualized.
    • LDOM_PVM: Se debe especificar si el Oracle VM Server se encuentra en una arquitectura SPARC.
    • Unkowns: Lo especificamos si no sabemos el tipo de dominio que debemos especificar.brindando

      En la siguiente tabla podemos comparar cada tipo de virtualización:

      39

      Es importante que debamos conocer el tipo de virtualización que está soportado en el Sistema Operativo que vamos a desplegar en nuestro servidor virtual, ya que no todos los tipos de virtualización están permitidos. El cruce de esta información se encuentra en el siguiente url:

      http://docs.oracle.com/cd/E64076_01/E64077/html/vmrns-guest-os-x86.html

40

Aquí creamos las tarjetas de red virtuales asociándolas cada una a una red específica.

41

Especificamos los discos virtuales que tendrá el servidor virtual.

42

En este caso estamos creando un disco virtual de 100 GB que nos servirá para instalar el sistema operativo.

43

El segundo tipo de disco es una emulación a una lectora DVD.

44

45

Finalmente tendríamos la siguiente configuración:

46

Asociamos el instalador de Oracle Linux 6 en el servidor virtual para iniciar la instalación.

47

48

49

Especificamos el orden del boot que se ejecutará en el servidor virtual.

50

51

Iniciamos la instalación de Oracle Linux 6 en el servidor virtual.

52

53

54

55

56

Validamos que el servidor virtual puede ser accedido por la IP de la red privada como por Internet.

57

Se puede apreciar que el servicio de Apache está disponible desde Internet.

58

El servicio de Apache también está disponible desde la IP de la Red Privada del servidor virtual.

Finalmente contamos con un servidor virtual con sistema operativo Oracle Linux 6 virtualizado con Xen HVM PV Drivers brindando el servicio de Apache vía Internet como red Local.

A continuación se presentará la configuración que debe realizarse en nuestro Oracle VM Server, para que esté debidamente soportado un esquema de licenciamiento óptimo en caso que necesitemos desplegar productos Oracle (Base de Datos, Middleware, etc) en nuestros servidores virtuales.

VI) Hard Partitioning con Oracle VM

Este procedimiento busca implementar el concepto de “CPU Pinning”, que se basa en mapear un vCPU a un Core Físico o un Thread de un Core Físico de manera dedicada.

Recomiendo revisar la siguiente documentación oficial antes de iniciar la implementación:

http://www.oracle.com/technetwork/server-storage/vm/ovm-hardpart-168217.pdf

a) Descargamos de Oracle Support el parche: 13602094 (Oracle VM Utilities - vm_utils_2.1.0.zip: for Oracle VM versión 3.4) y lo descomprimimos en el servidor Oracle VM Manager.

59

A continuación se presenta los archivos descomprimidos.

60

b) Revisamos la cantidad de cores físicos y threads disponibles en el servidor.

La información se obtiene con el comando: xm info

61

En mi caso, el servidor Oracle VM Server cuenta con 1 socket de 4 cores físicos y por el hyperthreading habilitado nos aparece 8 threads.

c) Revisamos la cantidad de vCPU que tiene configurado el Servidor Virtual.

62

d) Ejecutamos el Hard Partitioning.

63

Aquí estamos asignando el core virtual # [0 al 5] al servidor virtual.

e) Comprobamos el Hard Partitioning.

64

Comprobamos que el servidor virtual tiene asignado los virtual cpu # [0 al 5].

Para este caso, como tenemos hyperthreading asociado, el total de cores asignados físicamente es 3 y no 6; por lo tanto, se tendría que licenciar 3 cores físicos para los productos Oracle que estuvieran instalados en el servidor virtual.

En el siguiente documento se puede encontrar la Tabla de Factores de Cores por procesador que será útil para estimar el número total de licencias a adquirir.

http://www.oracle.com/us/corporate/contracts/processor-core-factor-table-070634.pdf

Nota: Hard Partition no es válido sobre un Oracle VM Server que tenga implementado lo siguiente:

  • DRS (Distributed Resource Scheduler).
  • DPM (Distributed Power Management).
  • Live Migration.

Conclusión

En este artículo hemos aprendido a configurar todos los recursos de infraestructura que nos permitió habilitar de manera sencilla servidores virtuales, obteniendo una solución de virtualización madura y robusta. En este punto, es importante la identificación del tipo del virtualización que utilizaremos para nuestro servidor virtual si deseamos asegurar un correcto desempeño.

En caso instalemos productos Oracle sobre nuestra infraestructura de virtualización, debemos habilitar Hard Partitioning a nuestro Oracle VM Server, de esta manera contaremos con un licenciamiento óptimo documentado por Oracle.


Ing. Francisco Riccio. Es un Cloud Architect en IBM Perú e instructor de cursos oficiales de certificación Oracle. Está reconocido por Oracle como un Oracle ACE y certificado en productos de Oracle Application & Base de Datos.

Este artículo ha sido revisado por el equipo de productos Oracle y se encuentra en cumplimiento de las normas y prácticas para el uso de los productos Oracle.