Calamari 曾是用于管理和监视 Ceph 集群的首选 Web UI 应用。但自 SUSE Enterprise Storage 5 开始,删除了 Calamari,以更先进的 openATTIC 代替。
openATTIC 是一个中央存储管理系统,支持 Ceph 存储集群。借助 openATTIC,您可以从中央管理界面控制所有事宜。您不再需要熟悉 Ceph 存储工具的内部工作方式。集群管理任务可以使用 openATTIC 直观的 Web 界面或通过其 REST API 执行。
本节介绍部署和配置 openATTIC 及其支持的功能的步骤,以便您可以通过易于使用的 Web 界面来管理 Ceph 集群。
系统默认使用不安全的 HTTP 协议来访问 openATTIC Web 应用程式。要启用安全访问 openATTIC 的功能,您需要手动配置 Apache Web 服务器:
如果您没有经知名证书颁发机构 (CA) 签名的 SSL 证书,请创建一个自我签名的 SSL 证书,并将其文件复制到 Web 服务器预期会检索该证书的目录下,例如:
root #
openssl req -newkey rsa:2048 -new -nodes -x509 -days 3650 \ -keyout key.pem -out cert.pemroot #
cp cert.pem /etc/ssl/certs/servercert.pemroot #
cp key.pem /etc/ssl/certs/serverkey.pem
请参见 https://www.suse.com/documentation/sles-12/book_sle_admin/data/sec_apache2_ssl.html 了解有关创建 SSL 证书的详细信息。
为 /etc/sysconfig/apache2
配置文件中的 APACHE_SERVER_FLAGS
选项添加“SSL”。您可以手动执行此操作,也可以运行以下命令来执行:
root #
a2enmod sslroot #
a2enflag SSL
为新 Apache 虚拟主机创建 /etc/apache2/vhosts.d/vhost-ssl.conf
,在其中包含以下内容:
<IfDefine SSL> <IfDefine !NOSSL> <VirtualHost *:80> ServerName OA_HOST_NAME Redirect "/" "https://OA_HOST_NAME/" </VirtualHost> <VirtualHost _default_:443> ServerName OA_HOST_NAME DocumentRoot "/srv/www/htdocs" ErrorLog /var/log/apache2/error_log TransferLog /var/log/apache2/access_log SSLEngine on SSLCertificateFile /etc/ssl/certs/servercert.pem SSLCertificateKeyFile /etc/ssl/certs/serverkey.pem CustomLog /var/log/apache2/ssl_request_log ssl_combined </VirtualHost> </IfDefine> </IfDefine>
重启动 Web 服务器,以重新加载新虚拟主机定义以及证书文件:
root #
systemctl restart apache2.service
自 SUSE Enterprise Storage 5 开始,已采用 DeepSea 角色的形式来部署 openATTIC。有关一般过程,请参见第 1 章 “Salt 集群管理”。
默认情况下,oaconfig
会创建管理用户帐户 openattic
,其用户名与密码相同。为安全起见,强烈建议立即更改此密码:
root@minion >
oaconfig changepassword openattic
Changing password for user 'openattic'
Password: <enter password>
Password (again): <re-enter password>
Password changed successfully for user 'openattic'
一些 openATTIC 功能(例如 iSCSI 网关和对象网关管理)会使用 DeepSea REST API。默认情况下,会启用并配置该 API。如果您出于调试目的需要覆盖其默认设置,请编辑 /etc/sysconfig/openattic
,添加或更改以下数行:
SALT_API_HOST="salt_api_host" SALT_API_PORT=8001 SALT_API_USERNAME="example_user" SALT_API_PASSWORD="password"
oaconfig restart
在更改 /etc/sysconfig/openattic
文件之后,记得运行 oaconfig restart
。
在 Python 和 Bash 中会使用 /etc/sysconfig/openattic
。因此,该文件需要采用 Bash 可以理解的格式,并且在“等号”前后不能有空格。
默认情况下,openATTIC 中的对象网关管理功能处于启用状态。如果您需要覆盖 DeepSea 中发现的对象网关 API 默认值,请在 /etc/sysconfig/openattic
中包括以下选项及相关值。例如:
RGW_API_HOST="rgw_api_host" RGW_API_PORT=80 RGW_API_SCHEME="http" RGW_API_ACCESS_KEY="VFEG733GBY0DJCIV6NK0" RGW_API_SECRET_KEY="lJzPbZYZTv8FzmJS5eiiZPHxlT2LMGOMW8ZAeOAq"
如果您的对象网关管理资源未配置为使用默认值“admin”(即“http://rgw_host:80/admin”中所用的值),则您还需要相应地设置 RGW_API_ADMIN_RESOURCE
选项。
要获取对象网关身份凭证,请使用 radosgw-admin
命令:
root@minion >
radosgw-admin user info --uid=admin
默认情况下,openATTIC 中的 iSCSI 网关管理功能处于启用状态。如果您需要覆盖默认 Salt API 主机名,请按第 15.1.4 节 “openATTIC 中的 DeepSea 集成”中所述更改 SALT_API_HOST
的值。
您可以使用 Web 用户界面来管理 openATTIC。打开 Web 浏览器并导航到 http://SERVER_HOST/openattic。要登录,请使用默认用户名 openattic 及相应的密码。
openATTIC 用户界面分为顶部菜单窗格和内容窗格两部分。
顶部窗格的右侧包含当前用户设置的链接、
(注销)链接,及现有 (后台任务)和系统 (通知)列表的链接。顶部窗格的其余部分包含 openATTIC 主菜单。内容窗格因所激活的项目菜单而异。默认会显示一个
,其中包含许多控件,用于告知您集群的状态。各
控件显示与正在运行的 Ceph 集群相关的特定状态信息。点击某个控件的标题之后,该控件会扩展至整个内容窗格,可能会显示更多详细信息。下面列出了几个控件:(状态)控件指出集群是否在正常工作。如果检测到问题,可点击控件内的副标题来查看详细的错误讯息。
(仲裁中的监视器)、 (存储池)、 (加入的 OSD)、 (移出的 OSD)、 (启动的 OSD)、 (停机的 OSD)和 (每个 OSD 的平均 PG 数)控件仅显示相关数字。
下列控件显示总存储容量和可用存储容量:
(集群容量)、 (可用容量)、 (已用容量)和 (容量)。下列控件显示 OSD 和监视器节点延迟:
(平均 OSD 应用延迟)、 (平均 OSD 提交延迟)和 (平均监视器延迟):(吞吐量)控件即时显示每秒的读取和写入统计数字。
如果您将鼠标指针移到显示的任何图表上方,会在弹出窗口中看到与所指日期和时间相关的更多详细信息。
如果在图表区域中点击,然后沿时间轴向左或向右拖动鼠标指针,时间轴上的间隔将放大到您通过移动鼠标标记的间隔。要缩回原来的比例,请双击图表。
openATTIC的 主菜单列出 Ceph 相关任务。目前有以下相关任务:
、 、 、 、 、 、 和 。在 openATTIC 中,经常会使用列表 — 例如,存储池列表、OSD 节点列表或 RBD 设备列表。下列常用控件可帮助您管理或调整这些列表:
点击 可刷新项目列表。
点击 可显示或隐藏表格的相应列。
点击 并选择要在一页上显示多少行。
在 中点击并键入要搜索的字符串以过滤行。
如果列表跨多页显示,可使用 来更改当前显示的页。
要列出所有可用的 RADOS 块设备,请点击主菜单中的
。列表会显示每个设备的名称、相关存储池名称、设备大小和已占用百分比(如果在 RADOS 块设备创建期间启用了“fast-diff”)。
点击 RADOS 块设备的
(统计数字)选项卡可查看已传送数据的统计数字。您可以放大和缩小时间范围,只需用鼠标高亮显示该时间范围,或先点击选项卡左上角的日期,然后再选择相应时间范围。要创建 RADOS 块设备快照,请点击该块设备的
(快照)选项卡,然后从左上方的下拉框中选择 (创建)。选择快照后,您可以对其执行重命名、保护、克隆或删除操作。您可以一次选择多个快照将它们删除。
(回滚)可根据当前快照恢复设备的状态。要添加新设备,请点击 RBD 表格左上方的
(增加),然后在 (创建 RBD)屏幕上执行以下操作:输入新设备的名称。有关命名限制,请参见第 2.8 节 “命名限制”。
选择将会存储新存储池的集群。
选择将在其中创建新 RBD 设备的存储池。
指定新设备的大小。如果您点击上面的
(最大可用)链接,则会填充最大存储池大小。要细调设备参数,请点击
(专家设置),然后激活或停用显示的选项。点击
(创建)以确认。要列出所有可用的存储池,请点击主菜单中的
(存储池)。列表会显示每个存储池的名称、ID、已用空间百分比、归置组数量、副本容量、类型(“副本”或“纠删”)、纠删码配置和 CRUSH 规则组。
要查看有关某个存储池的更详细信息,请选中其最左侧列中的复选框:
要添加新存储池,请点击存储池表格左上方的
(增加),然后在 (创建 Ceph 存储池)屏幕上执行以下操作:输入新存储池的名称。有关命名限制,请参见第 2.8 节 “命名限制”。
选择将会存储新存储池的集群。
选择存储池类型。存储池可以是副本池或是纠删码池。
对于副本池,请指定副本容量和归置组数。
对于纠删码池,请指定归置组数和纠删码配置。您可以点击加号“+”,并指定配置名称、数据块和编码块以及规则组故障域,来添加自定义配置。
点击
(创建)以确认。点击主菜单中的
(节点),可查看集群上可用的节点列表。每个节点用其主机名、公共 IP 地址、它所属集群的 ID、节点角色(例如“admin”、“storage”或“master”)和密钥接受状态表示。
要列出所有可用的 NFS 导出项,请点击主菜单中的
。列表会显示每个导出项的目录、主机名、状态、存储后端类型以及访问类型。
要查看有关某个 NFS 导出项的更详细信息,请选中其最左侧列中的复选框:
在导出项详细视图的底部,有一个挂载命令,可用来轻松挂载来自客户端计算机的相关 NFS 导出项。
要列出所有可用网关,请点击主菜单中的
。列表会显示每个网关的目标、状态、相关门户和 RBD 映像。
要查看有关某个网关的更详细信息,请选中其最左侧列中的复选框:
要添加新的 iSCSI 网关,请点击网关表格左上方的
(增加)并输入所需的信息。输入新网关的目标地址。
点击
(添加门户)并从列表中选择一个或多个 iSCSI 门户。点击
(添加映像)并为网关选择一个或多个 RBD 映像。如果您需要使用身份验证才能访问网关,请选中
(身份验证)复选框并输入身份凭证。选中 (相互身份验证)和 (发现身份验证)之后,您可看到更多高级身份验证选项。点击
(提交)以确认。要编辑某个现有 iSCSI 网关,可点击网关表格中该网关的名称,也可以选中相应复选框,然后点击网关表格左上方的
(编辑)。然后,您便可以修改 iSCSI 目标、添加或删除门户,以及添加或删除相关 RBD 映像。您还可以调整网关的身份验证信息。
要启动所有网关,请选择网关表格左上方的
(全部启动)。要停止所有网关,请选择 (全部停止)。点击主菜单中的
(CRUSH 地图)可查看集群 CRUSH 地图。在
(物理架构)窗格中,您可以看到如 CRUSH 地图中所描述的集群结构。您可以在
(复制规则)窗格的 (内容)下拉框中选择其中一个规则组,来查看相应的规则组。要列出对象网关用户,请选择主菜单中的
› 。列表会显示每个用户的 ID、显示名称、电子邮件地址、用户是否处于暂停状态以及用户的最大桶数。
要添加新的对象网关用户,请点击用户表格左上方的
(增加)并输入相关信息。输入用户名、全名和(可选)电子邮件地址以及用户的最大桶数。
如果用户最初应处于暂停状态,请选中
(暂停)复选框。指定 S3 身份验证的访问钥和机密密钥。如果您希望 openATTIC 为您生成密钥,请选中
(生成钥)。在
(用户配额)部分,设置当前用户的配额限制。选中
(启用)以激活用户配额限制。您可以指定集群中用户可使用磁盘空间的 (最大容量),也可以选中 (容量不限)不设置大小限制。同样,可以指定用户可在集群存储上存储的
(最大对象数目),也可以选中 (对象数目不限),允许用户存储任意数量的对象。在
(桶配额)部分,设置当前用户的桶配额限制。点击
(提交)以确认。要删除一个或多个对象网关用户,请选中其最左侧列中的复选框,然后选择用户表格左上方的
(删除)。要编辑对象网关用户的用户信息,请选中其最左侧列中的复选框,然后选择用户表格左上方的 第 15.4.9.1 节 “添加新的对象网关用户”中添加用户时输入的信息,以及下列其他信息:
(编辑),或者点击用户的 ID。您可以更改在桶是一种用于存储数据对象的机制。一个用户帐户可具有许多个桶,但是桶名称必须唯一。“桶”这个术语通常在 Amazon S3 API 中使用,而在 OpenStack Swift API 环境中使用的是“容器”。
点击
› 可列出所有可用的对象网关桶。