Hadoop安装

Linux安装

修改hosts文件,将当前主机名配进去

# 查看当前主机名
hostname
# 此处结果为 node01

# 修改 hosts 文件,将当前主机名配到 127.0.0.1 后面
vi /etc/hosts

# ping 当前主机名进行检测
ping node01

配置SSH所有机器之间免密码登录

输入命令:ssh-keygen -t rsa,生成key,一直按回车,就会在/root/.ssh生成:authorized_keys   id_rsa.pub   id_rsa 三个文件。

ssh-keygen -t rsa

在.ssh目录下输入命令,将id_rsa.pub公钥内容拷贝到authorized_keys文件中。

cat id_rsa.pub >> authorized_keys

 为了各个机器之间的免登陆,在每一台机器上都要进行此操作。将node01~node05的公钥拷贝到authorized_keys中。

安装包上传及解压

# 创建准备安装的目录
mkdir /app/Hadoop
# 解压到安装目录
tar -zxvf hadoop-3.3.2.tar.gz -C /app/hadoop/
# 进入安装目录,查看是否成功
cd /app/hadoop/hadoop-3.3.2

设置环境变量

# 配置环境变量
vim /etc/profile

# 增加以下
export HADOOP_HOME=/app/hadoop/hadoop-3.3.2
export HADOOP_CONF_DIR=/app/hadoop/hadoop-3.3.2/etc/hadoop
export PATH=.:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

# 使环境变量生效
source /etc/profile

hadoop配置

进入hadoop配置目录/app/hadoop/hadoop-3.3.2/etc/hadoop,配置hadoop-env.sh、yarn-env.sh,在Hadoop安装目录下

vim hadoop-env.sh
# 增加
export JAVA_HOME=/opt/java/jdk1.8.0_211
# 将当前用户 root 赋给下面这些变量
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root

vim yarn-env.sh
# 增加
export JAVA_HOME=/opt/java/jdk1.8.0_211

单机模式

修改配置文件

core-site.xml

        
                fs.defaultFS
                hdfs://127.0.0.1:9000
        
        
                hadoop.tmp.dir
                
                /usr/local/hadoop/hadoop-3.3.4/tmp
        
        
                hadoop.native.lib
                
                false
        

hdfs-site.xml

   
       dfs.replication
       1
   

mapred-site.xml

        
                mapreduce.framework.name
                yarn
        

yarn-site.xml

       
               yarn.resourcemanager.hostname
               127.0.0.1
       
       
               yarn.resourcemanager.webapp.address
               
               0.0.0.0:8088
       
       
               yarn.nodemanager.aux-services
               
               mapreduce_shuffle
       

启动 

 格式化 HDFS(首次启动前执行)

 hdfs namenode –format

输入命令进行启动(前面已经通过$HADOOP_HOME/sbin配置到环境变量中了,可以直接执行。)

/app/hadoop/hadoop-3.3.2/sbin/start-all.sh

输入jps命令, 出现这些进程就表示Hadoop启动成功。

794756 SecondaryNameNode
794067 NameNode
795507 ResourceManager
794312 DataNode
795770 NodeManager

分布式模式

修改配置文件

linux环境下,至少需要3台机子,一台作为master:node01,2台(以上)作为slave:node02~node05。

core-site.xml



  
   fs.defaultFS 
    
  hdfs://node01:9000
 

  
    io.file.buffer.size
    131072
  

 
   hadoop.tmp.dir 
    
  /app/hadoop/hadoop-2.7.1/temp
  

hdfs-site.xml



    
        dfs.namenode.name.dir 
        
        /app/hadoop/hadoop-3.3.2/hdfs/name
        
    

    
        dfs.datanode.data.dir 
        
        /app/hadoop/hadoop-3.3.2/hdfs/data
    

    
        dfs.replication 
        
        2
    

    
        dfs.blocksize
        268435456
    

    
        dfs.namenode.handler.count
        100
    

    
        dfs.namenode.secondary.http-address
        node01:50090
    
    
    
        dfs.namenode.secondary.https-address
        node01:50091
    

mapred-site.xml



        
                mapreduce.framework.name
                yarn
        

        
                mapreduce.jobhistory.address
                node01:10020
        

        
                mapreduce.jobhistory.webapp.address
                node01:19888
        

yarn-site.xml



        
                yarn.resourcemanager.hostname
                node01
        

        
                yarn.nodemanager.aux-services
                mapreduce_shuffle
        

        
                yarn.resourcemanager.address
                node01:8032
        

        
                yarn.resourcemanager.scheduler.address
                node01:8030
        

        
                yarn.resourcemanager.resource-tracker.address
                node01:8031
        

        
                yarn.resourcemanager.admin.address
                node01:8033
        

        
                yarn.resourcemanager.webapp.address
                node01:8088
        

slaves配置

在node01上,vim slaves

node02
node03
node04
node05

将hadoop拷贝到其他服务器,配置环境并生效

在node01上,cd /app,执行以下命令:

scp -r hadoop/ root@node02:/app/
scp -r hadoop/ root@node03:/app/
scp -r hadoop/ root@node04:/app/
scp -r hadoop/ root@node05:/app/

启动

在Master服务器启动hadoop,从节点会自动启动,进入Hadoop目录下,

 格式化 HDFS (首次启动前执行),输入命令

 hdfs namenode –format

启动 Hadoop

sbin/start-all.sh

也可以分开启动,sbin/start-dfs.sh、sbin/start-yarn.sh

在master 输入jps命令, 看到ResourceManager、NameNode、SecondaryNameNode进程;

在slave 上输入jps命令, 看到DataNode、NodeManager进程。

出现这些进程就表示Hadoop启动成功。

你可能感兴趣的:(大数据,hadoop,大数据,分布式)