Hadoop环境搭建

第一步:修改主机名,并且添加映射

hostnamectl set-hostname master-centos
vi /etc/hosts

第二步:安装SSH服务端(已安装则跳过)
yum install openssh-server

第三步:以root的身份创建Hadoop用户,并且为用户hadoop设置密码
adduser hadoop
passwd hadoop

第四步:修改sudoers文件权限,并且在sudoers文件中添加用户权限
chmod u+w /etc/sudoers
vi /etc/sudoers
hadoop ALL=NOPASSWD:ALL

第五步:进入hadoop用户验证设置是否成功,输出为root

su hadoop

sudo whoami

——————————————之前在root下完成————————————————

第六步:修改SSH配置文件添加以下内容,并且重启SSH服务

sudo vi /etc/ssh/sshd_config
PermitRootLogin yes
PubkeyAuthentication yes
RSAAuthentication yes
PasswordAuthentication yes

sudo systemctl restart sshd.service

第七步:以hadoop用户身份生成密钥并且拷贝密钥到指定位置,最后进行免密登录

ssh-keygen -t rsa

ssh-copy-id hadoop@master-centos

ssh master-centos

或者:

ssh-keygen -t rsa
scp ~/.ssh/id_rsa.pub hadoop@master-centos:/home/hadoop

修改.ssh目录权限和authorized_keys文件权限,并且进行免密登录测试

chmod 700 .ssh
cat id_rsa.pub >> .ssh/authorized_keys
chmod 600 .ssh/authorized_keys
ssh master-centos 

———————————确保免密登录无误后再进行下面的内容——————————————

第八步:上传和解压缩jdk文件,并且修改归属权限和创建软连接
sudo tar -zxvf jdk-8u301-linux-x64.tar.gz -C/opt
sudo chown -R hadoop.hadoop /opt/jdk1.8.0_301/
sudo ln -s /opt/jdk1.8.0_301/ /usr/local/java
第九步:配置JDK和Hadoop环境变量,并且使配置文件生效
vi .bashrc

export JAVA_HOME=/usr/local/java
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_INSTALL=$HADOOP_HOME
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib:$HADOOP_COMMON_LIB_NATIVE_DIR"
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin


source .bashrc
第十步:上传和解压缩hadoop文件,并且创建软连接
sudo tar -zxvf hadoop-3.3.1.tar.gz -C/opt
sudo ln -s /opt/hadoop-3.3.1/ /usr/local/hadoop

第十一步:配置Hadoop的hadoop-env.sh,core-site.xml,hdfs-site.xml文件
sudo vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh
export HDFS_NAMENODE_OPTS=" -Xms1024m -Xmx1024m -XX:+UseParallelGC"
export HDFS_DATANODE_OPTS=" -Xms1024m -Xmx1024m"
export HADOOP_LOG_DIR=/data/logs/hadoop


sudo vi $HADOOP_HOME/etc/hadoop/core-site.xml
<property>
<name>fs.defaultFS</name>
<value>hdfs://master-centos:8020</value>
</property>


sudo vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///data/hadoop/hdfs/nn</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///data/hadoop/hdfs/dn</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///data/hadoop/hdfs/tmp</value>
</property>

第十二步:创建存储文件夹和日志文件夹,并且修改归属权限
sudo mkdir -p /data/hadoop/hdfs/nn
sudo mkdir -p /data/hadoop/hdfs/dn
sudo mkdir -p /data/hadoop/hdfs/tmp
sudo mkdir -p /data/logs/hadoop
sudo chown -R hadoop.hadoop /data/hadoop
sudo chown -R hadoop.hadoop /data/logs/hadoop
第十三步:关闭防火墙服务和禁止开机启动
sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
第十四步:格式化namenode,并且启动单机模式
hdfs namenode -format
start-dfs.sh
最后浏览器登陆查看是否配置成功
主机名:9870或http://本地IP地址:9870

集群搭建

在Hadoop环境的基础上

第一步:个节点主机名与IP映射

sudo hostnamectl set-hostname hadoop001

sudo vi /etc/hosts

第二步:各节点免密登录

ssh-keygen -t rsa  (如果是克隆的需要删除原来的密钥  rm -rf .ssh/  )

ssh-copy-id hadoop@hadoop001

scp .ssh/authorized_keys hadoop@hadoop002:/home/hadoop/.ssh/  (分发到各个节点)

第三步:在其它节点修改Hadoop的 core-site.xml 文件,主机名称修改为当前主机名称

vi $HADOOP_HOME/etc/hadoop/core-site.xml

第四步:启动Hadoop确定单机可以正常启动

start-dfs.sh

第五步:将所有节点上的DataNode数据目录删除

rm -rf /data/hadoop/hdfs/dn/current

第六步:将DataNode节点上的NameNode的数据目录删除

rm -rf /data/hadoop/hdfs/nn/current

第七步:将NameNode节点上的hdfs-site.xml配置文件中的副本数修改为当前集群DataNode的个数,并分发到其他节点的相同目录下

scp $HADOOP_HOME/etc/hadoop/hdfs-site.xml hadoop@hadoop002:/usr/local/hadoop/etc/hadoop/hdfs-site.xml

第八步:在NameNode节点上的 /usr/local/hadoop/etc/hadoop 目录下编辑一个workers添加所有DataNode节点的主机名,并分发到其他节点的相同目录下

scp /usr/local/hadoop/etc/hadoop/workers hadoop@hadoop002:/usr/local/hadoop/etc/hadoop/workers

第九步:在NameNode节点上启动集群

start-all.sh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值