2024-06-28 16:03:16 发布
网友
集群中有10个以上的节点。我已经使用Cloudera(YARN、HBase、Hue、hadoopfs、Spark、Flink)在集群上安装了一个Hadoop堆栈。有没有一种简单的方法可以收集所有节点的全局统计信息(在CPU使用率、内存使用率和网络使用率方面)并用Python读出?使用Python的目的是让我完全自由地指定绘图,并确保报表中的打印样式统一。我可以使用哪种软件来完成这项工作?它不需要分发,只要一个简单的库就足够了。在
为此,我建议考虑使用ansible。 下面是一个简单的playbook,它在inventory file中指定的主机上收集一些数据并将其附加到本地文件:
- hosts: all remote_user: your_user tasks: - name: collect load average shell: cat /proc/loadavg register: cluster_node_la - name: write to local disk lineinfile: dest=/tmp/cluster_stat create=yes line="{{ ansible_fqdn }}:{{ cluster_node_la.stdout_lines }}" delegate_to: 127.0.0.1
您可以按如下方式运行它: ansible-playbook -i ansible-inventory stats-playbook.yml forks=1
ansible-playbook -i ansible-inventory stats-playbook.yml forks=1
当然,根据你将如何存储收集到的数据,它的实现方式可能会有所不同,但我认为总体思路是清楚的。总之,在ansible中有很多方法可以解决这个问题。在
此外,ansible有python API,您可以直接从python中执行大多数操作!一、 e,这是我们收集集群配置的方法:
为此,我建议考虑使用ansible。 下面是一个简单的playbook,它在inventory file中指定的主机上收集一些数据并将其附加到本地文件:
您可以按如下方式运行它:
ansible-playbook -i ansible-inventory stats-playbook.yml forks=1
当然,根据你将如何存储收集到的数据,它的实现方式可能会有所不同,但我认为总体思路是清楚的。总之,在ansible中有很多方法可以解决这个问题。在
此外,ansible有python API,您可以直接从python中执行大多数操作!一、 e,这是我们收集集群配置的方法:
^{pr2}$相关问题 更多 >
编程相关推荐