这篇文章主要为大家展示了“Linux下如何安装并使用ClusterShell”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Linux下如何安装并使用ClusterShell”这篇文章吧。

ClusterShell就是这样一种小的集群管理工具,原理是利用ssh,可以说是Linux系统下非常好用的运维利器!

如何在 Linux 上安装 ClusterShell?

ClusterShell 包在大多数发行版的官方包管理器中都可用。因此,使用发行版包管理器工具进行安装。

对于 Fedora 系统,使用DNF 命令来安装 clustershell。

$sudodnfinstallclustershell

如果系统默认是 Python 2,这会安装 Python 2 模块和工具,可以运行以下命令安装 Python 3 开发包。

$sudodnfinstallpython3-clustershell

在执行 clustershell 安装之前,请确保你已在系统上启用 EPEL 存储库。

对于 RHEL/CentOS 系统,使用 YUM 命令 来安装 clustershell。

$sudoyuminstallclustershell

如果系统默认是 Python 2,这会安装 Python 2 模块和工具,可以运行以下命令安装 Python 3 开发包。

$sudoyuminstallpython34-clustershell

对于 openSUSE Leap 系统,使用 Zypper 命令 来安装 clustershell。

$sudozypperinstallclustershell

如果系统默认是 Python 2,这会安装 Python 2 模块和工具,可以运行以下命令安装 Python 3 开发包。

$sudozypperinstallpython3-clustershell

对于 Debian/Ubuntu 系统,使用 APT-GET 命令 或 APT 命令 来安装 clustershell。

$sudoaptinstallclustershell如何在 Linux 使用 PIP 安装 ClusterShell?

可以使用 PIP 安装 ClusterShell,因为它是用 Python 编写的。

在执行 clustershell 安装之前,请确保你已在系统上启用了 Python 和 PIP。

$sudopipinstallClusterShell如何在 Linux 上使用 ClusterShell?

与其他实用程序(如 pssh 和dsh )相比,它是直接了当的优秀工具。它有很多选项可以在远程并行执行。

在开始使用 clustershell 之前,请确保你已启用系统上的无密码登录。

以下配置文件定义了系统范围的默认值。你不需要修改这里的任何东西。

$cat/etc/clustershell/clush.conf

如果你想要创建一个服务器组,那也可以。默认情况下有一些示例,请根据你的要求执行相同操作。

$cat/etc/clustershell/groups.d/local.cfg

只需按以下列格式运行 clustershell 命令即可从给定节点获取信息:

$clush-w192.168.1.4,192.168.1.9cat/proc/version192.168.1.9:Linuxversion4.15.0-45-generic([emailprotected])(gccversion7.3.0(Ubuntu7.3.0-16ubuntu3))#48-UbuntuSMPTueJan2916:28:13UTC2019192.168.1.4:Linuxversion3.10.0-957.el7.x86_64([emailprotected])(gccversion4.8.520150623(RedHat4.8.5-36)(GCC))#1SMPThuNov823:39:32UTC2018

选项:

-w: 你要运行该命令的节点。 你可以使用正则表达式而不是使用完整主机名和 IP:

$clush-w192.168.1.[4,9]uname-r192.168.1.9:4.15.0-45-generic192.168.1.4:3.10.0-957.el7.x86_64

或者,如果服务器位于同一 IP 系列中,则可以使用以下格式:

$clush-w192.168.1.[4-9]date192.168.1.6:MonMar421:08:29IST2019192.168.1.7:MonMar421:08:29IST2019192.168.1.8:MonMar421:08:29IST2019192.168.1.5:MonMar409:16:30CST2019192.168.1.9:MonMar421:08:29IST2019192.168.1.4:MonMar409:16:30CST2019

clustershell 允许我们以批处理模式运行命令。使用以下格式来实现此目的:

$clush-w192.168.1.4,192.168.1.9-bEnter'quit'toleavethisinteractivemodeWorkingwithnodes:192.168.1.[4,9]clush>hostnamectl---------------192.168.1.4---------------Statichostname:CentOS7.2daygeek.comIconname:computer-vmChassis:vmMachineID:002f47b82af248f5be1d67b67e03514cBootID:f9b37a073c534dec8b236885e754cb56Virtualization:kvmOperatingSystem:CentOSLinux7(Core)CPEOSName:cpe:/o:centos:centos:7Kernel:Linux3.10.0-957.el7.x86_64Architecture:x86-64---------------192.168.1.9---------------Statichostname:Ubuntu18Iconname:computer-vmChassis:vmMachineID:27f6c2febda84dc881f28fd145077187BootID:f176f2eb45524d4f906d12e2b5716649Virtualization:oracleOperatingSystem:Ubuntu18.04.2LTSKernel:Linux4.15.0-45-genericArchitecture:x86-64clush>free-m---------------192.168.1.4---------------totalusedfreesharedbuff/cacheavailableMem:183864121719978969Swap:204702047---------------192.168.1.9---------------totalusedfreesharedbuff/cacheavailableMem:1993352106715731473Swap:142501425clush>w---------------192.168.1.4---------------09:21:14up3:21,3users,loadaverage:0.00,0.01,0.05USERTTYFROMLOGIN@IDLEJCPUPCPUWHATdaygeek:0:006:02?xdm?1:280.30s/usr/libexec/gnome-session-binary--sessiongnome-classicdaygeekpts/0:006:033:17m0.06s0.06sbashdaygeekpts/1192.168.1.606:0352:260.10s0.10s-bash---------------192.168.1.9---------------21:13:12up3:12,1user,loadaverage:0.08,0.03,0.00USERTTYFROMLOGIN@IDLEJCPUPCPUWHATdaygeekpts/0192.168.1.620:4229:410.05s0.05s-bashclush>quit

如果要在一组节点上运行该命令,请使用以下格式:

$clush-w@devuptimeor$clush-gdevuptimeor$clush--group=devuptime192.168.1.9:21:10:10up3:09,1user,loadaverage:0.09,0.03,0.01192.168.1.4:09:18:12up3:18,3users,loadaverage:0.01,0.02,0.05

如果要在多个节点组上运行该命令,请使用以下格式:

$clush-w@dev,@uatuptimeor$clush-gdev,uatuptimeor$clush--group=dev,uatuptime192.168.1.7:07:57:19up59min,1user,loadaverage:0.08,0.03,0.00192.168.1.9:20:27:20up1:00,1user,loadaverage:0.00,0.00,0.00192.168.1.5:08:57:21up59min,1user,loadaverage:0.00,0.01,0.05

clustershell 允许我们将文件复制到远程计算机。将本地文件或目录复制到同一个远程节点:

$clush-w192.168.1.[4,9]--copy/home/daygeek/passwd-up.sh

我们可以通过运行以下命令来验证它:

$clush-w192.168.1.[4,9]ls-lh/home/daygeek/passwd-up.sh192.168.1.4:-rwxr-xr-x.1daygeekdaygeek159Mar409:00/home/daygeek/passwd-up.sh192.168.1.9:-rwxr-xr-x1daygeekdaygeek159Mar420:52/home/daygeek/passwd-up.sh

将本地文件或目录复制到不同位置的远程节点:

$clush-guat--copy/home/daygeek/passwd-up.sh--dest/tmp

我们可以通过运行以下命令来验证它:

$clush--group=uatls-lh/tmp/passwd-up.sh192.168.1.7:-rwxr-xr-x.1daygeekdaygeek159Mar607:44/tmp/passwd-up.sh

将文件或目录从远程节点复制到本地系统:

$clush-w192.168.1.7--rcopy/home/daygeek/Documents/magi.txt--dest/tmp

我们可以通过运行以下命令来验证它:

$ls-lh/tmp/magi.txt.192.168.1.7-rw-r--r--1daygeekdaygeek35Mar620:24/tmp/magi.txt.192.168.1.7


以上是“Linux下如何安装并使用ClusterShell”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!