Hadoop安装过程
- Hadoop基础环境配置
1.1 使用户获得管理员权限
1.2网络环境配置
1.3免密登录
1.4JDK安装 - Hadoop安装
- Hadoop配置
3.1在$HADOOP_HOME/etc/hadoop/目录下需要配置以下文件
3.2格式化并启动hadoop
1.HADOOP基础环境配置
1.1 使用户获得管理员权限
1)切换到管理员用户
su root
2)改写sudoers文件
先将sudoers文件的权限加上可写,然后改写文件,在文件的98行复制,在99行粘贴并将root改为想要给予管理员权限的用户名如下图
cd /etc
chmod u+w sudoers
vim sudoers
被认可的用户要在前面加上sudo命令
1.2网络环境配置
1.2.1先配置网络联通
打开网络连接的有线设置,ipv4-地址选择手动,根据自己虚拟网络编辑器中的信息填写
如下图
配置完成之后ping8.8.8.8看是否ping通
1.1.2配置网络地址与主机名的对应关系(可选)
Sudo vim /etc/hostname
将此文件内容全部删除,更改为你的当前操作主机的主机名
Sudo vim /etc/hosts
在最后新建一行,添加以下内容
IP地址1 主机名1
IP地址2 主机名2
IP地址3 主机名3
1.1.3关闭防火墙
查看防火墙状态
systemctl status firewalld.service
现在是防火墙开启的状态,关闭它的代码是
systemctl stop firewalld.service
已经关闭了 下面设置开机不启动防火墙
systemctl disable firewalld.service
1.2免密登录
首先生成公私钥
ssh-keygen -t rsa
打开用户目录下的.ssh目录
cd
cd .ssh
将公钥文件拷贝成authorized_keys
cp id_rsa.pub authorized_keys
验证ssh本节点主机名,若无需输入密码可直接登录则设置成功
1.3Jdk安装
复制jdk文件(.tar.tz格式)到用户目录下
在此目录下新建java目录,将安装包移动到该目录下解压
解压方式:tar zxvf 压缩包名
解压后为了方便后期操作,将解压文件目录名重命名为jdk(使用mv改名)
打开并编辑用户目录下的.\banshrc文件
vim ~/.bashrc
在正文的后面添加以下内容
export JAVA_HOME=/home/ryan/java/jdk
export PATH=$PATH:$JAVA_HOME/bin
保存退出
让该文件立即生效
source ~/.bashrc
卸载已有jdk(可选)
rpm -qa |grep jdk
rpm -e 包名 –nodeps(忽略依赖关系)
使用java -version
命令验证
如果显示版本号与安装版本号相同,则证明安装成功。
2Hadoop的安装
首先将hadoop安装包复制到用户目录下,新建hadoop目录。将安装包移动到该目录下解压,
将解压完成后的目录(hadoop-2.6.2)改名为hadoop(为了方便)
将hadoop根目录下的bin目录和sbin目录路径加入到PATH中
更改~/.bashrc文件如下
export JAVA_HOME=/home/ryan/java/jdk
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_HOME=/home/ryan/hadoop/hadoop
改完后执行source ~/.bashrc
命令令其立即生效,使用hadoop version验证是否成功
3hadoop的配置
3.1在$HADOOP_HOME/etc/hadoop/目录下
需要配置以下文件
hadoop-env.sh
export JAVA_HOME=/home/ryan/java/jdk
yarn-env.sh
export JAVA_HOME=/home/ryan/java/jdk
core-site.xml
在configuration标签中添加以下变量和值
fs.defaultFS
hdfs://node-1:9000
hadoop.tmp.dir
/home/ryan/hadoop/hadoop/tmp
hdfs-site.xml
(如果不设置该参数,则默认值为3)
dfs.replication
2
(如果不设置该参数,则默认值为 h a d o o p . t m p . d i r / d f s / n a m e ) < n a m e > d f s . n a m e n o d e . n a m e . d i r < / n a m e > < v a l u e > / h o m e / r y a n / h a d o o p / h a d o o p / t m p / d f s / n a m e < / v a l u e > < / p r o p e r t y > < p r o p e r t y > ( 如 果 不 设 置 该 参 数 , 则 默 认 值 为 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/name)<name>dfs.namenode.name.dir</name><value>/home/ryan/hadoop/hadoop/tmp/dfs/name</value></property><property>(如果不设置该参数,则默认值为hadoop.tmp.dir/dfs/data)
dfs.datanode.data.dir
/home/ryan/hadoop/hadoop/tmp/dfs/data
mapred-site.xml
mapreduce.framework.name
yarn
yarn-site.xml
yarn.resourcemanager.address
rmhostname:8032
slaves
在此文件中写明所有从节点的节点名,一行一个(如果为伪分布式部署,则默认localhost即可,无需更改)
3.2格式化并启动hadoop
hadoop namenode -format
最后输入start-all.sh
就完成了