第 3 章 新功能


本节列出了本 Red Hat Ceph Storage 版本中引入的所有主要更新、增强功能和新功能。

3.1. Cephadm 实用程序

用户现在可以在 idmap.conf中配置各种 NFS 选项

有了这个增强,在 idmap.conf 中引入了配置 NFS 选项的功能,如 "Domain", "Nobody-User", "Nobody-Group" 和 like like。

Bugzilla:2068026

现在,可以通过 NFS 的新 haproxy 协议模式进行客户端 IP 限制

在以前的版本中,客户端 IP 限制无法在通过 NFS 使用 haproxy 的设置中工作。

在这个版本中,Cephadm 部署的 NFS 支持 haproxy 协议。如果用户将 enable_haproxy_protocol: True 添加到其 ingress 和 haproxy 规格,或将 pass-ingress-mode haproxy-protocol 添加到 ceph nfs cluster create 命令,则 NFS 守护进程将使用 haproxy 协议。

Bugzilla:2068030

用户现在必须输入用户名和密码来访问 Grafana API URL

在以前的版本中,可以连接到 Grafana API URL 的任何人都可以访问它,而无需任何凭证。

在这个版本中,Cephadm 部署的 Grafana 使用用户名和密码设置,供用户访问 Grafana API URL。

Bugzilla:2079815

带有 NFS 后端的 Ingress 服务现在可以设置为只使用 keepalived 为 NFS 守护进程创建一个虚拟 IP (VIP)来绑定,而无需涉及 HAProxy 层

在这个版本中,带有 NFS 后端的 ingress 服务只能设置为使用 keepalived 为要绑定到的 NFS 守护进程创建一个虚拟 IP,而无需涉及 HAProxy 层。当 NFS 守护进程被移动,且客户端不需要使用不同的 IP 来连接它时,这非常有用。

Cephadm 部署 keepalived 来设置 VIP,然后 NFS 守护进程绑定到该 VIP。这也可以通过 ceph nfs cluster create 命令使用 NFS 模块进行设置,使用 flags- ingress --ingress-mode keepalive-only --virtual-ip <VIP>

规格文件类似如下:

service_type: ingress
service_id: nfs.nfsganesha
service_name: ingress.nfs.nfsganesha
placement:
  count: 1
  label: foo
spec:
  backend_service: nfs.nfsganesha
  frontend_port: 12049
  monitor_port: 9049
  virtual_ip: 10.8.128.234/24
  virtual_interface_networks: 10.8.128.0/24
  keepalive_only: true

这包括 keepalive_ony: true 设置。

NFS 规格如下:

networks:
    - 10.8.128.0/21
service_type: nfs
service_id: nfsganesha
placement:
  count: 1
  label: foo
spec:
  virtual_ip: 10.8.128.234
  port: 2049

这包括与入口规格中的 VIP 匹配的 virtual_ip 字段。

Bugzilla:2089167

HAProxy 守护进程仅绑定到附带的 keepalived 创建的 VIP 上的前端端口

在这个版本中,HAProxy 守护进程将只绑定到由附带 keepalived 创建的 VIP 的前端端口,而不是 0.0.0.0。Cephadm 部署的 HAProxy 将将其前端端口绑定到 VIP,允许其他服务(如 NFS 守护进程)绑定到同一节点上的其他 IP 端口 2049。

Bugzilla:2176297

现在,ingress 服务的 HAProxy 健康检查间隔可以自定义

在以前的版本中,在某些情况下,两个默认健康检查间隔太频繁,并导致不必要的流量。

在这个版本中,ingress 服务的 HAProxy 健康检查间隔可以自定义。通过应用包含 health_check_interval 字段的 ingress 规格,服务的每个 HAProxy 守护进程生成的 HAProxy 配置将包括健康检查间隔的值。

Ingress 规格文件:

service_type: ingress
service_id: rgw.my-rgw
placement:
  hosts: ['ceph-mobisht-7-1-07lum9-node2', 'ceph-mobisht-7-1-07lum9-node3']
spec:
  backend_service: rgw.my-rgw
  virtual_ip: 10.0.208.0/22
  frontend_port: 8000
  monitor_port: 1967
  health_check_interval: 3m

有效间隔单位为: microseconds ms : milliseconds s : seconds m : minutes h : hours d : days

Bugzilla:2199129

Grafana 现在绑定到主机上的特定网络中的 IP,而不是始终绑定到 0.0.0.0

在这个版本中,使用包含网络部分的 Grafana 规格文件与 Grafana 绑定到 IP 的网络,以及规格的 "spec" 部分中包含的 only_bind_port_on_networks: true,Cephadm 会将 Grafana 守护进程配置为绑定到该网络中的 IP,而不是 0.0.0.0。这可让用户使用 Grafana 用于另一个服务但在主机上的不同 IP 的同一端口。如果它是一个规格更新,不会导致它们全部被移动,则可以运行 ceph orch redeploy grafana 来获取对设置的更改。

Grafana 规格文件:

service_type: grafana
service_name: grafana
placement:
  count: 1
networks:
  192.168.122.0/24
spec:
  anonymous_access: true
  protocol: https
  only_bind_port_on_networks: true

Bugzilla:2233659

现在,所有 bootstrap CLI 参数都可用于 cephadm-ansible 模块

在以前的版本中,只有 bootstrap CLI 参数的子集可用,它限制了模块用量。

在这个版本中,所有 bootstrap CLI 参数都可用于 cephadm-ansible 模块。

Bugzilla:2246266

Prometheus scrape 配置被添加到 nfs-ganesha 导出器

在这个版本中,Prometheus 提取配置被添加到 nfs-ganesha 导出器中。这样做可将 nfs-ganesha prometheus exporter 公开的指标提取到 Ceph 中运行的 Prometheus 实例中,这将由 Grafana Dashboards 进一步使用。

Bugzilla:2263898

Prometheus 现在绑定到主机上的特定网络中的 IP,而不是始终绑定到 0.0.0.0

在这个版本中,使用包含网络部分的 Prometheus 规格文件与 Prometheus 绑定到 IP 的网络,以及规格的 "spec" 部分中包含的 only_bind_port_on_networks: true,Cephadm 会将 Prometheus 守护进程配置为绑定到该网络中的 IP,而不是 0.0.0.0。这可让用户使用 Prometheus 用于另一个服务但在主机上的不同 IP 的同一端口。如果它是一个规格更新,不会导致它们全部被移动,则可以运行 ceph orch redeploy prometheus 来获取对设置的更改。

Prometheus 规格文件:

service_type: prometheus
service_name: prometheus
placement:
  count: 1
networks:
- 10.0.208.0/22
spec:
  only_bind_port_on_networks: true

Bugzilla:2264812

用户现在可以挂载快照(在 .snap 目录中导出)

有了这个增强,用户可以挂载快照(在 .snap 目录中导出)以 RO 模式查看。使用 NFS MGR 模块创建的 NFS 导出现在包含 cmount_path 设置(无法配置,并应保留为"/"),允许挂载快照。

Bugzilla:2245261

zonegroup 主机名现在可以使用 ceph rgw realm bootstrap…​ 命令中提供的规格文件来设置

在这个版本中,在继续到 Ceph 对象网关多站点设置的自动化中,用户现在可以通过 bootstrap 命令 ceph rgw realm bootstrap…​ 传递的初始规格文件来设置 zonegroup 主机名。

例如,

zonegroup_hostnames:
- host1
- host2

如果用户将上述部分添加到 realm bootstrap 命令传递的 Ceph 对象网关规范文件的"特定"部分中,Cephadm 将在 Ceph 对象网关模块完成 realm/zonegroup/zone 的规范中定义的 zonegroup 中自动将这些主机名添加到规范中定义的 zonegroup 中。请注意,这可能需要几分钟时间来看 Cephadm 模块当前完成的其他活动。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.