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 输出的日志消息。开启这个参数有助于减少故障排查的时间,不过需要注意,如果服务器负载过高,日志收集器可能会优先处理,导致其他进程被阻塞。正常情况下,这种情况不太可能发生,但建议保持该参数开启。

有VM问题需要协助?

免费试用VMware技术助理(已接Deepseek)!即时解答VM难题

→ 🤖VM技术助理

解析和诊断各类vCenter错误,ESXi日志,虚拟机vmware.log

→ 📕VMware日志分析器

图书推介 - 京东自营

24小时热门

还有更多VMware问题?

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

试试 📕VMware日志分析器 免费诊断各类vCenter错误,ESXi日志,虚拟机vmware.log等等

########

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

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

推荐更多

VMware vSphere:如何查询ESXi支持的网卡型号?
VMware快速入门

VMware vSphere:如何查询ESXi支持的网卡型号?

本文介绍了如何使用 博通兼容性指南 查询 VMware ESXi 支持的网卡型号,并说明了筛选版本、品牌、驱动和固件要求的步骤。通过提前进行 ESXi 网卡兼容性检查,可以避免因硬件不兼容导致的安装或运行问题,确保 vSphere 环境的稳定性和可靠性。

系统维护报告怎么写?核心结构与模板范文(附免费工具)
运维必备

系统维护报告怎么写?核心结构与模板范文(附免费工具)

本文为企业IT部门、系统运维团队、网络工程师以及政企信息化项目,提供了系统维护报告怎么写的详细指南,并附带多份系统维护报告范文。内容涵盖预防性维护、紧急维护、安全漏洞修复、网络调试与配置等场景,帮助读者快速掌握系统维护报告模板、写作规范、注意事项,提升系统稳定性与运维合规性。

项目交付报告怎么写?核心要素与注意事项 - 附赠3个常见范文模板
运维必备

项目交付报告怎么写?核心要素与注意事项 – 附赠3个常见范文模板

本文详细讲解了 项目交付报告怎么写,从核心要素、注意事项到实际范文,帮助企业和项目经理高效撰写规范报告。文章总结了项目交付报告的 6 个必备要素:项目概述、交付范围、时间线与执行过程、成果质量与验收、问题与改进、后续支持与行动计划。

同时,附赠 3 个最常用的项目交付报告范文模板,涵盖 IT项目交付报告、网络设备交付报告、信息系统交付报告(ERP/CRM/OA),每个模板均提供详细示例和实操内容,帮助快速生成高质量报告。

无论是撰写 项目交付报告范文、IT系统上线交付模板、ERP项目交付总结报告,还是查找 项目交付报告免费写法、模板下载,本文都提供了完整参考,助你节省时间、避免遗漏关键信息,实现专业交付。

Dell R760安装ESXi 8.0出现TPM告警的原因与解决思路
疑难杂症

Dell R760安装ESXi 8.0出现TPM告警的原因与解决思路

在 ESXi 8.0 安装部署过程中,部分用户会遇到 TPM 报警“TPM 2.0 device detected but a connection cannot be established”。该问题通常源于 TPM 算法设置不符合 ESXi 要求,例如仍使用 SHA1。通过检查硬件状态并参考 VMware 官方文档,将 TPM 算法调整为 SHA256 并重启主机,即可清除告警并恢复正常。

//madurird.com/4/9119499