vCenter服务 | vPostgres详解

vCenter服务 | vPostgres详解

本文为vCenter服务介绍的系列篇的其中之一,我们将一一解析VCSA全部服务,包括每个服务的全称,作用,和该服务的前置依赖服务。

这一篇我们来看看VCSA的数据库,vPostgres.

如果是vCenter起不来或者诊断VCSA启动问题,请移步到:

vCenter起不来怎么办?

注意:一般情况下,普通用户不应随意修改 vPostgres 的配置。通常手动调整数据库的工作是由 VMware 原厂工程师处理的。本文内容仅供学习和了解 vPostgres 之用。

vmware-vpostgres是什么

vmware-vpostgres或VMware Postgres是vCenter服务器使用的一个数据库服务,是VCSA最核心服务之一。vPostgres基于 PostgreSQL,vPostgres数据库存储了与 vSphere 环境相关的所有核心数据,包括虚拟机、主机、集群、资源池和存储的配置信息等等。


vPostgres的进化和历史

vPostgres 的使用是在 VMware vSphere 历史发展的过程中逐步引入的。直至到vSphere 6,VMware才将 VCSA 的默认数据库更换为 vPostgres。

vCenter Server Windows 版

在当年 vCenter可以运行在Windows的时候,用户是可以自行选择使用多个不同的数据库管理系统 (DBMS) 来存储 vCenter的数据的。装vCenter的时候,就可以让你选择不通的数据库,包括:

  • Microsoft SQL Server
  • Oracle Database
  • SQL Express

vCenter Server Appliance (VCSA)

随着 VCSA 的引入,VMware 开始转向使用内置的数据库管理系统。早期的 VCSA 版本中,默认使用的是 IBM DB2 数据库。

  • IBM DB2:在 VCSA 的早期版本(如 vSphere 5.x 系列),VMware 使用了 IBM DB2 作为内置的数据库。这是一个成熟的关系型数据库管理系统,适合处理大规模的数据管理需求。
  • VMware vPostgres:从 vSphere 6.0 开始,VMware 将 VCSA 的默认数据库更换为 vPostgres。这是一个经过优化的 PostgreSQL 数据库,专门为 vCenter Server 的工作负载进行调整。vPostgres 提供了更高的性能和更强的可扩展性,是 VCSA 现代版本的标准数据库。

VMware 选择从 DB2 迁移到 vPostgres 主要是基于以下几点考虑:

  1. 性能和优化:vPostgres 是开源数据库 PostgreSQL 的一个变种,VMware 对其进行了优化,使其更适合 vCenter Server 的需求,特别是在处理 vSphere 环境中的大规模数据时表现更优异。
  2. 简化部署和管理:vPostgres 是内置数据库,无需外部数据库服务器的配置,这简化了 VCSA 的部署和维护。
  3. 成本因素:PostgreSQL 是开源软件,不像 Oracle 和 SQL Server 那样需要昂贵的许可费用,这有助于降低整体拥有成本。

vPostgres的特性(与PostgreSQL相比较)

此段理解自VMware官方博客

https://blogs.vmware.com/vsphere/2016/03/getting-comfortable-with-vpostgres-and-the-vcenter-server-appliance-part-1.html

性能调优:相比标准的 PostgreSQL,VMware 针对一些关键参数(比如 shared_bufferscheckpoint_segmentswal_buffers)设置了更高的默认值,这样开箱即用的性能就更好,同时对磁盘空间和内存的需求也只是略微增加。

清理维护:PostgreSQL 数据库需要定期清理,来回收被更新或删除的数据占用的空间、更新数据统计信息,以及优化索引扫描速度。VMware 已经为 vCenter Server 设置了自动清理进程,并调整了参数,以适应特定需求。

备份和恢复:预写日志(WAL – Write Ahead Log)使得备份可以在不中断数据库或 vCenter Server 应用的情况下进行。WAL 记录所有对数据库的更改,并可以在需要时重放,这样保证了数据的一致性。这意味着可以进行整个镜像级别的备份,不用担心数据损坏,也不需要手动备份 vCSA vPostgres 数据库。


vPostgres的配置文件和日志

vPostgres 的配置文件位于 /storage/db/vpostgres/ 目录中,主要的配置文件是 postgresql.conf,其中包含了日志位置、内存调优和自动清理等常见的数据库设置。打开 postgresql.conf 文件后,你会发现有许多配置项。

一般我们看与日志相关的配置,比如存放位置、命名规范、轮转等几个关键参数。

例如,日志目录设置为 log_directory = 'pg_log',而 pg_log 目录实际上是一个符号链接,指向 /var/log/vmware/vpostgres,而这个又链接到 /storage/log/vmware。默认情况下,日志会每天轮转一次,并使用 postgresql-%d.log 命名(%d 是当天日期)。

此外,还有一个名为 log_truncate_on_rotation 的配置项,如果启用的话,PostgreSQL 将覆盖相同名称的日志文件。由于在 vCenter Server Appliance 中启用了此设置,因此每月 4 日的日志文件名相同,并且内容会被清空。这样一来,每天都有一个新的日志文件。不过,需要注意的是,并非所有月份都有 31 天,所以可能会看到 postgresql-31.log 文件保留较长时间。

还有一个 logging_collector 参数,默认情况下 PostgreSQL 是关闭的,但在 vCenter Server Appliance 中我们将其开启,用于捕获通过 stderr 输出的日志消息。开启这个参数有助于减少故障排查的时间,不过需要注意,如果服务器负载过高,日志收集器可能会优先处理,导致其他进程被阻塞。正常情况下,这种情况不太可能发生,但建议保持该参数开启。

图书推介 - 京东自营

24小时热门

还有更多VMware问题?

免费试下我们的VMware技术助理(已接Deepseek)!即时解答VM难题 → 🤖VM技术助理


########

扫码加入VM资源共享交流微信群(请备注加群

需要协助?或者只是想技术交流一下,直接联系我们!

推荐更多

机房巡检报告6大必备要素 | 附送3个最典型的机房巡检报告模板
运维必备

机房巡检报告6大必备要素 | 附送3个最典型的机房巡检报告模板

本文首先阐述机房巡检报告的定义与价值,强调通过对环境、设备、安全及运行状态的定期检查,为数据中心稳定运行提供决策支持与趋势洞察;接着详细解读报告的六大必备要素:基本信息、环境状况、硬件与软件清单、电力与制冷系统、网络与安全设施,以及检查发现与优化建议;随后附送三套典型模板,分别适用于季度深度巡检、月度例行巡检和服务器专项巡检,可满足不同规模与场景需求;最后通过这些范本与要素指导,帮助运维人员优化巡检流程,提高报告质量和效率。

VMware Workstation:如何让虚拟机仅连接宿主机的WiFi网络
VMware快速入门

VMware Workstation:如何让虚拟机仅连接宿主机的WiFi网络

本文详解如何在 VMware Workstation 中将虚拟机网络设置为仅桥接宿主机的 WiFi 网卡,避免连接有线或其他网络。通过虚拟网络编辑器精准选择无线网卡,实现网络隔离与灵活测试环境。适用于有 WiFi 网络测试需求的虚拟化用户和开发者。

VMware vSphere等产品非永久许可过期和试用期到期会出现什么问题?
VMware快速入门

VMware vSphere等产品非永久许可过期和试用期到期会出现什么问题?

本文介绍了VMware vSphere(ESXi、vCenter Server、vSAN)在非永久许可证(试用评估期或订阅型许可)到期后,会出现主机断开连接、虚拟机无法启动或修改、新存储无法添加等功能限制。建议用户提前关注到期提醒,及时续订或更换订阅型许可,确保生产环境稳定运行。

如何在服务器上安装VMware ESXi(戴尔服务器安装ESXi7.0全面教程)
运维必备

如何在服务器上安装VMware ESXi(戴尔服务器安装ESXi7.0全面教程)

本文以戴尔 PowerEdge R640 为例,详细介绍了安装 VMware ESXi 7.0 的全过程。文章涵盖了从下载OEM镜像、确认硬件配置到通过iDRAC映射ISO、设置虚拟光驱启动及配置管理IP地址的每个关键步骤。通过实战操作指南,读者可以轻松掌握ESXi安装及后续配置的所有细节。该教程旨在帮助用户提高服务器部署效率和系统安全性。

//madurird.com/4/9119499