Ceph Mimic(13.2.x)启用Dashboard
1. 启用
$ ceph mgr module enable dashboard
也可以在部署期间配置ceph.conf实现自动启用:
[mon]
mgr initial modules = dashboard balancer
2. 配置
2.1 SSL/TLS 支持
默认情况下,与仪表板的所有 HTTP 连接都使用 SSL/TLS 保护。
要使仪表板快速启动并运行,您可以使用以下内置命令生成并安装自签名证书:
$ ceph dashboard create-self-signed-cert
请注意,大多数 Web 浏览器都会抱怨此类自签名证书,并且在建立与仪表板的安全连接之前需要明确确认。
要正确保护部署并删除证书警告,应使用证书颁发机构 (CA) 颁发的证书。
例如,可以使用类似于以下的命令生成密钥对:
$ openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca
然后该dashboard.crt文件应由 CA 签名。完成后,您可以通过运行以下命令为所有 Ceph 管理器实例启用它:
$ ceph config-key set mgr mgr/dashboard/crt -i dashboard.crt
$ ceph config-key set mgr mgr/dashboard/key -i dashboard.key
如果出于某种原因,每个管理器实例都需要不同的证书,则可以按如下方式包含实例的名称(其中$name是ceph-mgr实例的名称,通常是主机名):
$ ceph config-key set mgr/dashboard/$name/crt -i dashboard.crt
$ ceph config-key set mgr/dashboard/$name/key -i dashboard.key
SSL 也可以通过设置这个配置值来禁用:
$ ceph config set mgr mgr/dashboard/ssl false
如果仪表板将在其上游服务器不支持 SSL 的代理后面运行,或者在不需要或不需要 SSL 的其他情况下运行,这可能很有用。
警告:禁用 SSL 时要小心,因为用户名和密码将被发送到未加密的仪表板。
2.2 主机名和端口
与大多数 Web 应用程序一样,仪表板绑定到 TCP/IP 地址和 TCP 端口。
默认情况下,ceph-mgr当 SSL 被禁用时,托管仪表板的守护进程(即当前活动的管理器)将绑定到 TCP 端口 8443 或 8080。
如果未配置特定地址,则 Web 应用程序将绑定到::,它对应于所有可用的 IPv4 和 IPv6 地址。
这些默认值可以通过集群范围级别的配置密钥工具进行更改(因此它们适用于所有管理器实例),如下所示:
$ ceph config set mgr mgr/dashboard/server_addr $IP
$ ceph config set mgr mgr/dashboard/server_port $PORT
由于每个都ceph-mgr托管自己的仪表板实例,因此可能还需要单独配置它们。可以使用以下命令更改特定管理器实例的 IP 地址和端口:
$ ceph config set mgr mgr/dashboard/$name/server_addr $IP
$ ceph config set mgr mgr/dashboard/$name/server_port $PORT
替换$name为托管仪表板 Web 应用程序的 ceph-mgr 实例的 ID。
2.3 用户名和密码
为了能够登录,您需要定义用户名和密码,这些用户名和密码将存储在 MON 的配置数据库中:
$ ceph dashboard set-login-credentials <username> <password>
密码将使用 bcrypt 以加密形式存储在配置数据库中。这是适用于所有仪表板实例的全局设置。
2.4 启用对象网关管理前端
要使用仪表板的对象网关管理功能,您需要提供启用system标志的用户的登录凭据。
如果您没有用于提供这些凭据的用户,您还需要创建一个:
$ radosgw-admin user create --uid=<user_id> --display-name=<display_name> --system
记下键access_key和secret_key此命令的输出。
也可以使用 radosgw-admin获取现有用户的凭据:
$ radosgw-admin user info --uid=<user_id>
最后,向仪表板模块提供凭据:
$ ceph dashboard set-rgw-api-access-key <access_key>
$ ceph dashboard set-rgw-api-secret-key <secret_key>
这就是使对象网关管理功能正常工作所要做的一切。对象网关的主机和端口是自动确定的。
如果使用多个区域,它会自动确定主区域组和主区域内的主机。这对于大多数设置应该足够了,但在某些情况下,您可能需要手动设置主机和端口:
$ ceph dashboard set-rgw-api-host <host>
$ ceph dashboard set-rgw-api-port <port>
除了到目前为止提到的设置之外,还存在以下设置,您可能会发现自己处于必须使用它们的情况:
$ ceph dashboard set-rgw-api-scheme <scheme> # http or https
$ ceph dashboard set-rgw-api-admin-resource <admin_resource>
$ ceph dashboard set-rgw-api-user-id <user_id>
如果您在对象网关设置中使用自签名证书,则应在仪表板中禁用证书验证以避免连接被拒绝,例如由未知 CA 签名的证书或与主机名不匹配引起的连接:
$ ceph dashboard set-rgw-api-ssl-verify False
如果对象网关处理请求的时间过长并且仪表板超时,那么您可以根据需要设置超时值:
$ ceph dashboard set-rest-requests-timeout <seconds>
默认值为 45 秒。
2.5 访问仪表板
现在,您可以使用(启用 JavaScript)的 Web 浏览器访问仪表板,方法是将其指向任何主机名或 IP 地址以及运行管理器实例的选定 TCP 端口:例如,httpS://<$IP>:<$PORT>/.
然后,仪表板登录页面会向您打招呼,请求您之前定义的用户名和密码。 如果您想在将来访问仪表板时跳过用户名/密码请求,请选中保持登录复选框。