【转】Hadoop 操作备忘

原文链接:http://blog.falood.me/2012/01/hadoop.html

 

DateNode 测试(添加、删除、灾难)
测试前:
master.hadoop:  248
secondaryname.hadoop:  106
slave104.hadoop:   104
slave110.hadoop:   110
slave250.hadoop:   250 (准备加入,不在集群内)

格式化DateNode:
hadoop namenode -format

平衡DateNode:
hadoop balancer

添加DataNode(添加slave250.hadoop):
在 slave250.hadoop 部署与slave104相同的hadoop环境
在 master.hadoop $HADOOP_HOME/conf/slaves 加入 slave250.hadoop
在 master.hadoop $HADOOP_HOME/bin 执行 start-all.sh
添加完成
完成标志: DFS 管理页面 Live Nodes 里新加了 slave250.hadoop

删除DataNode(删除slave110.hadoop):
在 master.hadoop $HADOOP_HOME/conf/dfs.hosts.exclude 文件添加 slave110.hadoop
在 master 执行 hadoop dfsadmin -refreshNodes
查看 DFS 管理页面  Decommissioning Nodes 变为 1,说明正在执行删除 slave110.hadoop 操作
等待 Decommissioning Nodes 变成0, Dead Nodes 变为 1,说明 slave110.hadoop 删除操作完成
在 slave110.hadoop 机器上 kill 掉 hadoop 的相关进程
删除完成
完成标志: DFS管理页面 Live Nodes  看不到 slave110.hadoop,Configured Capacity 减少相应的磁盘空间

灾难测试(强行删除 slave104.hadoop 的 hdfs 数据目录):
hadoop 自动识别了灾难,Dead Nodes 数量变为 1,此时数据正常,运行 mapreduce 程序正常
灾难恢复: 在 slave104.hadoop 机器上 kill 掉 hadoop 的相关进程,清空/新建 hdfs 数据目录,在 master.hadoop $HADOOP_HOME/bin 执行 start-all.sh
完成标志: DFS 管理页面 Live Nodes 里新加了 slave104.hadoop

master 故障测试(冷备方案NameNode故障手动切换):
1. 不切换 NameNode 主机。
   1).复制 SecondaryNameNode 的 fs.checkpoint.dir 目录的数据到 NameNode 的对应目录。
   2).清空 NameNode 的 dfs.name.dir 目录的数据,保留空目录。
   3).在 NameNode 主机执行 hadoop namenode -importCheckpoint 。
   4).执行 hadoop fsck /  检查文件系统,"The filesystem under path '/' is HEALTHY" 为正常结果。
   5).结束 步骤 3). 中的命令,Ctrl + C
   6).清空 NameNode 的 fs.checkpoint.dir 目录的数据
   7). start-dfs.sh 正常启动 datenode
2. 切换 NameNode 主机
   0). 修改 DNS 服务器,把 master.hadoop 指向新的 NameNode
   1). 2). 3). 同上
   3.1). 同上 5). 中的操作,结束 checkpoint
   3.2). stop-all.sh 停掉 hadoop 集群
   跳过 4). 5).
   6). 同上
   7). start-all.sh  启动 hadoop 集群
   8). 同上 4). 中的操作检查数据的完整性

### Hadoop环境下HBase安装与配置教程 #### 一、准备阶段 为了确保HBase能够在Hadoop环境中顺利运行,前期准备工作至关重要。这包括但不限于准备好CentOS系统并完成基本的网络设置[^1]。 #### 二、Java环境搭建 由于Hadoop以及HBase均基于Java开发,因此需要先在所有计划部署服务的机器上安装适当版本的JDK,并将其加入到系统的`PATH`路径中以便于后续操作。 #### 三、SSH无密码登录配置 为了让集群内的各个节点之间可以无障碍通信,需通过公钥认证的方式实现无需输入密码即可相互访问的功能。此过程对于简化管理和维护工作非常重要。 #### 四、Hadoop集群构建 按照官方文档指导完成Hadoop集群的建立,重点在于调整核心参数以适应实际应用场景需求。完成后可通过启动后的Web界面来初步检验集群状态是否正常。 #### 五、ZooKeeper服务架设 考虑到分布式协调的需求,建议单独设立一组或多组独立运作的ZooKeeper实例作为外部依赖组件供HBase调用。这样做不仅有助于提高整体架构灵活性,还能增强数据一致性保障能力。 #### 六、HBase具体安装备忘录 针对单机模式下的快速入门场景,这里提供一份更为详细的步骤说明: - **下载软件包**:获取最新稳定版HBase压缩文件至目标服务器; - **解压归档**:将上述得到的数据集放置在一个合适的位置展开; - **编辑配置项** 修改`conf/hbase-env.sh`脚本中的JAVA_HOME指向本地已有的JRE位置。 更新`conf/hbase-site.xml`文档定义必要的属性值,比如指定zookeeper连接字符串等信息[^2]。 编辑`regionservers`列表添加参与协作的工作站名称或IP地址[^2]。 - **设定全局变量** 向`.bashrc`追加如下两行代码片段用于注册新工具链: ```shell export HBASE_HOME=/opt/servers/hbase-1.3.1 export PATH=$PATH:$HBASE_HOME/bin ``` 最后记得使更改生效即刻加载新的Shell会话窗口。 #### 七、多节点集群扩展方案概览 当业务规模扩大时,则要考虑向现有体系内引入更多计算资源形成更大范围的合作关系网路。此时应参照特定发行版给出的最佳实践手册逐步推进实施进度直至达到预期效果为止[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值