ToB企服应用市场:ToB评测及商务社交产业平台

标题: 搭建hadoop完全分布(ubuntu) [打印本页]

作者: 万有斥力    时间: 2024-8-23 22:04
标题: 搭建hadoop完全分布(ubuntu)
提前预备:

1.sudo apt install net-tools    #安装网络配置工具,为后续免密登录会使用的工具

         2.sudo apt install vim       #Linux中的编辑工具
         3.sudo apt install openssh-server    #安装配置ssh服务器的工具   
       

         5.

    Sudo su   #进入管理员模式(输入本身设的暗码,不会显示的,输入后按回车)

修改管理员暗码


一、修改主机名【分别在三台主机执行,将主机名修改为master,slave1,slave2】
   >hostnamectl set-hostname master
  >hostnamectl set-hostname slave1
    >hostnamectl set-hostname slave2
  # 查看是否修改乐成
   >cat /etc/hostname
  

二、添加IP与主机名映射【分别在三台主机执行,将主机名修改为master,slave1,slave2】
# 查看IP地址
   >ip addr
  

框内为IP地址
>vim /etc/hosts
#添加如下内容
本机ip    master
客户机ip  slave1
客户机ip  slave2

三、配置ssh免密登录
1、修改配置文件
    >vim /etc/ssh/sshd_config
  # 修改两个配置
   PermitRootLogin yes
  PasswordAuthentication yes
  


代码添加的位置哪都行
#重启服务
   /etc/init.d/ssh restart
  2、 配置免密
#(1)在三台主机中分别生成密钥,不绝按回车,不要输入
   >ssh-keygen -t rsa
  


 #(2)在三台主机中都传输密钥
   >ssh-copy-id master
  

暗码是修改后的管理员暗码
   >ssh-copy-id slave1
  >ssh-copy-id slave2
  3、测试连接
# 退出连接使用:logout
   ssh master
  

ssh slave1
ssh slave2
四、配置java情况
1、 上传、解压、重命名安装包,
   >tar -zxvf  jdk-17_linux-x64_bin.tar.gz -C /home/master/Downloads
  解压jdk安装包到/home/master/Downloads
   >mv  jdk-17_linux-x64_bin jdk
  将jdk-17_linux-x64_bin改名为jdk
2、在/etc/profile中添加情况变量,并使其生效【注意切换为本身的现实路径】
   >vim /etc/profile
  

   export JAVA_HOME=/home/master/Downloads/jdk
  export JRE_HOME=${JAVA_HOME}/jre
  export CLASSPATH=.{JAVA_HOME}/lib{JRE_HOME}/lib
  export PATH=$PATH{JAVA_HOME}/bin
    >source /etc/profile  #使配置生效
  3、安装乐成测试,输入以下下令,出现java版本
   >java -version
  

4、在master上分发给其余两台主机,并测试配置是否乐成
   > scp -r jdk slave1:/home/slave1/Downloads/
  

要去slave1主机上修改成分发后的主机名
#在slave1主机执行
   >source /etc/profile
    >java -version
  

   > scp -r jdk slave2:/home/slave2/Downloads/
  要求如上修改路径
#在slave2主机执行
   >source /etc/profile
    >java -version
  五、配置zookeeper情况
1、上传安装包到/home/master/Downloads下
2、解压到当前路径
   >tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
  3、重命名
   mv apache-zookeeper-3.5.5-bin zookeeper
  
4、修改配置文件
打开$ZOOKEEPER_HOME,新建data文件夹,并在conf文件,复制zoo_sample.cfg为zoo.cfg文件,并修改配置参数
   >cd /home/user/Downloads   #打开Downloads文件夹
  >cd zookeeper    #打开zookeeper
  >mkdir data     #创建data文件夹
  
  >cd conf
  
  >mv zoo_sample.cfg zoo.cfg 修改文件名为zoo.cfg
  >vim zoo.cfg
  
# 修改以下参数
   dataDIr=/home/master/Downloads/zookeeper/data
  # 在文件末尾追加以下参数配置
   server.1=master:2888:3888
  server.2=slave1:2888:3888
  server.3=slave2:2888:3888
  

5、data文件夹下新建myid文件,添加值1
   >vim myid
  1

6、添加体系情况变量配置
    >vim /etc/profile
  
   export ZOOKEEPER_HOME=/home/master/Downloads/zookeeper
  export PATH=$PATHZOOKEEPER_HOME/bin
  

   >source /etc/profile
  
 7、将zookeeper文件夹分发到slave1和slave2中。
   >scp -r zookeeper slave1:/home/user/Downloads/
  
   >scp -r zookeeper slave2:/home/user/Downloads/
  同理,要修改主机名,上图红框中修改为分发后的主机名,如:

 8、修改zookeeper/data文件夹下myid的值分别为2和3
# 在slave1主机
   >cd /home/slave1/Downloads/zookeeper/data
  >vim myid
  2
# 在slave2主机
   >cd /home/slave2/Downloads/zookeeper/data
  >vim myid
  3
9、在slave1主机,slave2主机分别使体系情况变量配置生效
分别在两主机上输入
   >source /etc/profile
  
10、启动zookeeper
分别在三台主机输入
   >zkServer.sh start
  

然后再查看状态(要在三台都启动后再输入)
   zkServer.sh status
  

如果mode为follower或者leader,则表示部署乐成。

11、部署乐成验证
master显示:

slave1:

slave2:


六、配置hadoop完全分布部署
1、上传
2、解压
   >tar -zxvf hadoop-3.1.3.tar.gz –C /home/master/Downloads
  3、重命名
    >mv hadoop-3.1.3 hadoop
  4、配置体系情况变量
    >vim /etc/profile
    export HADOOP_HOME=/home/master/Downloads/hadoop
  export PATH=$PATHHADOOP_HOME/binHADOOP_HOME/sbin
  

   >source /etc/profile
  
5、 修改配置文件($HADOOP_HOME为/home/master/Downloads/hadoop, $JAVA_HOME为/home/master/Downloads/jdk)
(1)在 $HADOOP_HOME/etc/hadoop配置hadoop-env.sh文件【$JAVA_HOME,$HADOOP_HOME换为具体路径】
   export JAVA_HOME=$JAVA_HOME
  export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
  #添加
   export HDFS_DATANODE_USER=root
  export HADOOP_SECURE_DN_USER=root
  export HDFS_NAMENODE_USER=root
  export HDFS_SECONDARYNAMENODE_USER=root
  export YARN_RESOURCEMANAGER_USER=root
  export YARN_NODEMANAGER_USER=root
  

#在进入hdfs中修改hadoop生效用户,原默认为hdfs
>vim $HADOOP_HOME/bin/hdfs
修改为”root”

(2)在 $HADOOP_HOME/etc/hadoop配置workers文件【添加datanode部署主机名】
   #localhost
  master
  slave1
  slave2
  

(3) 在 $HADOOP_HOME/etc/hadoop配置core-site.xml文件
   <configuration>
          <property>
                  <name>hadoop.tmp.dir</name>
                  <value>file://home/master/Downloads/hadoop/tmp</value>
          </property>
          <property>
                  <name>fs.defaultFS</name>
                  <value>hdfs://localhost:9000</value>
          </property>
  </configuration>
  

(4) 在 $HADOOP_HOME/etc/hadoop配置hdfs-site.xml文件
   <configuration>
          <property>
                  <name>dfs.replication</name>
                  <value>3</value>
          </property>
  
          <property>
                  <name>dfs.namenode.name.dir</name>
                  <value>file:/home/master/Downloads/hadoop/tmp/dfs/name</value>
          </property>
  
          <property>
                  <name>dfs.datanode.data.dir</name>
                  <value>file:/home/master/Downloads/hadoop/tmp/dfs/data</value>
          </property>
  </configuration>
  

(5)在 $HADOOP_HOME/etc/hadoop配置yarn-site.xml文件
   <configuration>
  
  <!-- Site specific YARN configuration properties -->
          <property>
                  <name>yarn.resourcemanager.hostname</name>
                  <value>master</value>
          </property>
  
          <property>
                  <name>yarn.nodemanager.aux-services</name>
                  <value>mapreduce_shuffle</value>
          </property>
  </configuration>
  

(6)在 $HADOOP_HOME/etc/hadoop配置mapred-site.xml文件
 1、改名mapred-site.xml.template 为mapred-site.xml
   mv mapred-site.xml.template mapred-site.xml
  2>添加如下内容:
   <configuration>
          <property>
                  <name>mapreduce.framework.name</name>
                  <value>yarn</value>
          </property>
  
          <property>
                  <name>mapreduce.jobhistory.address</name>
                  <value>master:10020</value>
          </property>
  
          <property>
                  <name>mapreduce.jobhistory.webapp.address</name>
                  <value>master:19888</value>
          </property>
  </configuration>
   


(7)在$HADOOP_HOME下创建文件夹
   mkdir tmp
  mkdir tmp/dfs
  mkdir tmp/dfs/name
  mkdir tmp/dfs/data
  mkdir tmp/dfs/namesecondary
  
 6、将hadoop文件夹,/etc/profile文件分发到slave1,slave2中,并使体系情况配置文件生效
   >scp -r hadoop slave1:/home/slave1/Downloads/
    >scp -r hadoop slave2:/home/slave2/Downloads/
    >scp /etc/profile slave1:/etc/
  #x修改配置情况的路径
   >scp /etc/profile slave2:/etc/
  # 在slave1主机,slave2主机分别使体系情况变量配置生效
   >source /etc/profile
  
7、在master主机格式化NameNode
hdfs namenode -format
#不能正常启动需要重新格式化
8、在master主机启动hadoop集群
    start-all.sh
  
 9、启动乐成验证
master主机:

slave1主机:

slave2主机:




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4