Wednesday, February 10, 2010

VMware PEX: Reliable vCenter Database - Operations, Management and Troubleshooting

I  was finally able to attend a VMware Partner Exchange (PEX) session that I was able to discuss.  This session was Reliable vCenter Database - Operations, Management and Troubleshooting (TECHBC0330).  This is being written as I'm in the session so it might be a little messy.

  • vCenter at startup takes data from the Windows registry, the vpxd.cfg parameter file, and the vCenter database (VCDB).
  • The executable name of the service is vpxd
  • vpxd -p and -P are important because they are used to reset the password
  • Almost everything you do in vCenter requires interaction with the database.  For example:
    • to start a vm - reads location in the db and send commands command
  • If vCenter fails - VMotion and DRS will fail but hosts and vm's will continue to run
  • vCenter won't start with corrupt or inaccesable database but it will run with an empty database
  • HA will be able to execute commands but won't have any "eyes" to see how to execute them
What workload that is running on the vCenter Server will determine how long your environment can be down.  For example a farm containing mainly servers that aren't moving around and won't be restarted could go hours/days without a vCenter Server.  On the other hand in environments with View, SRM, etc. the lack of a vCenter server will be noticed very quickly because machines won't be able to powered on.

Sizing and Location
  • You have the option of a physical or virtual machine and you can co-locate the VCDB or put the VCDB on a separate server.
  • Recommendations
    • vCenter and VCDB - virtual and co-location only to 40hosts or 400 vm's
    • if physical - must reatrt db's together, one could take down the other
    • The speaker recommended seperate virtual vCenter and db servers with an anti-affinity rule to disable both vm's from being on the same hosts. (I'm not sure how I feel about that in the case of power failures)
    • If the database server is virtual, you can take a db backup by cloning the vm
Protecting the vCenter and VCDB's
  • Can be protected many ways (too much information to fast to list) but methods included physical rebuild, VMware HA, vCenter Heartbeat, MSCS, and FT
Registry Components

  • The DSN Information is held in the registry: HKLM\Software\VMwareInc.\VMware Virtual Center\DB 
  • Four objects of value under that: 
    • 1 = DSN Name 
    • 2 = Login ID 
    • 3 = password (encrypted) 
    • 4 = driver being used
Database Structure Components
  • The VCDB is mainly performance information (over 80% of the database typically)
  • The other information is the configuration of accounts and security information for vCenter
  • All db tables have the prefix VPX_ - It is NOT recommended to use the tables directly!


pex said...

"All db tables have the prefix VPX_ - It is NOT recommended to use the tables directly!" - What is the basis for your opinion??

Aaron Delp said...

They stated this because they really don't want anyone manipulating the tables by hand themselves.