子任务一:Hadoop 完全分布式安装配置
本任务需要使用root用户完成相关配置,安装Hadoop需要配置前置环境。命令中要求使用绝对路径,具体要求如下:
从宿主机/opt目录下将文件hadoop-3.1.3.tar.gz、jdk-8u212-linux-x64.tar.gz复制到容器Master中的/opt/software路径中(若路径不存在,则需新建),将Master节点JDK安装包解压到/opt/module路径中(若路径不存在,则需新建),将JDK解压命令复制并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;
首先我们需要使用docker cp先将软件拷贝到master容器内 |
docker cp hadoop-3.1.3.tar.gz master:/opt/software/ docker cp jdk-8u212-linux-x64.tar.gz master:/opt/software/ docker cp apache-zookeeper-3.5.7-bin.tar.gz master:/opt/software/ |
接下来进入到master容器内解压安装包 |
进入命令:docker exec -it master(或者容器ID) bash |
tar命令解压参数可使用--help查看 ,-C 代表最终解压的目录 |
tar -zxvf /opt/software/hadoop-3.1.3.tar.gz -C /opt/module/ tar -zxvf /opt/software/jdk-8u212-linux-x64.tar.gz -C /opt/module/ |
修改容器中/etc/profile文件,设置JDK环境变量并使其生效,配置完毕后在Master节点分别执行“java -version”和“javac”命令,将命令行执行结果分别截图并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;
修改环境变量文件,使其生效,可使用source命令 |
JAVA_HOME=/opt/jdk1.8.0_212 PATH=$PATH:$JAVA_HOME/bin export JAVA_HOME PATH |
source /etc/profile |
请完成host相关配置,将三个节点分别命名为master、slave1、slave2,并做免密登录,用scp命令并使用绝对路径从Master复制JDK解压后的安装文件到slave1、slave2节点(若路径不存在,则需新建),并配置slave1、slave2相关环境变量,将全部scp复制JDK的命令复制并粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;
修改节点的主机名,有2种方法,第一种是修改/etc/hostname文件需要重启才能生效,第二种是使用hostnamectl不用重启即可生效 |
修改主机名 |
vim /etc/hostname master |
hostnamectl set-hostname master |
免密登陆,其他节点相同 |
# 生成公钥和私钥t ssh-keygen -t rsa # 配置公钥 ssh-copy-id master |
在Master将Hadoop解压到/opt/module(若路径不存在,则需新建)目录下,并将解压包分发至slave1、slave2中,其中master、slave1、slave2节点均作为datanode,配置好相关环境,初始化Hadoop环境namenode,将初始化命令及初始化结果截图(截取初始化结果日志最后20行即可)粘贴至客户端桌面【Release\任务A提交结果.docx】中对应的任务序号下;
在hadoop安装包内是有一份静态的网页文档的,在/opt/module/hadoop-3.1.3/share/doc/hadoop目录下,我们将该文档拷贝到我们的宿主机,再从宿主机拷贝到我们的客户端,查看文档搭建 |
找到index.html使用谷歌浏览器打开,然后找到namenode搭建的文档 |
core-site.xml |
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://master:9000</value> </property> </configuration> |
hdfs-site.xml |