本文将介绍在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命令来实现此目的:
如果要在一组节点上运行该命令,请使用以下: $ 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
相关主题 |