欢迎使用 Vertica Analytics Platform 支持的平台。本文描述了 Vertica 12.0.x 各个组件支持的平台。
支持的平台
- 1: Vertica 服务器和管理控制台
- 2: 客户端驱动程序支持
- 2.1: Perl 驱动程序要求
- 2.2: Python 驱动程序要求
- 3: Vertica SDK
- 4: FIPS 140-2 支持的平台
- 5: Eon 内部部署存储
- 6: 用于 Amazon Web Services 的 Vertica
- 7: 容器化环境
- 8: 虚拟化环境
- 9: Hadoop 集成
- 10: Apache Kafka 集成
- 11: Apache Spark 集成
- 12: Linux 卷管理器 (LVM)
- 13: 支持终止声明
1 - Vertica 服务器和管理控制台
操作系统和版本
Micro Focus 支持在基于 x86_x64 架构的以下 64 位操作系统和版本上运行12.0.x版本的 Vertica Analytic Database。
通常,Micro Focus 为 Vertica Analytic Database 提供支持,而不是为其主机操作系统、硬件或其他环境元素提供支持。但是,Micro Focus 努力确保其客户在 x86_64 架构的以下最新版本常用操作系统上实现成功。
某个主要操作系统版本下的多个次要版本都支持使用时,Micro Focus 建议在受支持版本列表中列出的最新次要版本上运行 Vertica。例如,如果在 Red Hat Enterprise Linux 7.x 版本上运行 Vertica,Micro Focus 建议您升级到或运行支持的最新 RHEL 7.x 版本。
推荐的存储格式类型
根据部署需求选择存储格式类型。Vertica 建议使用以下存储格式类型(如适用):
-
ext3
-
ext4
-
NFS(用于备份)
-
XFS
-
在 Eon 模式下运行时用于公共存储和相关备份任务的 Amazon S3 标准
注意
就 Vertica I/O 模式而言,ext4 文件系统的速度要比 ext3 快得多。备份和临时目录位置的存储格式类型必须支持 fcntl lockf (POSIX) 文件锁定。
您可以通过查询系统表 STORAGE_USAGE 查看节点上正在使用的文件系统。
Vertica 用户已成功部署其他文件系统,Vertica 无法保证或预期达到所有存储格式类型的结果。在某些支持案例中,我们可能会要求您迁移到建议存储格式类型,以帮助排除故障或解决问题。
Vertica Analytic Database 在所有受支持的操作系统上均支持 Linux Volume Manager (LVM)。您的 LVM 版本必须为 2.02.66 或更高版本,且必须包括 device-mapper 版本 1.02.48 或更高版本。有关要求和限制的信息,请参阅 Vertica 对 LVM 的支持部分。
网络地址系列支持
Vertica 服务器支持用于内部和外部通信的 IPv4 和 IPv6 网络地址。默认情况下,数据库群集使用 IPv4 进行内部通信。在安装 Vertica 和创建群集时,您可以选择要求群集使用 IPv6 进行内部通信。
Vertica 支持使用 IPv6 来识别数据库群集中的节点。但是,AWS DNS 解析不支持 IPv6。要在 AWS 中拥有使用 IPv6 的群集,请在安装 Vertica 和形成群集时使用 IPv6 IP 地址,而不是主机名。
目前,Vertica 不支持在 Google Cloud Platform 或 Microsoft Azure 上使用 IPv6。
MC 目前不支持 IPv6。如果您的 Vertica 数据库使用 IPv6 进行内部通信,则 MC 将无法连接或管理数据库。MC 必须使用自身的内部网络地址与数据库群集通信。
管理控制台支持的浏览器
以下 Web 浏览器都支持 Vertica Analytic Database 12.0.x 管理控制台:
- Chrome
- Firefox
- Microsoft Edge
- Internet Explorer 11
Vertica 服务器与管理控制台兼容性
管理控制台 (MC) 12.0.x 与所有支持的 Vertica 服务器版本兼容。
2 - 客户端驱动程序支持
Vertica 可提供 JDBC、ODBC、OLE DB、Python、vsql 和 ADO.NET 客户端驱动程序。从 Vertica 客户端驱动程序下载最新驱动程序。以下平台的驱动程序可供选择:
要查看驱动程序与服务器版本兼容性列表,请参阅客户端驱动程序和服务器版本兼容性。
ADO.NET 和 OLE DB 驱动程序
ADO.NET 和 OLE DB 驱动程序支持在以下平台上使用:
JDBC 驱动程序
所有非 FIPS JDBC 驱动程序都支持在任何符合 Java 5 或更高版本标准的平台上使用(Java 5 为最低版本)。
ODBC 驱动程序
Vertica Analytic Database 同时提供了 32 位和 64 位 ODBC 驱动程序。Vertica 12.0.x ODBC 驱动程序支持在以下平台上使用:
vsql 客户端
所有客户端包都包括 Vertica vsql 客户端。无法单独下载。vsql 客户端支持在以下平台上使用:
2.1 - Perl 驱动程序要求
要将 Perl 与 Vertica 配合使用,必须在安装 Perl 的计算机上安装 Perl 驱动程序模块(DBI 和 DBD::ODBC)以及 Vertica ODBC 驱动程序。下表列出了 Vertica 12.0.x 支持的 Perl 版本。
更高版本的 Perl(5.10 及以上版本)、DBI 和 DBD::ODBC 可能也适用。
2.2 - Python 驱动程序要求
要将 Perl 与 Vertica 配合使用,必须安装:
-
vertica-python 客户端。
-
pyodbc 模块。
有关详细信息,请参阅安装 Python 客户端驱动程序。
下表列出了 Python、Python 驱动程序和 ODBC 的兼容版本。
3 - Vertica SDK
此部分详细说明运行使用 Vertica SDK 开发的用户定义扩展 (UDx) 时的软件要求。
C++ SDK
Vertica 群集在运行用 C++ 编写的 UDx 方面并无任何特殊要求。
Java SDK
Vertica 群集必须安装了 Java 运行时才能运行使用 Vertica Java SDK 开发的 UDx。经 Vertica 测试,以下 Java Runtime Environment (JRE) 可与此版本 Vertica Java SDK 配合使用:
-
Oracle Java Platform Standard Edition 6(版本号 1.6)
-
Oracle Java Platform Standard Edition 7(版本号 1.7)
-
Oracle Java Platform Standard Edition 8(版本号 1.8)
-
OpenJDK 6(版本号 1.6)
-
OpenJDK 7(版本号 1.7)
-
OpenJDK 8(版本号 1.8)
Python SDK
Vertica Python SDK 不需要任何额外配置或头文件。
R 语言包
Vertica R 语言包提供了 3.5 版本 R 运行时及关联的库来与 Vertica 交互。请在 Vertica 服务器上安装 R 语言包。
4 - FIPS 140-2 支持的平台
Vertica 使用经过认证的 OpenSSL FIPS 140-2 加密模块来满足美国国家标准与技术研究所 (NIST) 针对美国或其他国家/地区的联邦机构颁布的安全标准。Vertica 与系统上的 OpenSSL 版本链接,在运行时执行加密操作。当在 FIPS 模式下运行时,Vertica 依靠操作系统的 FIPS 配置来确保环境中存在经过 FIPS 认证的 OpenSSL 版本。
在以下操作系统上,使用 OpenSSL 1.1.1k 在 FIPS 模式下对 Vertica 进行了测试:
-
Red Hat Enterprise Linux 8.5
-
SUSE Linux Enterprise Server 15
在符合 FIPS 且等于或高于测试版本的操作系统版本上,Vertica 支持 FIPS 模式。例如,Vertica 仅支持符合 FIPS 的 Red Hat Enterprise Linux 8.1 及更高版本。Vertica 不支持在 7.x 版本 Red Hat Enterprise Linux 或 CentOS 上使用 FIPS 模式。
启用 FIPS 的 Vertica 需要满足以下条件:
-
由经批准的证书颁发机构签名的用户生成的证书。
-
TLS 1.2,以支持启用 FIPS 的系统的服务器-客户端连接。
支持的驱动程序
为确保 FIPS 合规性,Vertica 支持以下客户端驱动程序:
-
vsql
-
ODBC
-
JDBC
重要
管理控制台不支持启用 FIPS。有关详细信息,请参阅美国联邦信息处理标准。
5 - Eon 内部部署存储
Vertica 支持以下存储平台,以实现在内部部署上运行 Vertica Eon 模式。
Pure Storage FlashBlade
Vertica 支持基于 Pure Storage FlashBlade 3.0.0 及更高版本的公共存储。有关详细信息,请参阅使用 FlashBlade 安装 Eon 模式内部部署数据库。
Vertica 不支持使用 Vertica 管理控制台或 admintools 管理位于 Pure Storage 硬件上的数据。
有关配置 Pure Storage 的信息,请参阅 support.purestorage.com。
MinIO
Vertica 支持基于 MinIO 2018-12-27T18:33:08Z 及更高版本的公共存储。有关详细信息,请参阅在 MinIO 上使用公共存储安装 Eon 模式内部部署数据库。
当心
在 Eon 模式下,Vertica 依靠公共存储所使用的存储平台来管理数据安全性和完整性。对于生产用途,请始终在分布式模式群集中使用 MinIO。此模式可提供高可用性和数据完整性保护。有关在分布式模式下配置 MinIO 的说明,请参阅《分布式 MinIO 快速入门指南》。Vertica 不支持使用 Vertica 管理控制台或 admintools 管理位于 MinIO 上的数据。
有关 MinIO 的详细信息,请参阅 MinIO 网站。
HDFS
通过 WebHDFS 访问时,Vertica 支持基于 HDFS 的公共存储。有关详细信息,请参阅在 HDFS 上使用公共存储安装 Eon 模式内部部署数据库。
对于 HDFS,Vertica 不支持:
-
HDFS 的 MapR 发行版,通过 NFS 挂载点(而不是通过 WebHDFS)访问。
-
使用 Vertica 管理控制台或 admintools 管理位于 HDFS 上的数据。
-
Eon 模式下的 Cloudera (CDH) 版本 5.x。
-
适用于基于 HDFS 的公共存储的 copycluster vbr 备份和还原实用程序。
6 - 用于 Amazon Web Services 的 Vertica
有关在 Amazon Web Services (AWS) 上部署 Vertica 的信息,请参阅 使用用于云的 vertica 中的 用于 Amazon Web Services 的 Vertica。
AWS 实例类型
Vertica 支持一系列 AWS 实例类型,以在 AWS 上部署群集主机或 MC 主机。有关支持的实例类型的完整列表,请参阅 支持的 AWS 实例类型。
Amazon Machine Image
Vertica 提供经过测试和预配置的 Amazon Machine Image (AMI),以在 AWS 上部署群集主机或 MC 主机。Vertica AMI 允许用户使用官方支持的 Vertica Analytic Database for AWS 版本自行配置存储。
有关 Vertica AMI 中当前可用的操作系统列表,请参阅 适用于 AWS 的 Vertica AMI 操作系统。
使用 Vertica AMI 时,请考虑以下几点:
-
Vertica 的 AMI 开发计划与产品发布计划稍有不同。Vertica AMI 版本将在 Vertica 软件的初始版本发布后推出。
-
每个 Vertica AMI 都预配置了默认资源限制设置。
-
Amazon 不支持在 Amazon Linux 2.0 AMI 上使用 32 位二进制文件。因此,不能在这些 AMI 上使用 Vertica 32 位客户端库。
IPv6 支持
Vertica 支持使用 IPv6 来识别数据库群集中的节点。但是,AWS DNS 解析不支持 IPv6。要在 AWS 中拥有使用 IPv6 的群集,请在安装 Vertica 和形成群集时使用 IPv6 IP 地址,而不是主机名。
7 - 容器化环境
Vertica 支持在符合 vioperf、vnetperf 和 vcpuperf 性能要求的任何容器化环境中运行。
由于 Vertica 在容器化环境(包括 Kubernetes)中扩展支持和部署,我们无法测试和认证所有可能的配置。但是,Micro Focus 努力确保其客户在 x86_64 架构的最新版本支持的操作系统上实现成功。
Vertica 测试 Docker 上运行的容器。如果基础硬件、操作系统和容器配置正确,数据库系统即可有效运行。在某些情况下,访问公共存储时对冷填充或部分填充的存储库执行查询的性能差异很小。
由于您的 Vertica 支持合同仅涵盖 Vertica 产品,因此如果您选择对容器配置运行 Vertica 并遇到可能并非由 Vertica 产品引发的问题,Vertica 支持团队可能会要求您在其他环境中再现该问题,或者与容器化技术支持人员进行互动。
有关如何为 Vertica 部署配置和调整 Kubernetes 资源的指导原则,请参阅 Vertica 知识库中的 Vertica 节点和群集调整建议。
注意
如果 Kubernetes 群集位于云中或托管服务上,则每个 Vertica 节点必须在同一可用性区域中运行。VerticaDB 运算符和 Vertica 服务器版本支持
VerticaDB 运算符支持 Vertica 服务器版本 11.0.0 及更高版本。
容器编排版本支持
公共存储支持
基于 Kubernetes 的容器化 Vertica 支持以下公共云和私有云提供程序:
-
Amazon Web Services S3
-
S3 兼容存储,如 MinIO
-
Google Cloud Storage
-
Azure Blob 存储
-
Hadoop 文件存储
托管 Kubernetes 服务支持
Vertica 支持以下托管 Kubernetes 服务:
-
Amazon Elastic Kubernetes Service (EKS)
-
Google Kubernetes Engine (GKE)
-
Azure Kubernetes Service (AKS)
群集管理平台支持
在 Red Hat OpenShift 4.8 及更高版本上,Vertica 支持 Vertica DB 运算符和基于 Kubernetes 的 Vertica 环境。
8 - 虚拟化环境
Vertica 支持在符合 vioperf、vnetperf 和 vcpuperf 性能要求的任何虚拟化环境中运行。
Vertica 不支持 VM 快照。
重要
Vertica 不支持在运行 Vertica 时挂起或迁移虚拟机。挂起或迁移虚拟机很可能会促使系统将 Vertica 群集标记为 DOWN,继而引发群集整体性能下降,甚至导致群集崩溃。Vertica 对 VMware 进行了测试,如果基础硬件配置正确,VMWare 即可有效运行。客户还成功部署了其他虚拟化配置。如果您选择在其他虚拟化配置上运行 Vertica 并遇到问题,Vertica 支持团队可能会要求您使用裸机环境再现该问题,以便开展故障排除。根据案例的详细信息,支持团队也可能会要求您输入虚拟化供应商提供的支持工单。
虚拟机管理程序和虚拟机配置指导原则
当今市场上充斥着大量企业级虚拟机管理程序,其中大部分支持基于 Linux 的虚拟机 (VM) 以支持 Vertica。选择和配置虚拟环境时,请参考以下指导原则。
-
请勿超额订阅托管硬件的物理资源(CPU、内存和网络)。很多虚拟机管理程序允许通过超额订阅资源来利用横向扩展解决方案,例如,部署的虚拟 CPU 超出实际安装在主机硬件中的 CPU。但是,此类部署会对 Vertica 群集的性能产生负面影响。
-
配置虚拟机管理程序运行低延迟、高性能应用程序。这意味着,应在虚拟机管理程序硬件上禁用节能功能和 CPU 频率调整,因为这些技术会引发应用程序延迟。
-
为 Vertica 和正在使用的虚拟机管理程序支持的 Vertica VM 选择操作系统。对于某些虚拟机管理程序,某些操作系统的性能可能优于其他操作系统。Vertica 建议您与虚拟机管理程序供应商共同调查这些选项。
-
配置附加存储,实现高 I/O 性能。虚拟化 Vertica 节点需要与非虚拟化节点实现等量磁盘 I/O 性能。Vertica 建议客户使用 vioperf 实用程序来验证每个 VM 将会实现的实际性能吞吐量。
-
如果使用共享存储设备提供存储,请确保基于整个群集验证磁盘 I/O 性能,以避免共享资源产生瓶颈。要实现此验证,请在所有群集节点上同时运行 vioperf 实用程序,以确定高 I/O 负载时段每个 VM 都能实现的最大磁盘 I/O 性能。
-
在虚拟化环境中运行的 Vertica 的内存建议与在非虚拟化环境中运行没有什么不同。Vertica 建议您为每个虚拟核心分配 8 GB 内存。同样,请勿超额订阅虚拟机管理程序中的可用内存,因为这会导致物理资源争用,引发负面性能影响,而且可能导致 VM 崩溃。
-
虚拟化 Vertica 群集的网络要求与非虚拟化群集相同。群集中的每个节点必须能够与所有其他节点通信,这些通信延迟可能会对群集性能产生负面影响。当您在单个主机服务器上运行多个虚拟机时,网络通信速度极快。这是因为网络流量在虚拟机管理程序的内存空间进行虚拟化,而且永远不会脱离物理服务器。但是,如果群集扩展到单个主机之外,则该主机的物理网络可能成为群集的瓶颈。如果部署到虚拟环境中,则该环境具有强大的网络基础架构,可以在物理主机之间提供必要的连接速度。在大多数情况下,将有多个 10 GBE 网络连接。使用 vnetperf 实用程序验证 Vertica 群集中节点之间的实际网络性能速度。
-
每个物理主机部署多个 Vertica VM 时,数量越少越好。虚拟化的目标在于整合工作负载,缩小硬件占用的整体空间。但是,在同一主机上运行多个 Vertica VM 可能会使 Vertica 群集陷入困境,即单一硬件故障可能导致群集中的多个节点乃至群集本身发生瘫痪。Vertica 建议,对 Vertica 群集进行虚拟化时,将 VM 分散到尽可能多的物理主机上,理想的目标是每个物理主机部署一个 Vertica VM。
-
虽然虚拟网络非常强大,但 Vertica 发现,在大多数虚拟环境中,spread 守护程序中使用的 UDP 广播流量可能不够可靠,特别是当这些环境分散在多个物理主机上时尤其不可靠。为使 Vertica 在虚拟化环境中有效运行,请在执行
/opt/vertica/sbin/install_vertica
脚本时使用--point-to-point
标记。此标记可配置 spread 守护程序直接相互通信。
9 - Hadoop 集成
Micro Focus 在以下 Hadoop 发行版中支持 Vertica 12.0.x。Micro Focus 预计会将 Vertica 与后续 Hadoop 发行版配合使用,并会根据实际情况尽快测试这些后续发行版。
\* Vertica 正逐步停止为此平台提供支持。有关详细信息,请参阅支持终止声明。
必须应用修补程序才能解决以下问题:HDFS-8855 和 HDFS-8696。有关进一步说明,请参阅 Hadoop 供应商文档。
10 - Apache Kafka 集成
您可以将 Vertica 与 Apache Kafka 消息代理一起使用。有关 Kafka 集成的详细信息,请参考 Apache Kafka 集成。
Kafka 版本
Vertica 已与不同版本的 Apache Kafka 进行过测试。下表列出了每个 Vertica 版本支持的 Kafka 版本:
Avro 架构注册表版本
已使用随 Confluent 3.3.1 和 4.0.0 分发的 Avro 架构注册表对 Vertica 与 Apache Kafka 的集成进行了测试。有关 Confluent 的详细信息,请参阅 Confluent 网站。
Java 版本
数据流式传输作业调度程序使用 Vertica JDBC 库连接目标数据库,需要使用 Java 8 或更高版本。
11 - Apache Spark 集成
您可以使用 Vertica Connector for Apache Spark 在 Vertica 与 Apache Spark 之间传输数据。下表显示了连接器支持的 Apache Spark 和 Scala 版本,以及每个组合需要使用的 Spark 连接器 JAR 文件的名称:
\* Vertica 正逐步停止为此 Apache Spark 版本提供支持。有关详细信息,请参阅支持终止声明。
注意
-
Spark 连接器 JAR 文件可以支持多个 Spark 版本。例如,
vertica-spark2.1_scala2.11.jar
支持 Spark 2.1、2.2、2.3 和 2.4.1。 -
Vertica 建议您始终使用 Vertica 服务器版本随附的 Spark 连接器版本。升级 Vertica 服务器时,还应升级 Spark 连接器版本。
有关 Apache Spark 集成的详细信息,请参阅 Apache Spark 集成。
12 - Linux 卷管理器 (LVM)
Vertica 12.0.x 在所有支持的操作系统上均支持 Linux 卷管理器 (LVM)。
支持的 LVM 版本
Vertica 支持 LVM 版本 2.02.66 或更高版本,且必须包括设备映射器版本 1.02.48 或更高版本。
LVM 配置说明
在配置 LVM 的过程中:
-
当您使用
lvcreate
命令创建逻辑卷时,使用readahead
选项将预读扇区计数设置为大于 2048 KB。 -
您可以对所有其他 LVM 选项使用默认设置。
LVM 限制
以下限制适用于 LVM 支持:
-
不能在多个节点之间共享物理驱动器。
-
Vertica 仅支持线性逻辑卷。Vertica 不支持条带化或镜像逻辑卷。
-
Vertica 支持扩展逻辑卷 (
lvextend
),但不缩小逻辑卷的大小。 -
Vertica 建议频繁备份。
-
Vertica 不支持 LVM 备份和还原,如 LVM 快照和合并。使用 Vertica 备份实用程序 vbr。
-
Vertica 不支持 LVM 空间回收,因为缩小逻辑卷大小时会重复回收空间。
-
Vertica 不支持迁移 LVM。使用 Vertica Copy 操作。
-
Vertica 不支持 LVM 高可用性。使用 Vertica 高可用性功能。
-
Vertica 不支持 LVM RAID。在磁盘控制器级别配置 RAID。
13 - 支持终止声明
以下支持终止声明适用于特定客户端、Linux、Hadoop 和 Kafka 发行版。
支持终止声明
Vertica 不再支持以下客户端平台和服务器发行版:
-
AIX(所有版本)
-
Amazon Linux 2017.09
-
Debian 7.6、7.7
-
HP-UX(所有版本)
-
macOS 10.10
-
Red Hat Enterprise Linux/CentOS 6.x
-
SUSE 11SP3
-
Ubuntu 12.04