Ceph-Ansible 中 Dashboard VIP 配置的注意事项
背景介绍
在 Ceph 集群部署中,Dashboard 是一个重要的管理界面组件。很多管理员希望通过虚拟 IP (VIP) 来实现 Dashboard 的高可用访问。本文基于 Ceph-Ansible 项目中的一个实际案例,探讨如何正确配置 Dashboard 的 VIP 访问。
常见误区
许多管理员误以为在 Ceph-Ansible 的配置文件中简单设置 dashboard_frontend_vip 参数就能自动完成 VIP 配置。实际上,Ceph-Ansible 并不会自动配置 VIP 地址,这个参数仅用于告诉 Dashboard 组件应该监听哪个 VIP 地址。
正确配置方法
要实现 Dashboard 的 VIP 访问,需要以下步骤:
-
预先配置 VIP:在运行 Ceph-Ansible 之前,必须先在监控节点上手动配置好 VIP。可以通过网络接口别名或 keepalived 等工具实现。
-
HAProxy + Keepalived 方案:更专业的做法是使用 HAProxy 做负载均衡,配合 Keepalived 实现 VIP 漂移。这种方案不仅能提供高可用性,还能实现负载均衡。
配置示例
基础 VIP 配置
在监控节点的网络接口配置中添加:
auto br-host:0
iface br-host:0 inet static
address 192.168.20.99
netmask 255.255.255.255
专业 HAProxy + Keepalived 配置
HAProxy 配置示例:
global
log stdout format raw local0
maxconn 2048
chroot /var/lib/haproxy
pidfile /var/run/haproxy.pid
user haproxy
group haproxy
daemon
defaults
mode http
timeout client 5s
timeout connect 5s
timeout server 5s
timeout http-request 5s
frontend http-in
bind *:8090
default_backend servers
backend servers
option httpchk
http-check expect status 200
server server1 192.168.20.2:7443 check
server server2 192.168.20.3:7443 check
server server3 192.168.20.4:7443 check
Keepalived 配置示例:
vrrp_instance VI_1 {
state MASTER
interface enp1s0
virtual_router_id 51
priority 101
authentication {
auth_type PASS
auth_pass password
}
virtual_ipaddress {
192.168.20.99/24
}
track_script {
chk_haproxy
}
}
最佳实践建议
-
生产环境推荐:对于生产环境,强烈建议使用 HAProxy + Keepalived 方案,而不是简单的 VIP 配置。
-
SSL/TLS 配置:虽然示例中展示了基础配置,但在实际生产环境中应该配置 SSL/TLS 加密。
-
健康检查:确保配置了适当的健康检查机制,如示例中的 HTTP 状态码检查。
-
端口规划:合理规划服务端口,避免与现有服务冲突。
总结
Ceph-Ansible 虽然提供了 dashboard_frontend_vip 参数,但不会自动配置 VIP。管理员需要预先配置好 VIP 或使用专业的负载均衡方案。通过 HAProxy + Keepalived 的组合,可以构建一个高可用、负载均衡的 Dashboard 访问方案,这是生产环境中的推荐做法。
atomcodeClaude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get StartedRust0153- DDeepSeek-V4-ProDeepSeek-V4-Pro(总参数 1.6 万亿,激活 49B)面向复杂推理和高级编程任务,在代码竞赛、数学推理、Agent 工作流等场景表现优异,性能接近国际前沿闭源模型。Python00
LongCat-Video-Avatar-1.5最新开源LongCat-Video-Avatar 1.5 版本,这是一款经过升级的开源框架,专注于音频驱动人物视频生成的极致实证优化与生产级就绪能力。该版本在 LongCat-Video 基础模型之上构建,可生成高度稳定的商用级虚拟人视频,支持音频-文本转视频(AT2V)、音频-文本-图像转视频(ATI2V)以及视频续播等原生任务,并能无缝兼容单流与多流音频输入。00
auto-devAutoDev 是一个 AI 驱动的辅助编程插件。AutoDev 支持一键生成测试、代码、提交信息等,还能够与您的需求管理系统(例如Jira、Trello、Github Issue 等)直接对接。 在IDE 中,您只需简单点击,AutoDev 会根据您的需求自动为您生成代码。Kotlin03
Intern-S2-PreviewIntern-S2-Preview,这是一款高效的350亿参数科学多模态基础模型。除了常规的参数与数据规模扩展外,Intern-S2-Preview探索了任务扩展:通过提升科学任务的难度、多样性与覆盖范围,进一步释放模型能力。Python00
skillhubopenJiuwen 生态的 Skill 托管与分发开源方案,支持自建与可选 ClawHub 兼容。Python0112