**
Linux下Hadoop的安装与配置
**
Hadoop基础环境配置
普通用户获得管理员权限
1切换到管理员用户[[email protected] Desktop]$ suPassword:输入root密码
2打开etc/sudoers[[email protected] Desktop]# chomd u+w /etc/sudoers[[email protected] Desktop]# vim /stc/sudoers
复制第98行命令root ALL=(ALL) ALL
在第99行粘贴并更改用户名xxx ALL=(ALL) ALL
3切换回原先用户,使用sudo即可
基础网络环境
**1.配置网络连通
图形界面**打开网络连接的有线设置→齿轮→ipv4→地址选择手动,填写网络地址。
命令行
1.1输入以下命令[[email protected] Desktop]$ sudo /etc/sysconfig/network-scripts/ifcfg-xxxxxxxx
1.2在打开的界面更改以下配置BOOTPROTO=static(表示使用静态IP地址)ONBOOT=yes(表示开机时启动这个网卡)
1.3并添加以下配置
IPADDR=192.168.218.10
ETMASK=225.225.225.0
GATEWAY=192.168.218.2
DNSI=8.8.8.8
1.4重启网络$ service network restart
2.配置网络地址与主机名的对应关系
删除文件$ sudo vim /stc/hostname的全部内容,并更改为当前操作主机的主机名$ sudo vim /stc/hosts
在最后新建一行,添加IP地址1 主机名1IP地址2 主机名2IP地址3 主机名3
3.关闭防火墙
查看防火墙状态$ systemctl status firewalld.service
关闭防火墙$ systemctl stop firewalld.service
查看服务开启启动项列表$ systemctl list-unit-files
设置防火墙开机不自动启动$ systemctl disable firewalld.service
免密登录
**1.生成公私钥[[email protected] Desktop]# ssh-****** -t rsa
2.打开用户目录下的.ssh[[email protected] Desktop]# cd .ssh
[id_sra]: 生成的私钥文件
[id_sra.pub]: 生成的公钥文件
3.将公钥拷贝成 authorized_keys[[email protected] Desktop]# cp id_ras.pub authorized_keys
4.验证:**若无需输入密码可直接登录则设置成功
jdk安装
将jdk安装包(.tar.gz格式)放到指定目录下
解压该安装包
$ cd /安装路径
tar -zxvf jdk-8u131-linux-x64.tar.gz
要将解压后的【jdk1.8.0_131】里面的所有数据移动到我们需要安装的文件夹当中,我们打算将jdk安装在xxx/java当中,我们在xxx目录下新建一个java文件夹$ mkdir /xxx/java
将【jdk1.8.0_131】里的数据拷贝至java目录下mv /home/cmfchina/jdk1.8.0_131 /xxx/java
打开并编辑用户目录下的bashrc文件,在正文的后面添加以下内容
export JAVA_HOME=home/xxxx/java/jdk
export PATH=$PATH:$JAVA_HOME/bin
按 wq 保存退出
输入$ source ~/.bashre让文件立即生效
测试是否安装成功①、使用javac命令,不会出现command not found错误②、使用java -version,出现版本为java version "1.8.0_131"③、echo $PATH,看看自己刚刚设置的的环境变量配置是否都正确
Hadoop的安装
1.首先到Apache官网(http://www.apache.org/dyn/closer.cgi/hadoop/common/) 下载Hadoop,从中选择推荐的下载镜像(http://mirrors.hust.edu.cn/apache/hadoop/common/ )将安装包移动到hadoop目录下解压[[email protected] hadoop]# tar -zxvf zxvf hadoop-2.6.2.tar.gz
2.将hadoop目录下的bin和sbin目录路径加入到PATH中,更改~/.bashrz文件如下export JAVA_HOME=home/xxxx/java/jdkexport HADOOP_HOME=/home/xxx/hadoop/hadoop.2.6.2export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
3.执行$ source ~/.bashre让文件立即生效
4.再使用hadoop命令
发现可以有提示了,则表示配置生效了
Hadoop的配置
在$HADOOP_HOME/etc/hadoop目录下配置需要配置的以下文件
1.hadoop-env.shexport JAVA_HOME=home/xxxx/java/jdk
2.yarn-env.shexport JAVA_HOME=home/xxxx/java/jdk
3.core-site.xml在configuration标签中添加
<configuration>
<property>
<name>fs.defaultFS</name>
<value>/home/xxx/hadoop/hadoop2.6.2/tmp</value>
</property>
</configeration>
4.hdfs-site.xml
<property>//如果不设置该参数,则默认值为3
<name>dfs.replication</name>
<value>2</value>
</property>
<property>//如果不设置该参数,则默认值为$hadoop.tmp.dir/dfs/name
<name>dfs.namenode.name.dir</name>
<value>/home/ryan/hadoop/hadoop/tmp/dfs/name
</value>
</property>
<property>(如果不设置该参数,则默认值为$hadoop.tmp.dir/dfs/data)
<name>dfs.datanode.data.dir</name>
<value>/home/ryan/hadoop/hadoop/tmp/dfs/data </value>
</property>
5.mapred-site.xml
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
6.yarn-sit.xml
<property>
<name>yarn.resourcemanager.address</name>
<value>rmhostname:8032</value>
</property>
7.slaves
在此文件夹中写明所有从节点的节点名,一个一行(如果为分布式部署,则默认localhost即可,无需更改)
centos-hadoop-node-01
centos-hadoop-node-02
centos-hadoop-node-03
centos-hadoop-node-04
格式化并启动hadoop
1.初始化hadoop,执行命令:hadoop namenode -format
2.启动$HADOOP_HOME/sbin/start-all.sh