我如何使用 Cockpit 管理我的家庭 Linux 服务器

任何人——从家庭用户到大型网络管理员——都可以通过 Cockpit 访问企业级服务器管理。
169 位读者喜欢这篇文章。
Avoiding data disasters with Sanoid

Opensource.com

Cockpit 是一项 Linux 服务,提供基于 Web 的界面,用于管理和监控主机。它可以部署在任何规模的组织中,即使是小型办公室,对于家庭用户来说,它也是维护家庭 IT 基础设施的好方法。我使用它来管理和监控我家中的所有计算机——包括 Raspberry Pi。

Cockpit 是一个免费和开源软件项目,根据 LGPL v2.1+ 许可发布。它由 Red Hat 赞助,并作为 RHEL Web Console 包含在 Red Hat Enterprise Linux 中。

使用 Cockpit

Cockpit 允许您远程管理网络上的 Linux 设备。您可以添加或删除用户、连接网络文件系统 (NFS) 共享以及启动和停止服务。我最喜欢的简单 Cockpit 任务之一是进行更新。我不再需要在家中或办公室里走动,收集每台设备来登录、更新、重启和等待。企业管理员无需刷卡进入数据中心;相反,他们可以在舒适的办公室里管理设备。

但这还不是全部。Cockpit 的高级功能包括管理 LDAP 服务器、虚拟机和存储。您还可以使用它来安装 Docker 或 Podman 容器。

在监控方面,Cockpit 提供了对预期 CPU、内存和磁盘空间指标的可见性。但它还公开了制造商、BIOS 和 CPU 品牌等信息,并详细查看了硬件元素,例如北桥南桥芯片以及各种控制器。它列出了图形、存储和网络通信设备以及内存控制器和内存类型。Cockpit 也可用于查看日志。

安装 Cockpit

Cockpit 包含在大多数主要发行版中。该网站提供了在 Red Hat、Fedora、Ubuntu、Debian、Arch 和其他几个发行版上安装的文档。您可以使用 Linux 发行版上的标准软件包管理命令来安装它。您通常也可以在图形实用程序(例如 GNOME 软件中心)中找到它,以便一键安装。

  • Fedora: dnf install cockpit
  • Ubuntu: apt install cockpit

访问和登录

默认监听端口为 9090。要访问服务器上的 Cockpit 界面,只需将浏览器指向 hostname:9090。您可以对您登录的本地服务器使用 localhost:9090。使用通用帐户登录,因为在此帐户上拥有 root 权限将是有利的。

要远程访问其他服务器,您可以使用它们的主机名,例如 https://hostname:9090。但是,您可以将一台主机指定为管理服务器,并将所有服务器添加到仪表板以获得统一的视图。

登录后,您看到的第一个屏幕是仪表板;另一个选项是主机视图。

仪表板视图

仪表板视图简洁明了。下图显示了所有系统连接服务器的性能监视器。它绘制了 CPU、内存、网络和磁盘 I/O 的图表。如果这是您第一次运行并且尚未连接任何服务器,您将仅看到本地系统的图表。

单击蓝色加号 (+) 按钮添加服务器。

添加服务器后,向下滚动以查看完整列表。我已经设置了几个系统。

主机视图

主机视图是所有乐趣开始的地方。此部分显示并提供对添加到仪表板的每个服务器的访问权限。此处的主要兴趣区域是左侧的列,其中包括概述日志存储网络以及其他一些项目,底部是 终端。单击每个项目可让您管理系统的这些部分。此部分中的项目可能会因可能已安装的其他功能而异。

概述

当您选择服务器时,主机屏幕将打开到概述部分,其中包含特定主机系统的控件。“概述”屏幕分为运行状况使用情况配置系统信息四个象限。

“使用情况”链接到详细的性能图表视图,“系统信息”链接到硬件详细信息。某些管理控件在此屏幕上直接可用。例如,您可以更改系统主机名或将服务器加入企业域。

存储

在此存储部分的图像中,顶部是读/写活动图,下面是本地文件系统列表。再往下,您可以添加 NFS 挂载点或查看日志。您甚至可以创建 RAID 设备和卷组。

网络

网络部分允许您管理防火墙和网络接口。您可以编辑防火墙规则和区域,并通过绑定、团队、桥接和 VLAN 来操作网络。

软件更新

能够远程在服务器上应用更新非常方便。即使一个家庭也可能有 5 台或 10 台计算机。但是,拥有数百或数千台机架式安装在干燥、黑暗的数据中心中的无头服务器的企业肯定需要此功能。软件更新部分列出了可供您使用的更新。

您可以选择是安装所有更新还是仅安装与安全相关的更新,Cockpit 会在安装更新时显示进度条。该过程完成后,您可以重新启动系统。

终端

主机视图中的最后一项是终端,您可以在其中执行所有常用的命令行选项。我使用终端的一种方式是克服 Cockpit 功能集中的不一致,这很可能是由于 Linux 版本差异造成的。我在运行 Ubuntu Linux 18.04 的我的媒体中心 PC上发现了这一点。在此 Ubuntu 版本中,“概述”部分标记为“系统”。它指示可用的错误修复更新,但没有用于应用更新的按钮。较新的 Ubuntu 20.04 LTS 情况并非如此,它具有预期的“概述”部分和更新工具。无论如何,都不必担心,因为我可以利用终端运行正常的 Apt 更新命令。

应用程序

您可能已经注意到我跳过了主机视图中的应用程序部分。本节值得您关注,因为它可以操作 Cockpit 服务的视图和功能。从这里,您可以安装其他功能或应用程序,例如 389 LDAP 服务器或用于收集诊断报告和内核转储或构建服务器映像的工具。机器部分启用虚拟机管理,而 Podman 提供容器管理功能。一旦 Cockpit 启动并运行,最好探索“应用程序”部分。

最终想法

Cockpit 使用安全外壳 (SSH) 客户端来访问远程服务器,因此在您创建我上面描述的统一视图的系统上可能会存在一些资源影响,因为每个托管服务器都将具有关联的 SSH 连接。

$ ps fax |grep cockpit
2064515 ?        Ssl    0:50 /usr/libexec/cockpit-tls
2064521 ?        Ssl    0:41 /usr/libexec/cockpit-ws --for-tls-proxy --port=0
2064527 ?        S      0:00  \_ /usr/libexec/cockpit-session localhost
2064537 ?        Sl     0:38      \_ cockpit-bridge
2064636 ?        S      1:37          \_ /usr/libexec/cockpit-ssh webserver
2064639 ?        S      1:37          \_ /usr/libexec/cockpit-ssh smtpserver
2064640 ?        S      1:37          \_ /usr/libexec/cockpit-ssh ftpserver
2064670 ?        Sl     0:02          \_ /usr/bin/cockpit-bridge --privileged
2076607 ?        S      0:21          \_ /usr/libexec/cockpit-ssh ldapserver
2078182 ?        S      0:10          \_ /usr/libexec/cockpit-ssh teaserver

我使用过许多像这样的操作工具,包括封闭源和开源,用于管理、监控、配置、部署和安全任务。Cockpit 是一款非常棒的工具,适合各种规模的组织。

接下来阅读什么
Alan Formy-Duval Opensource.com Correspondent
Alan 拥有 20 年的 IT 经验,主要在政府和金融部门。他最初是一名增值经销商,之后转入系统工程领域。Alan 的背景是高可用性集群应用程序。他在 Oracle Press/McGraw Hill 的《Oracle Solaris 11 系统管理》一书中撰写了“用户和组”以及“Apache 和 Web 堆栈”章节。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 International License 许可获得许可。
© . All rights reserved.