网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
dfs.ha.fencing.methods sshfence dfs.ha.fencing.ssh.private-key-files /root/.ssh/id_rsa dfs.journalnode.edits.dir /hadoopdata/ha/journal dfs.ha.automatic-failover.enabled true ```配置core-site.xml文件
修改hadoop.tmp.dir的路劲,以免与完全分布式路径起冲突
<!--注意更改下 hadoop.tmp.dir 的路径,与node的名称【类似一个域名多ip】-->
<property>
<name>fs.defaultFS</name>
<value>hdfs://mycluster</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hdata/ha</value>
</property>
<property>
<name>hadoop.http.staticuser.user</name>
<value>root</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>node02:2181,node03:2181,node04:2181</value>
</property>
配置workers文件
workers文件,里面写上从节点所在的主机名
编辑命令:vi workers
在文件中编写如下内容
node02
node03
node04
文件分发
使用scp命令下发hadoop-3.2.1到node02、node03、node04上
文件分发命令如下:
scp -r hadoop-3.2.1 root@node02:/root
scp -r hadoop-3.2.1 root@node03:/root
scp -r hadoop-3.2.1 root@node04:/root
配置hadoop3环境变量
编辑文件命令:vi /etc/profile
在文件中添加如下红色部分内容
export JAVA_HOME=/usr/java/jdk1.8.0_60
export HADOOP_HOME=/root/hadoop-3.2.1
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin: H A D O O P _ H O M E / b i n : HADOOP\_HOME/bin: HADOOP_HOME/bin:HADOOP_HOME/sbin
/etc/profile文件分发
scp /etc/profile node02:/etc/
scp /etc/profile node03:/etc/
scp /etc/profile node04:/etc/
node02、node03、node4重新加载 /etc/profile文件
source /etc/profile
Zookeeper集群搭建
zookeeper安装在node02、node03、node04三台虚拟机上
将zookeeper-3.4.6.tar.gz安装包上传到node02上
解压安装包
命令:tar -zxvf zookeeper-3.4.6.tar.gz
配置zookeeper环境
编辑文件命令:vi /etc/profile
添加如下红色部分命令
export ZOOKEEPER_HOME=/root/zookeeper-3.4.6
export PATH= P A T H : PATH: PATH:JAVA_HOME/bin: H A D O O P _ H O M E / b i n : HADOOP\_HOME/bin: HADOOP_HOME/bin:HADOOP_HOME/sbin:$ZOOKEEPER_HOME/bin
配置zookeeper文件
进入zookeeper配置文件所在目录
进入文件命令:cd zookeeper-3.4.6/conf/
修改命令:mv zoo_sample.cfg zoo.cfg
编辑zoo.cfg文件
编辑命令:vi zoo.cfg
- 修改zookeeper文件存储路径
- 标注zookeeper服务对应的虚拟机以及端口号
文件分发
分发zookeeper到node03、node04上
文件分发命令
scp -r zookeeper-3.4.6 root@node03:/root
scp -r zookeeper-3.4.6 root@node04:/root
分发/etc/profile文件
scp /etc/profile node03:/etc/
scp /etc/profile node04:/etc/
重新加载
source /etc/profile
启动zookeeper集群
在node02、node03、node04上创建zookeeper文件存储路径文件夹/opt/zookeeper
命令:cd /opt/
mkdir zookeeper
由于node02的server编号为1,node03的server编号为2,node04的server编号为3。所以需要在zookeeper目录下新建一个myid文件,然后在改文件中标明序号
命令:echo 1 > /opt/zookeeper/myid
运行zookeeper
命令: zkServer.sh start
查看运行状态
命令: zkServer.sh status
停止zookeeper命令:zkServer.sh stop
HDFS-HA集群启动
1、namenode同步穿透
在node01、node02、node03上启动journalnode
命令:hdfs --daemon start journalnode
在node01上格式化hadoop
格式化命令:hdfs namenode -format
2、将数据同步到node02上
1、在node01上启动namenode节点
启动节点: hadoop-daemon.sh start namenode
2、node02同步数据
同步命令:hdfs namenode -bootstrapStandby
3、在node01上对zookeeper进行格式化
写在最后
在结束之际,我想重申的是,学习并非如攀登险峻高峰,而是如滴水穿石般的持久累积。尤其当我们步入工作岗位之后,持之以恒的学习变得愈发不易,如同在茫茫大海中独自划舟,稍有松懈便可能被巨浪吞噬。然而,对于我们程序员而言,学习是生存之本,是我们在激烈市场竞争中立于不败之地的关键。一旦停止学习,我们便如同逆水行舟,不进则退,终将被时代的洪流所淘汰。因此,不断汲取新知识,不仅是对自己的提升,更是对自己的一份珍贵投资。让我们不断磨砺自己,与时代共同进步,书写属于我们的辉煌篇章。
需要完整版PDF学习资源私我
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!