VMware vCenter supports DB2,Oracle or MS SQL server as backend database, the built-in database for vCenter in Windows is SQL Server 2008 express,which has limits on disk space and memory, it is not suitable for enterprise. For enterprise deployment, it is recommended to use proper database engine, such as Oracle 11g R2
Install Oracle Database
Select a compatible version of Oracle listed in VMware website.
http://www.vmware.com/resources/compatibility/sim/interop_matrix.php
The Versions used in this test:
- vCentre 5.0.0 build 623373
- Oracle 11g R2 11.2.0.3.0
Setup Oracle database for vCenter
- Create an Oracle SQL login account for vCenter
Estimate vCentre database tablespace size requirement.
vCenter has a tool to estimate the size.
vCenter->administration->Server setting->statistics
for example, to keep data of 500 VMs for 1 year needs ~5GB storage
old data can be automatically purged by setting up retention policy
vCenter->administration->Server setting->database retention policy
Extract from “vSphere Installation and Setup” document
#1 Log in to a SQL*Plus session with the system account.#2 Run the following SQL command to create a vCenter Server database user with the correct permissions.#The script is located in the vCenter Server {installation media}/vcenter/dbschema/DB_and_schema_creation_scripts_oracle.txt file.#In this example, the user name is VPXADMIN.CREATE USER "VPXADMIN" PROFILE "DEFAULT" IDENTIFIED BY "oracle" DEFAULT TABLESPACE"VPX" ACCOUNT UNLOCK;grant connect to VPXADMIN;grant resource to VPXADMIN;grant create view to VPXADMIN;grant create sequence to VPXADMIN;grant create table to VPXADMIN;grant create materialized view to VPXADMIN;grant execute on dbms_lock to VPXADMIN;grant execute on dbms_job to VPXADMIN;grant select on dba_tablespaces to VPXADMIN;grant select on dba_temp_files to VPXADMIN;grant select on dba_data_files to VPXADMIN;grant unlimited tablespace to VPXADMIN;#By default, the RESOURCE role has the CREATE PROCEDURE, CREATE TABLE, and CREATE#SEQUENCE privileges assigned. If the RESOURCE role lacks these privileges, grant them to the vCenter#Server database user.#NOTE Instead of granting unlimited tablespace, you can set a specific tablespace quota. The#recommended quota is unlimited with a minimum of at least 500MB. To set an unlimited quota, use the#following command.#alter user "VPXADMIN" quota unlimited on "VPX";#If you set a limited quota, monitor the remaining available tablespace to avoid the following error.#ORA-01536: space quota exceeded for tablespace '<tablespace>'#3 (Optional) After you have successfully installed vCenter Server with the Oracle database, you can revoke#the following privileges.revoke select on dba_tablespaces from VPXADMIN;revoke select on dba_temp_files from VPXADMIN;revoke select on dba_data_files from VPXADMIN;
Prepare Windows server for vCenter
- Install Oracle ODBC client
Download both basic and ODBC client from Oracle website.
instantclient-basic-windows.x64-11.2.0.3.0.zip
instantclient-odbc-windows.x64-11.2.0.3.0.zip
#unzip instantclient-basic-windows.x64-11.2.0.3.0.zip to:C:\Program Files\Oracle\instantclient_11_2unzip instantclient-odbc-windows.x64-11.2.0.3.0.zip to the same directory as basic installant clientrun odbc_install.exe in command lineC:\Program Files\Oracle\instantclient_11_2>odbc_install.exeOracle ODBC Driver is installed successfully.mkdir C:\Program Files\Oracle\instantclient_11_2\network\admin#copy tnsnames.ora on Oracle server to the directory#Add new Windows system variable "ORACLE_HOME=C:\Program Files\Oracle\instantclient_11_2"#system variable take effects immediately, open a new command line to check this:C:\ >echo %ORACLE_HOME%C:\Program Files\Oracle\instantclient_11_2
open "odbc source" in administrative tools, create "system DSN", select oracle driver, type in service name defined in tnsnames.ora,username etc
Make sure "test connection" result is ok
Install vCenter
Follow the installation Wizard to install vCenter, you may receive warning about the Oracle client need to be updated, select ok to continue
Update vCenter ojdbc client
the default JDBC client in vCenter maybe old, (you can check its version by renamed ojdbc5.jar to ojdbc5.zip and open it to check meta-inf file)
cd /d "C:\Program Files\VMware\Infrastructure\tomcat\lib\"
#backup original filecopy ojdbc5.jar ojdbc5.jar.orig#overwrite with new ojdbc5.jar from instant clientcopy C:\Program Files\Oracle\instantclient_11_2\ojdbc5.jar ojdbc5.jar