Hadoop 安装以及配置
一、安装
1.安装SSH,设置SSH无密码登录2. 安装jdk3.安装Hadoop 二、配置三、其他配置四、出现的问题五 参考文章
Hadoop 安装以及配置 一、安装 1.安装SSH,设置SSH无密码登录ssh可以让访问其他Linux虚拟机而不用输入密码,可以为集群做准备
- 在客户端生成密钥
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa将客户端公钥发送给服务端
ssh-copy-id root@ip地址可以在/etc/hosts文件中可以将ip地址映射为自己取得名字远程拷贝文件的使用
远程拷贝文件 scp 本机文件 user@host:路径/ 注:将bigdata1上的/etc/profile文件拷贝到bigdata2的根目录下 scp /etc/profile root@bigdata2:/ 注:将bigdata1上的/etc/profile文件拷贝到bigdata2的根目录下,并改名为profile.txt scp /etc/profile root@bigdata2:/profile.txt 远程拷贝目录 scp -r 本机目录 user@host:路径/ 注:将bigdata1上的/bin目录拷贝到bigdata2的根目录下 scp -r /bin root@bigdata1:/home/ (-r 表示递归) 下载文件到本地 scp user@host:文件名 本地目录 注:将bigdata2上的/profile下载到本地并改名为profile.txt scp root@bigdata2:/profile ./profile.txt 下载目录到本地 scp -r user@host:文件名 本地目录 注:将bigdata2上的/bin下载到本地并改名为bin.bak scp -r root@bigdata2:/home/bin ./bin.bak2. 安装jdk
- 官网下载解压
sudo tar -zxvf 名字 -C 移动到哪里目录
- 配置环境变量
export JAVA_HOME=
export JRE_HOME=${JAVA_HOME}/JRE
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
: 表示分隔符,再原来的基础智商增加这些东西
- 让变量生效
source ~/.bashrc产看是否安装成功java -version
下载
解压安装包
tar -zxvf 最好解压到某一个urs/
配置环境变量
将下面的代码添加到/.bashrc里面
export HADOOP_HOME=/usr/local/hadoop export CLASSPATH=$($HADOOP_HOME/bin/hadoop classpath):$CLASSPATH export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"
- 执行source ~/.bashrc查看hadoop是否安装成功hadoop version
- 在hadoop中配置jdk路径
在/usr/local/hadoop/etc/hadoop/中修改使用gedit hadoop-env.sh增加这一行
export JAVA_HOME=/usr/lib/jvm/java
配置核心组件
- 配置core-site.xml
不知道第一个value这个值是对是错,对于书上的来说,是使用的/home/用户名/hadoopdata这个文件或者文件夹。这个好像是使用的文件,并且是使用的绝对路径上的文件,所以可能会有点错误。 hadoop.tmp.dir file:/usr/local/hadoop/tmp Abase for other temporary directories.供其他临时文件夹的使用 fs.defaultFS hdfs://localhost:9000
修改hdfs-site.xml文件
第一个配置是配饰dfs的副本数量,最高为三,如果不设置,那么默认也是3. 另外两个配置了名字结点和数据结点的存储位置。 dfs.replication 1 dfs.namenode.name.dir file:/usr/local/hadoop/tmp/dfs/name dfs.datanode.data.dir file:/usr/local/hadoop/tmp/dfs/data
配置NodeName格式化
./bin/hdfs namenode -format # 重新格式化 NameNode
启动nameNode和dataNode进程,并且查看结果
./sbin/start-dfs.sh ./sbin/start-all.sh # 上面的那句不行,就执行下面的
查看结果
使用jps命令产看是否已经启动了SecondaryNameNode结点,NameNode结点以及DataNode结点。 如果已经启动完成了使用localhost:9870进行访问 2.*.*版本的使用50070端口进行访问
关闭进程
./sbin/stop-dfs.sh # 关闭
三、其他配置到此已经可以运行伪集群环境了。就是说文件节点和数据结点都在一个服务器上面的集群环境。下面的配置是为了多机配置而进行的。
配置文件系统
配置yarn site.xml文件
配置mapreduce计算框架
配置master中的workers
~ 代表用户的根目录,就是说用户的文件夹。Linux是多用户的。每一个用户都有自己的文件夹。
/mnt/hgfs文件夹是共享文件夹,使用虚拟机中
如果想要永久挂载使用.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0
放到/etc/fstab文件中。
直接拖拽不可以上传Hadoop, 需要使用共享文件夹,或者XShell这种进行操作
共享文件夹创建失败
首先手动创建
进行挂载子文件夹
vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
vmware-tools的安装
- 打开虚拟机的设置找到CD/DVD的设置将这个DVD指向VMware安装路径下的linux.ios文件重启虚拟机,会发现有一个CD/DVD的光盘吧VMware tools拷贝到自己的虚拟机上,解压,执行 ./vmware-install-distrib
出现invalid HADOOP_HDFS_HOME还有ivalid HADOOP_YARN_HOME以及HADOOP_COMMON_HOME
应该是java的版本问题。
配置ssh的时候出出现password这种。
编辑vi /etc/ssh/sshd_config文件然后修改成yes,注意**修改访问的电脑,不是被访问的。**保险起见,都修改
PermitRootLogin yes
或者是防火墙的问题
- 永久挂载


![大数据[1] -- 安装hadoop 大数据[1] -- 安装hadoop](http://www.mshxw.com/aiimages/31/781332.png)
