通过 Web 浏览器使用 Cockpit 监控和管理 Linux 服务器

本指南解释了什么是 Cockpit 工具以及如何在各种 Linux 发行版中安装 Cockpit,最后解释了如何通过 Web 浏览器使用 Cockpit 来管理和管理 Linux 服务器。

什么是驾驶舱?

座舱 是一个免费的开源服务器管理工​​具,可让您通过 Web 浏览器轻松监控和管理 Linux 服务器。 它帮助系统管理员执行简单的管理任务,例如管理用户、启动容器、管理存储、配置网络、检查日志等。

在终端和 Cockpit Web 界面之间切换没什么大不了的。 您可以从 Cockpit 或主机的终端管理系统的服务。

Cockpit 还有一个嵌入式终端。 说为 example,如果您在终端中启动了服务,则可以从 Cockpit 中停止它。 同样,如果终端出现错误,可以在 Cockpit 日志界面中看到,反之亦然。

Cockpit 能够同时监控多个 Linux 服务器。 您需要做的只是添加您想要监控的系统,Cockpit 会照顾它们。

在 Linux 中安装 Cockpit

Cockpit 最初是为基于 RPM 的系统开发的,例如 RHEL、CentOS 和 Fedora. 它现在已被移植到其他 Linux 发行版,例如 Arch Linux、Debian 和 Ubuntu。

在 Arch Linux 上安装 Cockpit

Cockpit 在 Arch Linux 的官方存储库中可用。 要在 Arch Linux 及其衍生产品(如 EndeavourOS 和 Manjaro Linux)上安装 Cockpit,请运行:

$ sudo pacman -S cockpit

此外,您应该安装“cockpit-machines”软件包,它可以从 Web 浏览器管理虚拟机。

$ sudo pacman -S cockpit-machines

安装后,使用命令启动并启用座舱服务:

$ sudo systemctl enable --now cockpit.socket

在 CentOS 上安装 Cockpit

Cockpit 在 CentOS 7 和更新版本的默认存储库中可用。 要在 CentOS 7 中安装 Cockpit,请运行:

$ sudo yum install cockpit cockpit-machines

在 CentOS 8 上:

$ sudo dnf install cockpit cockpit-machines

安装后,使用命令启动座舱服务:

$ sudo systemctl enable --now cockpit.socket

如果您想从其他远程系统访问 Cockpit Web 仪表板,您需要允许 Cockpit 服务通过防火墙。 为此,请运行:

$ sudo firewall-cmd --permanent --zone=public --add-service=cockpit
$ sudo firewall-cmd --reload

安装驾驶舱 Fedora

Cockpit 预装在 Fedora 服务器。 如果没有安装,请安装 Cockpit Fedora 使用命令:

$ sudo dnf install cockpit cockpit-machines

安装后,使用命令启动座舱服务:

$ sudo systemctl enable --now cockpit.socket

如果要访问 Cockpit Web 仪表板,您需要允许 Cockpit 服务通过防火墙。 为此,请运行:

$ sudo firewall-cmd --permanent --zone=public --add-service=cockpit
$ sudo firewall-cmd --reload

在 RHEL 上安装 Cockpit

在 Red Hat Enterprise Linux (RHEL) 系统中,确保您已启用 [Extras] 存储库:

$ sudo subscription-manager repos --enable rhel-7-server-extras-rpms

然后,使用命令安装 Cockpit:

$ sudo yum install cockpit cockpit-machines

在 RHEL 8 上:

$ sudo dnf install cockpit cockpit-machines

安装后,使用命令启动座舱服务:

$ sudo systemctl enable --now cockpit.socket

如果要访问 Cockpit Web 仪表板,您需要允许 Cockpit 服务通过防火墙。 为此,请运行:

$ sudo firewall-cmd --permanent --zone=public --add-service=cockpit
$ sudo firewall-cmd --reload

在 Debian 上安装 Cockpit

座舱 可在 不稳定 并且在 向后移植 适用于 Debian 8 (Jessie) 和 Debian 9 (Stretch)。

对于 Debian 9,启用 [backports] 存储库作为 像下面这样的用户:

# echo 'deb https://deb.debian.org/debian stretch-backports main' > /etc/apt/sources.list.d/backports.list

对于 Debian 8,启用 backports-sloppy 存储库

# echo 'deb https://deb.debian.org/debian jessie-backports-sloppy main' > /etc/apt/sources.list.d/backports.list

最后,使用命令安装座舱:

# apt-get update
# apt-get install cockpit cockpit-machines

在 Ubuntu 上安装 Cockpit

驾驶舱可在 Ubuntu 17.04 及更高版本,因此您可以使用以下命令安装它:

$ sudo apt-get install cockpit cockpit-machines

驾驶舱可作为 官方反向移植 适用于 16.04 LTS 及更高版本。 默认情况下启用反向移植,但如果您自定义了 apt 源,您可能需要 手动启用它们.

启用反向移植后,运行以下命令在 Ubuntu 16.04 上安装 Cockpit:

$ sudo apt-get install cockpit cockpit-machines

Cockpit 还为旧 Ubuntu 版本提供了官方 PPA。 添加 PPA 并安装 Cockpit,如下所示。

$ sudo add-apt-repository ppa:cockpit-project/cockpit
$ sudo apt-get update
$ sudo apt-get install cockpit cockpit-machines

推荐下载免费电子书:“GNU/Linux 高级管理”

在 openSUSE 上安装 Cockpit

Cockpit 在 openSUSE Leap 和 Tumbleweed 版本的官方存储库中可用。

要在 openSUSE 中安装 Cockpit,请运行:

$ sudo zypper in cockpit

启用并启动驾驶舱服务:

$ sudo systemctl enable cockpit.socket
$ sudo systemctl start cockpit.socket

如有必要,通过防火墙允许驾驶舱服务:

$ sudo firewall-cmd --permanent --zone=public --add-service=cockpit
$ sudo firewall-cmd --reload

通过 Web 浏览器使用 Cockpit 监控和管理 Linux 服务器

安装后,打开您的网络浏览器并导航到 https://localhost:9090 (或者) https://IP地址:9090. 您会对 Cockpit 的登录屏幕感到满意。

Ubuntu 20.04 LTS 服务器上的 Cockpit 登录界面:

Ubuntu 20.04 LTS 上的 Cockpit 登录界面

使用您的系统用户的任何一种凭据登录。

确保您已选中显示以下内容的框 – 将我的密码重复用于特权任务 直接从 Cockpit 仪表板执行管理任务。 如果不选择此选项,则每次运行管理任务时可能都需要输入密码。

CentOS 8 服务器上的 Cockpit 登录界面:

CentOS 8 服务器上的 Cockpit 登录界面

这是我的 Cockpit 仪表板在 CentOS 8 服务器中的样子:

CentOS 8 服务器中的驾驶舱仪表板

CentOS 8 服务器中的驾驶舱仪表板

正如您在上面的屏幕截图中看到的,Cockpit 的 系统信息 屏幕显示您的服务器详细信息,以及 CPU、内存、磁盘和网络流量的图表。

在此部分,您可以监控服务器的 CPU 使用情况、内存和交换使用情况、磁盘使用情况和实时网络流量。 您甚至可以从这里更新您的服务器或重新启动它。

以下是 Ubuntu 20.04 LTS 中 Cockpit 仪表板的外观:

Ubuntu 20.04 服务器中的 Cockpit 仪表板

Ubuntu 20.04 服务器中的 Cockpit 仪表板

日志部分

日志部分显示 Linux 服务器的错误、警告和其他重要日志详细信息的列表。

Cockpit 中的日志部分

Cockpit 中的日志部分

存储部分

此部分显示可用硬盘驱动器的数量、文件系统详细信息、存储日志和磁盘读写使用情况。

驾驶舱中的存储部分

驾驶舱中的存储部分

网络部分

此部分显示可用网络接口的列表和每张卡的 IP 地址。 这是我们配置网络设置的地方,例如创建Vlan、网络绑定和网桥等。在本节中,我们还可以查看网络日志、网络接口卡的传入和传出流量以及发送和接收可视化图表。

Cockpit 中的网络部分

Cockpit 中的网络部分

帐户部分

在此部分,您可以创建新用户、删除现有用户、更改用户密码等。

Cockpit 中的帐户部分

Cockpit 中的帐户部分

我们也可以从这里断开任何 SSH 会话。

服务部分

此部分显示活动和非活动服务的列表。

Cockpit 中的服务部分

Cockpit 中的服务部分

驾驶舱终端

Cockpit Web 控制台的另一个显着特点是它有一个内置的终端,它允许您执行各种命令行操作。 您不需要通过 SSH 连接到您的服务器,也不需要安装任何远程通信工具。 我们可以使用 Cockpit 终端来执行所有命令行操作,就像我们在主机中的普通终端中一样。

驾驶舱终端

驾驶舱终端

如何在 Cockpit 仪表板中添加新主机

Cockpit 可以同时管理多个服务器。

登录 Cockpit Web 仪表板。

如果您在 Ubuntu 上,请确保您已选中显示的选项 “将我的密码重复用于特权任务” 在密码字段下。 这允许您通过 Cockpit 运行任何管理操作。 如果您不选中此选项,则无法将任何远程系统添加到驾驶舱的仪表板或无法执行任何管理操作。 在 RHEL、CentOS 系统中,您可以直接以 root 用户登录,因此您不必勾选此选项。

登录为 admin Ubuntu Cockpit 中的用户

登录为 admin Ubuntu Cockpit 中的用户

单击左侧窗格中的“仪表板”按钮以查看 Cockpit 管理的服务器列表。 您将在“服务器”选项卡下看到所有服务器。

要添加新服务器,请单击 + (加号)登录“服务器”选项卡。

查看 Cockpit 管理的所有 linux 系统

查看 Cockpit 管理的所有 linux 系统

Enter 您要监控的远程服务器的 IP 地址,然后单击 添加.

将新机器添加到 Cockpit 仪表板

将新机器添加到 Cockpit 仪表板

您将看到未知主机密钥警告消息。 只需单击连接按钮即可添加机器。

将远程 Linux 机器连接到 Cockpit

将远程 Linux 机器连接到 Cockpit

Enter 您的远程系统的用户名和密码。

Enter  远程系统的登录详细信息以将其添加到 Cockpit

Enter 远程系统的登录详细信息以将其添加到 Cockpit

恭喜! 我们已成功将新的 Linux 远程系统添加到 Cockpit 仪表板。 您将在仪表板的服务器选项卡下看到新添加的系统。

Cockpit 添加了新的 Linux 主机

Cockpit 添加了新的 Linux 主机

单击远程系统的名称以从您的 Cockpit 仪表板开始对其进行监控。

从 Cockpit 监控远程 Linux 系统

从 Cockpit 监控远程 Linux 系统

在这里,我使用 Cockpit 从 Ubuntu 20.04 LTS 服务器监控 CentOS 8 服务器。

同样,您可以添加任意数量的系统来监控和管理。 一旦您获得了对远程系统的控制权,您就可以通过驾驶舱从本地系统完全管理它。 此外,您可以通过 Cockpit 终端添加、删除和管理用户、添加、删除、配置应用程序,重新启动或关闭远程系统。

  • 使用 Cockpit Web 控制台管理 KVM 虚拟机
  • 在 Linux 上安装 NetData 性能监控工具
  • 多普勒——零配置远程监测工具
  • 如何在 Linux 中监控用户活动
  • 如何在 Linux 中快速监控多台主机

结论

Cockpit 适合新手和经验丰富的 Linux 管理员。 Cockpit 的安装和使用相当简单直接。 如果您有一个充满远程系统的网络,请将它们全部添加到驾驶舱仪表板并像专业人士一样管理它们。

资源: