安装前说明
本文档是记录在CentOS7的最小化系统下安装pyspark步骤的文档说明。CentOS运行在vmware虚拟机中。
版本和下载链接:
CentOS版本:CentOS-7-x86_64-DVD-1804.iso
Java版本:1.8.0,https://download.oracle.com/otn-pub/java/jdk/8u201-b09/42970487e3af4f5aa5bca3f542482c60/jdk-8u201-linux-x64.tar.gz
Hadoop版本:3.0.3,http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.0.3/hadoop-3.0.3.tar.gz
Python版本:3.7.2,https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
Spark版本:2.4.0,https://www.apache.org/dyn/closer.lua/spark/spark-2.4.0/spark-2.4.0-bin-hadoop2.7.tgz
以上版本都是截至2019年1月份最新版本。
Hadoop、Python、Spark下载后统一保存在/root/download下,安装路径统一在/usr/local下。
CentOS7配置
CentOS是安装的最小系统版本,vmware中安装CentOS的步骤很简单,网络上一大把的教程,在此不做说明。
安装完成后,需要设置开机自动启动网络连接、设置静止的IP地址和安装wget。
开机启动网络连接:
编辑网络配置文件:
vi /etc/sysconfig/network-scripts/ifcfg-eno33
修改配置文件onboot选项,把默认的no修改为yes
onboot=yes
保存退出,重启网络服务:
service network restart
固定IP设置:
编辑网络配置文件:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
修改或者添加一下内容:
BOOTPROTO=static
IPADDR=192.168.29.129
NETMASK=255.255.255.0
GATEWAY=192.168.29.2
DNS1=114.114.114.114
DNS2=8.8.8.8
保存并退出,然后执行service network restart重新加载网络设置。
安装wget
yum -y install wget
安装JAVA
解压到/usr/local/java目录下:
tar zxvf /root/download/jdk-8u181-linux-x64.tar.gz -C /usr/local/java/
编辑/etc/profile添加以下内容:
JAVA_HOME=/usr/local/java/jdk1.8.0_181
JRE_HOME=$JAVA_HOME/jre
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
export JAVA_HOME JRE_HOME PATH CLASSPATH
立即生效:
source /etc/profile
检查Java是否安装成功:
java -version
如果出现下图所示,表示安装成功:
java安装成功提示
安装Hadoop
解压到/usr/local/hadoop/目录下:
tar zxvf /root/download/hadoop-3.0.3.tar.gz -C /usr/local/hadoop/
编辑/etc/profile,添加以下内容:
export HADOOP_HOME=/usr/local/hadoop/hadoop-3.0.3
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/sbin:$HADOOP_HOME/bin
编辑/usr/local/hadoop/hadoop-3.0.3/etc/hadoop/hadoop-env.sh
# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!
# export JAVA_HOME=
修改为:
# The java implementation to use. By default, this environment
# variable is REQUIRED on ALL platforms except OS X!
export JAVA_HOME=/usr/local/java/jdk1.8.0_181
创建data目录:
mkdir /usr/local/hadoop/hadoop-3.0.3/data
编辑/usr/local/hadoop/hadoop-3.0.3/etc/hadoop/core-site.xml:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.29.129:9000</value>
</property>
<!-- 指定hadoop存储数据的目录 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoop-3.0.3/data</value>
</property>
</configuration>
编辑/usr/local/hadoop/hadoop-3.0.3/etc/hadoop/hdfs-site.xml:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.http.address</name>
<value>0.0.0.0:50070</value>
</property>
</configuration>
编辑/usr/local/hadoop/hadoop-3.0.3/etc/hadoop/mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
编辑/usr/local/hadoop/hadoop-3.0.3/etc/hadoop/yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.resourcemanager.hostname</name>
<value>192.168.29.129</value>
</property>
<!-- 分别指定MapReduce的方式 -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
初始化Hadoop HDFS文件系统:
hdfs namenode -format
创建新用户hadoop3:
useradd hadoop3
passwd hadoop3
修改Hadoop的安装文件的所属用户和所属组:
chown -R hadoop3:123 /usr/local/hadoop/
切换到hadoop3用户:
su - hadoop3
设置ssh免密码登录:
ssh-keygen -t rsa
执行该命令后再接着三个回车 然后将公钥拷贝给自己:
ssh-copy-id localhost
启动HDFS:
./usr/local/hadoop/hadoop-3.0.3/sbin/start-dfs.sh
启动YARN:
./usr/local/hadoop/hadoop-3.0.3/sbin/start-yarn.sh
jps查看:
jps
关闭CentOS 7的防火墙服务firewalld:
systemctl stop firewalld
设置防火墙服务开机不启动:
systemctl disable firewalld
打开Hadoop HDFS的管理页面,使用浏览器访问hdfs管理界面:
http://192.168.29.129:50070
hdfs管理界面
打开Hadoop YARN的管理页面,使用浏览器访问yarn管理界面:
http://192.168.29.129:8088
yarn管理界面
安装Python3
安装必备软件源:
yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make libffi-devel
解压目录:
tar zxvf /root/download/Python-3.7.2.tgz -C /root/download/
进入解压后目录:
cd Python-3.7.2
手动编译:
./configure prefix=/usr/local/python3
make && make install
添加python3的软链接 :
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3.7
添加 pip3 的软链接 :
ln -s /usr/local/python3/bin/pip3.7 /usr/bin/pip3.7
测试是否安装成功了 :
python -V
编辑/usr/bin/yum:
#! /usr/bin/python
修改为 :
#! /usr/bin/python2
编辑/usr/libexec/urlgrabber-ext-down:
#! /usr/bin/python
修改为 :
#! /usr/bin/python2
安装pyspark:
pip install pyspark
编辑/etc/profile,添加:
export PYSPARK_PYTHON=/usr/local/python/bin/python3.7
启动Spark:
cd /usr/local/python3/bin
./spark
当我们看到这个界面,说明已经安装成功了。