hadoop-2.10.0部署

下载hadoop

我这里是下载的 hadoop-2.10,从北京理工大学开源软件镜像,官网下载你懂得…
地址: http://mirror.bit.edu.cn/apache/hadoop/

下载完成后解压, tar -xzvf hadoop-2.10.0.tar.gz,这里我将hadoop直接放在加目录下。

伪分布配置

配置hadoop

配置文件路径在 hadoop目录/etc/hadoop
hadooop-env.sh 中25行左右,配置 JAVA_HOME

# The java implementation to use.
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk

core-site.xml

<configuration>
        
        <property>
                <name>fs.defaultFSname>
                <value>hdfs://zachary-pc:9000value>
        property>
		
        <property>
                <name>io.file.buffer.sizename>
                <value>131072value>
        property>
        
        <property>
                <name>hadoop.tmp.dirname>
                <value>/home/zachary/hadoop-2.10.0/tmpvalue>
        property>
configuration>

hdfs-site.xml

<configuration>

        <property>
                <name>dfs.namenode.name.dirname>
                <value>/home/zachary/hadoop-2.10.0/namevalue>
        property>
        
        <property>
                <name>dfs.blocksizename>
                <value>268435456value>
        property>
        <property>
                <name>dfs.namenode.handler.countname>
                <value>100value>
        property>

        <property>
                <name>dfs.datanode.data.dirname>
                <value>/home/zachary/hadoop-2.10.0/datavalue>
        property>
        
        <property>
                <name>dfs.replicationname>
                <value>1value>
        property>
configuration>

mapred-site.xml

<configuration>
        <property>
                <name>mapreduce.framework.namename>
                <value>yarnvalue>
        property>
configuration>

yarn-site.xml

<configuration>

        
        <property>
                <name>yarn.resourcemanager.hostnamename>
                <value>zahcary-pcvalue>
        property>
        
        <property>
                <name>yarn.nodemanager.aux-servicesname>
                <value>mapreduce_shufflevalue>
        property>
      
	  
configuration>

格式化namenode,在 hadoop目录/bin,命令:hdfs namenode -format
启动命令在 hadoop目录/sbin 下,
启动hadoop:start-all.sh
关闭hadoop:stop-all.sh

启动HDFS start-dfs.sh
启动YARN start-yarn.sh
启动NameNode hadoop-daemon.sh start namenode
启动DataNode hadoop-daemon.sh start datanode
启动ResourceManager yarn-daemon.sh start resourcemanager
启动NodeManager yarn-daemon.sh start nodemanager

  • 遇到问题 1
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.ibatis.reflection.Reflector (file:/E:/my_java_jar/maven_repository/org/mybatis/mybatis/3.4.5/mybatis-3.4.5.jar) to method java.lang.Class.checkPackageAccess(java.lang.SecurityManager,java.lang.ClassLoader,boolean)
WARNING: Please consider reporting this to the maintainers of org.apache.ibatis.reflection.Reflector
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release

警告非法反射访问错误,我这里将jdk-13换成jdk-8解决了问题

验证启动

~/hadoop-2.10.0 ❯❯❯ jps                                             
5153 Jps
4564 NodeManager
4280 SecondaryNameNode
3993 NameNode
4090 DataNode
4462 ResourceManager

命令行输入jps,有以下6个进程就是成功启动了
通过浏览器输入:http://ip:50070/ ,登入HDFS管理界面
http://ip:8088/,节点管理

配置ssh免密登录

命令行输入:ssh-keygen -t rsa 生成公钥密钥对,一直按回车直到生成结束。
执行结束后两个文件 id_rsaid_rsa.pub 其中前者为私钥,后者为公钥,文件位置在当前用户家目录的 .ssh 隐藏文件夹下。
然后命令行输入:cat id_rsa.pub >> authorized_keys

  • 遇到问题 2
ssh: connect to host zachary-pc port 22: Connection refused

我这里是因为没有开启sshd服务,启动命令 service sshd restart 或者 systemctl start sshd.service

全局启动hadoop

在上面中,启动hadoop要在hadoop所在目录。
我们可以同过配置环境变量,使hadoop可以全局启动。
/etc/profile 中添加:

export HADOOP_HOME=/home/zachary/hadoop-2.10.0  # hadoop所在目录
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

重新编译 profile ,命令 :source /etc/profile

  • 遇到问题 3
Permission denied: user=dr.who, access=READ_EXECUTE, inode="/tmp":root:super

缺失权限; 解决办法:执行 hdfs dfs -chmod -R 755 /tmp

分布配置

主机名配置

/etc/hosts 配置主机名,每一台服务器一样,类似:

192.168.10.1    master
192.168.10.2   slave_1
192.168.10.3   slave_2

ssh配置

将上面配置的公钥复制到从属服务器,命令:

ssh-copy-id -i ~/.ssh/id_rsa.pub master
ssh-copy-id -i ~/.ssh/id_rsa.pub slave_1
ssh-copy-id -i ~/.ssh/id_rsa.pub slave_2

hadoop配置

修改 core-site.xml :

  <property>
      <name>fs.defaultFSname>
      <value>hdfs://master:9000value>
  property>

验证启动

启动命令同上,只需在主服务器启动即可。
jps命令查看,从属服务器有一下进程即启动成功:

~/hadoop-2.10.0 ❯❯❯ jps    
4545 NodeManager
4371 DataNode
4678 Jps

你可能感兴趣的:(笔记)