使用说明:
1.需要创建一个用户(用户名按个人喜好)
2.赋予用户root的权限
3.hadoop的环境配置是当前用户的环境,不是全局
4.建议在window下载hadoop3.1.3的包传入linux,官网是国外网站,wget下载很慢,能等的可以把wget下载的命令解除注释,删除#即可;
5.使用脚本时需要确定当前目录下是否有安装包,脚本的wget默认注释!!因为很慢
脚本使用前置:
1.创建hadoop72用户,并修改hadoop72用户的密码
[root@hadoop100 ~]# useradd hadoop72
[root@hadoop100 ~]# passwd hadoop72
2.配置atguigu用户具有root权限,方便后期加sudo执行root权限的命令
[root@hadoop100 ~]# vim /etc/sudoers
修改/etc/sudoers文件,在%wheel这行下面添加一行,如下所示:
## Allow root to run any commands anywhere root ALL=(ALL) ALL ## Allows people in group wheel to run all commands %wheel ALL=(ALL) ALL hadoop72 ALL=(ALL) NOPASSWD:ALL
切换用户:su hadoop72
ps:以考虑到用户名习惯不一样,所以下面的脚本会自动获取当前用户名,无需手动更改;下面的脚本配置只有hdfs,yarn是没有配置,后续加上
#!/bin/bash
user=$(env | grep USER | cut -d "=" -f 2)
if [ "$user" == "root" ]
then
echo "当前用户是root,请更换用户"
exit
else
if(test -e /opt/moudle)
then
echo "----------------创建文件夹moudle---------------"
echo "/opt/moudle 文件夹存在"
chown $user:$user /opt/module
else
echo "----------------创建文件夹moudle---------------"
sudo mkdir /opt/moudle
sudo chown $user:$user /opt/moudle
echo "/opt/moudle 文件夹创建成功"
fi
if(test -e /opt/soft)
then
echo "----------------创建文件夹soft---------------"
echo "/opt/soft 文件夹存在"
else
echo "----------------创建文件夹soft---------------"
sudo mkdir /opt/soft
sudo chown $user:$user /opt/soft
echo "/opt/soft 文件夹创建成功"
fi
fi
#国外网站下载速度很慢,建议使用window下载传入linux
#wget http://archive.apache.org/dist/hadoop/core/hadoop-3.1.3/hadoop-3.1.3.tar.gz
echo "--------------------------解压----------------------------------"
tar -zxvf hadoop-3.1.3.tar.gz -C /opt/moudle
echo "-------------------------配置环境变量---------------------------"
echo "export HADOOP_HOME=/opt/moudle/hadoop-3.1.3" >> /home/hadoop72/.bashrc
echo "export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin" >> /home/hadoop72/.bashrc
cd ~
source .bashrc
echo "------------------hadoop版本-------------------------------------------"
hadoop version
echo "------------------配置ssh本地免密--------------------------------------"
cd ~
ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 0600 ~/.ssh/authorized_keys
echo "------------------配置hadoop伪分布式------------------"
echo "export JAVA_HOME=${JAVA_HOME}" >> /opt/moudle/hadoop-3.1.3/etc/hadoop/hadoop-env.sh
echo "
fs.defaultFS
hdfs://localhost:9000
" > /opt/moudle/hadoop-3.1.3/etc/hadoop/core-site.xml
echo "
dfs.replication
1
" > /opt/moudle/hadoop-3.1.3/etc/hadoop/hdfs-site.xml
cd /opt/moudle/hadoop-3.1.3
bin/hdfs namenode -format
#开启hdfs命令
#sbin/start-dfs.sh
1
1
1
1



