1. VM
2. VM 网卡配置
主机模式下修改静态IP
1.修改本地windows网卡配置
打开控制面板进入到网络和Internet 设置界面
点击进入网络和共享中心,点击更改适配器设置
当我们安装安装了vmpare软件后,会生成VMnet1和VMnet8俩个选项配置,这两个给虚拟机配置的。
我们采用主机模式的时候,需要修改VMnet1配置,点击右键属性进入,双击进入其中目录项Internet协议版本4(TCP/IPV4),
其中配置使用下面的IP地址,IP地址为192.168.150.2,会自动生成子网掩码,点击确定保存。
2.打开虚拟机做一下操作
vim/etc/sysconfig/network-scripts/ifcfg-eth0 进入修改模式
修改增加以下内容
ONBOOT=yes
BOOTPRPTO=none 之前是配置动态IP,改为配置静态IP
IPADDR=192.168.150.1
NETMAST=255.255.255.0
然后关闭防火墙
serviceiptables stop
serviceip6tables stop
serviceNetworkManager stop
保证在下次开机前防火墙仍然关闭
chkconfigiptables off
chconfigip6tables off
chconfigNetworkManager off
然后
getenforce enforce增强linux安全机制,get获取
setenforce0 设置
servicenetwork restart 重启网卡配置
ifconfig 查看网卡信息之前配置已经生效
这时候就可以在windos通过xshell连接虚拟机了。
3. 修改主机名
vi /etc/sysconfig/network 编辑修改名称
vi /etc/hosts 增加三台机器的解析
192.168.130.180 hadoop01
192.168.130.181 hadoop02
192.168.130.182hadoop03
4. 配置机器内免ssh登录
在mast上先执行
ssh-keygen -t rsa(回车)
执行完后再执行,copy到目标机器上,根据提示输出密码等。
ssh-copy-id 192.130.181
或者采用scp命令进行分发如下
scp~/.ssh/id_rsa.pub root@master:~/.ssh/id_rsa.pub.datanode01
scp~/.ssh/id_rsa.pub root@master:~/.ssh/id_rsa.pub.datanode01
在这之后需要scp命令对主机进行分发文件。
运行ssh命令严重无密码通信
ssh master
ssh datanode01
sshdatanode02
5. 安装jdk
1)先检查当前系统是否安装了jdk,如果安装了jdk,是不是需要的版本,是否要卸载
查看安装的jdk
rpm -qa|grep jdk
可能看到类似如下的配置
java-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
java-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
如果卸载然后执行
rpm -e –nodepsjava-1.7.0-openjdk-1.7.0.45-2.4.3.3.el6.x86_64
rpm -e –nodepsjava-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64
或者rpm -ejava-1.6.0-openjdk-1.6.0.0-1.66.1.13.0.el6.x86_64 -e命令是移除
2)上传或者下载jdk包到/usr/local目录
tar -xzvf/tools/jdk-8u141-linux-x64.tar.gz 解压
配置环境变量编辑/etc/profile文件
vi /etc/profile 追加
exportJAVA_HOME=/usr/local/jdk1.8.0_141
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib
/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
source . /etc/profile
source命令可以重新加载/etc/profile文件,使修改的内容在当前shell窗口中生效。
测试是否安装成功,如果出来信息则安装成功
Java -version
6. 安装Hadoop yarn环境
6.1 准备工作
从官网下载 hadoop2.6.0 版本。本次部署采用2.6.0版本。
mkdir tools
上传hadoop到这个目录
mkdir -p /opt/server
cd /opt/server
tar -zxvf /tools/hadoop-2.6.0.tar.gz
mv hadoop-2.6.0 hadoop 改名一下
6.2 配置修改hadoop相关配置文件。
cd到hadoop目录,进入到/hadoop/etc/hadoop 配置目录, 需要配置有以下7个文件:hadoop-env.sh,yarn-env.sh,slaves,core-site.xml,hdfs-site.xml,maprd-site.xml,yarn-site.xml
1) 在hadoop-env.sh中配置JAVA_HOME
# The java implementation to use.
exportJAVA_HOME=/usr/local/jdk
2) 在yarn-env.sh中配置JAVA_HOME
# The java implementation to use.
exportJAVA_HOME=/usr/local/jdk
3) 在slaves中配置slave节点的ip或者host
datanode01
datanode02
4) 修改core-site.xml
fs.defaultFS
hdfs://master:9000/
hadoop.tmp.dir
file:/opt/server/hadoop/tmp
5) 修改hdfs-site.xml
dfs.namenode.secondary.http-address
master:9001
dfs.namenode.name.dir
file: /opt/server/hadoop/dfs /name
dfs.datanode.data.dir
file:/opt/server/hadoop/dfs/data
dfs.replication
3
6) 修改mapred-site.xml
mapreduce.framework.name
yarn
7) 修改yarn-site.xml
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.hadoop.mapred.ShuffleHandler
yarn.resourcemanager.address
master:8032
yarn.resourcemanager.scheduler.address
master:8030
yarn.resourcemanager.resource-tracker.address
master:8035
yarn.resourcemanager.admin.address
master:8033
yarn.resourcemanager.webapp.address
master:8088
8) 将配置好的hadoop分发给所有的datanode节点
scp -r /opt/server/hadoop root@datanode01:/opt/server/
scp -r /opt/server/hadoop root@datanode02:/opt/server/
以上配置完成后,就可以启动hadoop了
在master上执行以下操作。
启动Hadoop
cd /opt/server/hadoop #进入hadoop目录
bin/hadoop namenode -format #格式化namenode
sbin/start-dfs.sh #启动dfs
sbin/start-yarn.sh #启动yarn
验证Hadoop 是否安装成功
可以通过jps
命令查看各个节点启动的进程是否正常。在 master上应该有以下几个进程:
$ jps #run on master
3407 SecondaryNameNode
3218 NameNode
3552 ResourceManager
3910 Jps
在每个datanode上应该有以下几个进程:
$ jps #run on slaves
2072 NodeManager
2213 Jps
1962 DataNode
在浏览器中输入 http://master:8088 ,应该有 hadoop 的管理界面出来了,并能看到datanode01 和 datanode02 节点。
如下图
1. sprak环境安装配置
上传spark-1.6.3-bin-hadoop2.6.tgz到tools目录
在opt/server目录下解压tar包
tar -zxvf spark-1.6.3-bin-hadoop2.6.tgz
mv spark-1.6.3-bin-hadoop2.6 sprk #改下名称
配置Spark
cd ~/workspace/spark/conf #进入spark配置目录
cp spark-env.sh.template spark-env.sh #从配置模板复制
vi spark-env.sh #添加配置内容
在spark-env.sh末尾添加以下内容(这是我的配置,你可以自行修改):
export SCALA_HOME= ..
export JAVA_HOME=..
export HADOOP_HOME= ..
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
SPARK_MASTER_IP=master
SPARK_LOCAL_DIRS=/opt/server/spark
SPARK_DRIVER_MEMORY=1G
注:在设置Worker进程的CPU个数和内存大小,要注意机器的实际硬件条件,如果配置的超过当前Worker节点的硬件条件,Worker进程会启动失败。
cp slaves.template slaves
其中配置下
datanode01
datanode02
配置好的sprk进行分发到节点
scp -r/opt/server/spark/ root@datanode01:/opt/server/
scp -r/opt/server/spark/ root@datanode02:/opt/server/
启动spark
sbin/start-all.sh
验证spark是否安装成功
用jps检查,在 master上应该有以下几个进程:
$ jps
7949 Jps
7328 SecondaryNameNode
7805 Master
7137 NameNode
7475 ResourceManager
在 slave上应该有以下几个进程:
$jps
3132 DataNode
3759 Worker
3858 Jps
3231 NodeManager
进入Spark的Web管理页面: http://master:8080
如下
6.运行案例
运行spark下的example案例
./bin/spark-submit--class org.apache.spark.examples.SparkPi --master yarn-cluster -
-executor-memory1G --num-executors 1 ./lib/spark-examples-1.6.3-hadoop2.6.0.jar 100
案例:
http://blog.csdn.net/hzdxw/article/details/51816494
http://blog.csdn.net/leishenop/article/details/52843899
http://blog.csdn.net/fansy1990/article/details/51356583
注意 Spark on YARN 支持两种运行模式,分别为yarn-cluster
和yarn-client
,具体的区别可以看这篇博文,从广义上讲,yarn-cluster适用于生产环境;而yarn-client适用于交互和调试,也就是希望快速地看到application的输出。