云网牛站
所在位置:首页 > Linux教程 > 在Linux系统上安装及使用ClusterShell的方法

在Linux系统上安装及使用ClusterShell的方法

2019-03-07 10:41:50作者:乐时稿源:云网牛站

本文将介绍在Linux系统上安装及使用ClusterShell的方法,它是用Python编写的,它需要Python(v2.6+或v3.4+)才能在你的系统上运行,主要目标是通过为开发人员提供轻量级但可扩展的Python API来改进高性能集群的管理,还提供了clush、clubak和cluset/nodeset,方便的命令行工具。

 

在Linux上安装ClusterShell

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

对于Fedora系统,请使用DNF来安装clustershell:

$ sudo dnf install clustershell

安装Python 2模块和工具,如果它是你系统上的默认设置,则运行以下命令在Fedora System上安装Python 3:

$ sudo dnf install python3-clustershell

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

对于RHEL/CentOS系统,请使用YUM安装clustershell:

$ sudo yum install clustershell

安装Python 2模块和工具,如果它是你系统的默认设置,则运行以下命令在CentOS/RHEL System上安装Python 3:

$ sudo yum install python34-clustershell

对于openSUSE Leap系统,使用Zypper安装clustershell:

$ sudo zypper install clustershell

安装Python 2模块和工具,如果它是你系统的默认设置,则运行以下命令在OpenSUSE System上安装Python 3:

$ sudo zypper install python3-clustershell

对于Debian/Ubuntu系统,请使用APT-GET或APT来安装clustershell:

$ sudo apt install clustershell

 

使用PIP在Linux中安装ClusterShell

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

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

$ sudo pip install ClusterShell

参考:在Ubuntu 18.04系统中安装pip并使用pip命令

 

在Linux上使用ClusterShell

与其他实用程序(如pssh和dsh)相比,它是直接且令人敬畏的工具,它有很多选项可以并行执行远程执行。

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

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

$ cat /etc/clustershell/clush.conf

如果要创建服务器组,默认情况下,有一些示例是可用的,请根据你的要求执行相同操作:

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

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

$ clush -w 192.168.1.4,192.168.1.9 cat /proc/version

192.168.1.9: Linux version 4.15.0-45-generic (buildd@lgw01-amd64-031) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019

192.168.1.4: Linux version 3.10.0-957.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Thu Nov 8 23:39:32 UTC 2018

选项:-w:节点运行命令的位置。

可以使用正则表达式而不是使用完整主机名和IP:

$ clush -w 192.168.1.[4,9] uname -r

192.168.1.9: 4.15.0-45-generic

192.168.1.4: 3.10.0-957.el7.x86_64

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

$ clush -w 192.168.1.[4-9] date

192.168.1.6: Mon Mar  4 21:08:29 IST 2019

192.168.1.7: Mon Mar  4 21:08:29 IST 2019

192.168.1.8: Mon Mar  4 21:08:29 IST 2019

192.168.1.5: Mon Mar  4 09:16:30 CST 2019

192.168.1.9: Mon Mar  4 21:08:29 IST 2019

192.168.1.4: Mon Mar  4 09:16:30 CST 2019

clustershell允许我们以批处理模式运行命令,使用clush -w 192.168.1.4,192.168.1.9 -b命令来实现此目的:

在Linux系统上安装及使用ClusterShell的方法

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

$ clush -w @dev uptime

或者:

$ clush -g dev uptime

或者:

$ clush --group=dev uptime

192.168.1.9:  21:10:10 up  3:09,  1 user,  load average: 0.09, 0.03, 0.01

192.168.1.4:  09:18:12 up  3:18,  3 users,  load average: 0.01, 0.02, 0.05

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

$ clush -w @dev,@uat uptime

或者:

$ clush -g dev,uat uptime

或者:

$ clush --group=dev,uat uptime

192.168.1.7:  07:57:19 up 59 min,  1 user,  load average: 0.08, 0.03, 0.00

192.168.1.9:  20:27:20 up  1:00,  1 user,  load average: 0.00, 0.00, 0.00

192.168.1.5:  08:57:21 up 59 min,  1 user,  load average: 0.00, 0.01, 0.05

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

$ clush -w 192.168.1.[4,9] --copy /home/ywnz/passwd-up.sh

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

$ clush -w 192.168.1.[4,9] ls -lh /home/ywnz/passwd-up.sh

192.168.1.4: -rwxr-xr-x. 1 ywnz ywnz 159 Mar  4 09:00 /home/ywnz/passwd-up.sh

192.168.1.9: -rwxr-xr-x 1 ywnz ywnz 159 Mar  4 20:52 /home/ywnz/passwd-up.sh

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

$ clush -g uat --copy /home/ywnz/passwd-up.sh --dest /tmp

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

$ clush --group=uat ls -lh /tmp/passwd-up.sh

192.168.1.7: -rwxr-xr-x. 1 ywnz ywnz 159 Mar  6 07:44 /tmp/passwd-up.sh

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

$ clush -w 192.168.1.7 --rcopy /home/ywnz/Documents/magi.txt --dest /tmp

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

$ ls -lh /tmp/magi.txt.192.168.1.7

-rw-r--r-- 1 ywnz ywnz 35 Mar  6 20:24 /tmp/magi.txt.192.168.1.7

 

相关主题

在CentOS 7/Ubuntu 16.04/Debian 9/macOS上安装Python 3.6的方法

精选文章
热门文章