对比各节点host 与 标准节点host差异脚本
把各节点host拷贝到一台节点
这可以采用读主机名配置的方式 我这里偷懒了
echo 'starting'
ssh hadoop01 "cp /etc/hosts ~/hadoop01-hosts && scp -P50022 ~/hadoop01-hosts hadoop01:~/jxx"
ssh hadoop02 "cp /etc/hosts ~/hadoop02-hosts && scp -P50022 ~/hadoop02-hosts hadoop01:~/jxx"
ssh hadoop03 "cp /etc/hosts ~/hadoop03-hosts && scp -P50022 ~/hadoop03-hosts hadoop01:~/jxx"
ssh m6-data-hadoop04 "cp /etc/hosts ~/hadoop04-hosts && scp -P50022 ~/hadoop04-hosts hadoop01:~/jxx"
ssh m6-data-hadoop05 "cp /etc/hosts ~/hadoop05-hosts && scp -P50022 ~/hadoop05-hosts hadoop01:~/jxx"
ssh m6-data-hadoop11 "cp /etc/hosts ~/hadoop11-hosts && scp -P50022 ~/hadoop11-hosts hadoop01:~/jxx"
ssh m6-data-hadoop12 "cp /etc/hosts ~/hadoop12-hosts && scp -P50022 ~/hadoop12-hosts hadoop01:~/jxx"
ssh m6-data-hadoop14 "cp /etc/hosts ~/hadoop14-hosts && scp -P50022 ~/hadoop14-hosts hadoop01:~/jxx"
ssh m6-data-hadoop15 "cp /etc/hosts ~/hadoop15-hosts && scp -P50022 ~/hadoop15-hosts hadoop01:~/jxx"
ssh m6-data-hadoop16 "cp /etc/hosts ~/hadoop16-hosts && scp -P50022 ~/hadoop16-hosts hadoop01:~/jxx"
ssh m6-data-hadoop18 "cp /etc/hosts ~/hadoop18-hosts && scp -P50022 ~/hadoop18-hosts hadoop01:~/jxx"
ssh m6-data-hadoop19 "cp /etc/hosts ~/hadoop19-hosts && scp -P50022 ~/hadoop19-hosts hadoop01:~/jxx"
ssh m6-data-hadoop20 "cp /etc/hosts ~/hadoop20-hosts && scp -P50022 ~/hadoop20-hosts hadoop01:~/jxx"
ssh m6-data-hadoop21 "cp /etc/hosts ~/hadoop21-hosts && scp -P50022 ~/hadoop21-hosts hadoop01:~/jxx"
ssh m6-data-hadoop22 "cp /etc/hosts ~/hadoop22-hosts && scp -P50022 ~/hadoop22-hosts hadoop01:~/jxx"
ssh m6-data-hadoop06 "cp /etc/hosts ~/hadoop06-hosts && scp -P50022 ~/hadoop06-hosts hadoop01:~/jxx"
ssh m6-data-hadoop07 "cp /etc/hosts ~/hadoop07-hosts && scp -P50022 ~/hadoop07-hosts hadoop01:~/jxx"
echo 'ending'
diff 各节点host
其实就是标准host 与 其他host 取差集 看其他节点host有无漏配情况
# encoding=utf8
import re
import os
files_list = []
base_host = []
# 处理基础host,作为标准
try:
f = open('/home/hadoop/jxx/base_host', 'r')
for line in f.readlines():
line = line.strip()
if line != '' and not line.startswith('#'):
splits = re.split('\s+', line.strip())
ip = splits[0].strip()
host = splits[1].strip()
base_host.append(ip + ' ' + host)
finally:
f.close()
# 遍历所有'hosts',读取到file列表
files = os.listdir('/home/hadoop/jxx/')
for file in files:
if file.endswith('-hosts'):
files_list.append(file)
files_list.sort()
print 'diff host length',len(files_list)
for file in files_list:
print file
print '#' * 50
for file in files_list:
old_host = []
new_host = []
try:
print '>' * 10, file, '\n'
f = open(file, 'r')
for line in f.readlines():
if line.strip() != '' and not line.strip().startswith('#') and not line.strip().startswith('ff02') and not line.strip().startswith('::') and 'data0' not in line:
old_host.append(line)
for line in old_host:
splits = re.split(r'\s+', line.strip())
ip = splits[0].strip()
count = 0
for em in splits:
if count != 0:
str = ' '.join([ip, em.strip()])
new_host.append(str)
count += 1
if len(new_host) != 0:
print set(base_host).difference(set(new_host)), '\n'
finally:
f.close()
base_host.sort()
print '========== %s ==========' % ('base_host')
for line in base_host:
print line
print '#' * 50
对比各节点host 与 标准节点host差异脚本的更多相关文章
- PostgreSQL 一主两备节点(两备节点为同步节点)故障恢复
PostgreSQL 同步复制及故障恢复 10.2.208.10:node1:master 10.2.208.11:node2:standby1 同步 10.2.208.12:node3:stand ...
- RabbitMQ-rabbitmqctl多机多节点和单机多节点集群搭建(五)
准备 1.准备3台物理机 我这里通过本地机和2台虚拟模拟我是mac通过(Parallel Desktop 实现) 2.按照签名的liux安装步骤在3台机器都安装rabiitMq 3.将任意一节点的co ...
- ROS笔记——创建简单的主题发布节点和主题订阅节点
在安装好ROS后,接着学习如何创建节点和节点之间的通信方式,以一个简单的主题发布节点和主题订阅节点说明. 节点是连接ROS网络等可执行文件,是实现某些功能的软件包,也是一个主要计算执行的进程. 一.创 ...
- 红黑树之 原理和算法详细介绍(阿里面试-treemap使用了红黑树) 红黑树的时间复杂度是O(lgn) 高度<=2log(n+1)1、X节点左旋-将X右边的子节点变成 父节点 2、X节点右旋-将X左边的子节点变成父节点
红黑树插入删除 具体参考:红黑树原理以及插入.删除算法 附图例说明 (阿里的高德一直追着问) 或者插入的情况参考:红黑树原理以及插入.删除算法 附图例说明 红黑树与AVL树 红黑树 的时间复杂度 ...
- C# 复制指定节点的所有子孙节点到新建的节点下
XML结构: 新建一个mask_list节点,一个procedure节点,将上面的mask_list和procedure节点的所有子孙节点添加到新建的mask_list和procedure节点 Xml ...
- 深入理解DOM节点类型第三篇——注释节点和文档类型节点
× 目录 [1]注释节点 [2]文档类型 前面的话 把注释节点和文档类型节点放在一起是因为IE8-浏览器的一个bug.IE8-浏览器将标签名为"!"的元素视作注释节点,所以文档声明 ...
- Query节点操作,jQuery插入节点,jQuery删除节点,jQuery Dom操作
一.创建节点 var box = $('<div>节点</div>'); //创建一个节点,或者var box = "<div>节点</div> ...
- T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)
-- 查找所有父节点with tab as( select Type_Id,ParentId,Type_Name from Sys_ParamType_V2_0 where Type_Id=316-- ...
- JQuery_DOM 节点操作之包裹节点
jQuery 提供了一系列方法用于包裹节点,那包裹节点是什么意思呢?其实就是使用字符串代码将指定元素的代码包含着的意思. <script type="text/javascript&q ...
随机推荐
- OwnCloud 开源网盘
https://www.getnas.com/freenas-owncloud/ FreeNAS 插件:OwnCloud 开源网盘 ownCloud 分为服务器端和客户端两个部分,服务器端可以在 Fr ...
- C# 生成时间戳
编写网络程序中难免用到一些时间戳. 早前不知道哪里复制过一个代码,如下: public static string GetTimeStamp() { TimeSpan ts = DateTime.Ut ...
- [蓝桥杯]ALGO-86.算法训练_矩阵乘法
问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s,n(均不超过200). 接下来m行,每行s个空格隔开的整数,表示矩阵A(i,j ...
- 【剑指offer】两个栈实现队列
用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. public class Solution { Stack<Integer> stack ...
- Excel导入MS SQL SERVER 操作
关于Excel导入到sql操作的相关问题总结: 一.大批量数据导入 方法1.从Excel大批量数据导入时我们可以使用sql里面有一个batch copy的功能 方法2.在sql中建一个table ty ...
- Levenberg-Marquardt 的 MATLAB 代码
参考资料: 1,<精通MATLAB最优化计算(第2版)>作者:龚纯 等 的 第9章 9.3 小节 L-M 法 2,<数值分析> 作者:Timothy Sauer 的 第4章 4 ...
- 利用原生js的Dom操作实现简单的ToDoList的效果
效果如下: 前端及js代码如下: <!DOCTYPE html> <html lang="en"> <head> <meta charse ...
- [UE4]判断UI动画播放方向
使用一个变量来记录播放的方向.
- SCCM 2012 R2实战系列之十三:辅助站点部署
由于最近几个月一直处于AD升级项目中,很久没有更新SCCM的技术文档了.SCCM 2012中的辅助站点部署方法还是比较特别的,需要注意的地方也非常多,今天跟大家分享辅助站点的具体部署和配置方法. 1. ...
- 第三章: web界面操作
3.1 zabbix的web安装 3.1.1 使用浏览器访问 http://10.0.0.61/zabbix/setup.php 在检测信息时,可查看具体的报错信息进行不同的解决 选择mysql数据库 ...