虚拟机 02
---Hadoop 搭建---
打开虚拟机,用xshell连接到我们创建的虚拟机,并以上次我们创建的hadoop用户下.
首先,我们创建一个文件夹opt: mkdir opt
然后我们使用Ctrl+Alt+f 打开新建文件传输,将JDK上传到hadoop中.
jdk下载链接: https://pan.baidu.com/s/1_DLHLweRQpoJLNUARx6Ofg 密码: 3xrx
直接将下载好的jdk拖入到右侧即可.
接着我们将jdk解压到opt目录中: tar -xzf jdk-8u152-linux-x64.tar.gz -C opt
然后cd opt,进入opt目录中,输入ll即可查看.
现在我们来配置环境变量
首先回到hadoop根目录下.输入vi .bashrc,进入编辑页面,然后输入如下两条代码,保存并退出
更新环境变量文件: source .bashrc 然后输入java,显示如图则成功:
接下来我们来搭建hadoop
Hadoop是一个开源框架,它允许在整个集群使用简单编程模型计算机的分布式环境存储并处理大数据。它的目的是从单一的服务器到上千台机器的扩展,每一个台机都可以提供本地计算和存储。
hadoop2,7下载链接: https://pan.baidu.com/s/1-cTM5dcZ1G3LZosdhBTc3Q 密码: rmdn
将下载好的hadoop放入到hadoop用户中,并解压到opt目录下.
接着我们来配置环境变量:
首先进入到opt中的hadoop目录下,输入pwd获取当前路径,设置HADOOP_HOME=`pwd`,然后将这个追加到bashrc文件中.如图:
然后继续添加HADOOP_CONF_DIR
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop >> ~/.bashrc
别忘了更新环境变量
最后我们需要配置path ,这里会用到转译符\,因为path有长度限制,我们最好使用转译将一些路径包装起来
echo export PATH=\$PATH:\$HADOOP_HOME/bin:\$HADOOP_HOME/sbin >> ~/.bashrc
---配置静态IP---
切换root用户
查看你的网关 ifconfig 我的ip为192.168.66.129 网关为66
执行修改代码 vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改BOOTPROTO=static onroot = yes
添加
IPADDR=192.168.66.134 (66设置成你的网段,最后随便设置,请牢记这个ip)
NETMASK=255.255.255.0
GATEWAY=192.168.66.2(这里的66也请改成你的网段)
DNS1=202.106.0.20
重启network systemctl restart network
然后重新连接 你的IP 我的是:ssh 192.168.66.133
---修改主机名和映射---
1.需要切换root用户,修改需要权限 ---->su root
2.修改主机名 ---->vi /etc/hostname
保存并退出
3.修改主机映射 --->vi /etc/hosts
保存并退出,然后reboot重启
4.修改Windows下的映射
进入到C:\Windows\System32\drivers\etc 目录下,修改权限之后打开hosts文件,将你的IP和主机名写入并保存
修改完之后将权限修改到原来的状态.
---修改配置文件---
1.重新连接到Linux
2.进入配置目录 --->cd $HADOOP_CONF_DIR
3.配置 core-site.xml
在configuration添加以下内容 然后保存退出
<property>
<name>fs.defaultFS</name>
<value>hdfs://python7:9000</value> ###这里的python7写自己的主机名
</property>
其中hdfs://python2:9000是hdfs系统的根目录,即当我们敲命令hadoop fs –XXX 或hdfs –dfs -XXX时,就是在此目录下进行操作的
4.配置hdfs-site.xml
在configuration添加以下内容 然后保存退出
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///home/hadoop/opt/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///home/hadoop/opt/tmp/dfs/data</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>python7:50070</value>
</property>
这里python2:50070是整个hadoop系统的监控地址,在IE浏览器中输入此地址,即可看到整体内容
5.配置 mapred-site.xml
查看当前目录会发现没有mapred-site.xml文件,只有一个mapred-site.xml.template的文件,我们复制一份命名为mapred-site.xml: cp mapred-site.xml.template mapred-site.xml
在configuration添加以下内容 然后保存退出
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
6.配置yarn-site.xml
在configuration添加以下内容 然后保存退出
<property>
<name>yarn.resourcemanager.hostname</name>
<value>python7</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
7.修改 slaves
---关闭防火墙和selinux---
切换到root用户
关闭防火墙
临时关闭:systemctl stop firewalld
永久关闭:systemctl disable firewalld
查看状态:systemctl status firewalld
关闭selinux
临时关闭:setenforce 0
永久关闭:vi /etc/selinux/config
修改 SELINUX =disabled
getenforce:查看状态
我们先来关闭防火墙,先执行临时关闭,然后再执行永久关闭
关闭selinux
现在重启机器并重新连接
查看selinux和防火墙的状态
执行hdfs文件系统格式化:hdfs namenode -format:此命令是格式化,生成tmp目录及其下的name/data
配置ssh 无密码登录
输入ssh-keygen -t rsa 一直回车就行
ssh-copy-id 你想登录到的计算机名 输入hadoop的密码
启动服务 start-dfs.sh(如果没有配置ssh 无密码登录,那么这里会一直提示输入密码)
再启动 start-yarn.sh
启动完成之后输入jps查看服务
然后在浏览器中输入python7:50070 ,打开如下页面及成功
---文件上传---
1.创建一个目录 hadoop fs -mkdir -p /user/hadoop
2. 新建一个文件a.txt,里面写一下东西
3. 上传a.txt
返回刚刚的python7:50070页面
---anaconda安装---
首先下载anaconda,链接: https://pan.baidu.com/s/1iyxwNDlqDsvepe7KX_ShQg 密码: vpnu
上传anaconda到hadoop用户下.
然后安装bzip2 ----->yum -y install bzip2
安装这个需要切换到root用户下,然后输入上面那条指令
然后退出root用户,开始安装anaconda
指令为Anaconda bash Anaconda3-5.0.1-Linux-x86_64.sh
然后继续回车,等待
接下来更新环境变量 ---->source ~/.bashrc
查看jupter地址 jupyter-notebook --ip python7
即可进入到这个界面
---spark安装---
首先下载spark
链接: https://pan.baidu.com/s/1BHOQEvlnaYp7SVOGA0TUIQ 密码: 7j6p
下载好之后将spark上传到hadoop中,并解压到opt目录中
然后更新环境变量,在 ~/.bashrc中添加
export SPARK_HOME=/home/hadoop/opt/spark-2.2.1-bin-hadoop2.7
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin
添加完成之后更新环境变量 , source ~/.bashrc
然后输入pyspark指令
输入exit() 即可退出
---SPARK CORE (python编程)---
打开我们之前jupter页面,新建一个jpynb文件
环境准备代码
import os
import sys
spark_home = os.environ.get('SPARK_HOME',None)
if not spark_home:
raise ValueError('SPARK_HOME enviroment variable is not set')
sys.path.insert(0,os.path.join(spark_home,'python'))
sys.path.insert(0,os.path.join(spark_home,'python/lib/py4j-0.10.4-src.zip'))
exec(open(os.path.join(spark_home,'python/pyspark/shell.py')).read())
执行比较慢,耐心等待出现welcom to...
如果不能正确显示,可在虚拟机中重新开启服务,然后再尝试.