CentOS6.5安装RHadoop
2016-05-08 14:54 猎手家园 阅读(646) 评论(0) 编辑 收藏 举报1、首先安装依赖包(各个节点都要安装)
[root@Hadoop-NN-01 ~]$ yum install gcc-gfortran #否则报”configure: error: No F77 compiler found”错误 [root@Hadoop-NN-01 ~]$ yum install gcc gcc-c++ #否则报”configure: error: C++ preprocessor “/lib/cpp” fails sanity check”错误 [root@Hadoop-NN-01 ~]$ yum install readline-devel #否则报”–with-readline=yes (default) and headers/libs are not available”错误 [root@Hadoop-NN-01 ~]$ yum install libXt-devel #否则报”configure: error: –with-x=yes (default) and X11 headers/libs are not available”错误
2、下载RHadoop相关软件包
R-3.2.5.tar.gz #https://cran.rstudio.com/src/base/R-3/ rmr-3.3.1 #https://github.com/RevolutionAnalytics/rmr2 rhdfs-1.0.8 rhbase-1.2.1 #以上软件下载地址:https://github.com/RevolutionAnalytics/RHadoop/wiki/Downloads rJava reshape2 Rcpp iterators itertools digest RJSONIO functional bitops stringr plyr caTools Rserve #以上软件下载地址:http://cran.at.r-project.org/src/contrib/Archive/
Cairo #Linux下R的绘图软件:http://www.rforge.net/Cairo/files/ RStudio #https://www.rstudio.com/products/rstudio/download/ Thrift #https://thrift.apache.org/
3、安装R语言(各个节点都要安装)
[root@Hadoop-NN-01 mysofts]# tar zxf /mnt/mydisk/soft/R/R-3.2.5.tar.gz [root@Hadoop-NN-01 mysofts]# cd R-3.2.5 [root@Hadoop-NN-01 R-3.2.5]# ./configure --prefix=/usr/local --disable-nls --enable-R-shlib #两个选项--disable-nls --enable-R-shlib是为RHive的安装座准备,如果不安装RHive可以省去。 [root@Hadoop-NN-01 R-3.2.5]# make [root@Hadoop-NN-01 R-3.2.5]# make install
其中readline-devel、libXt-devel在编译R的时候需要,而--enable-R-shlib是安装R的共享库,在安装Rstudio需要。
4、确认Java环境变量
RHadoop依赖于rJava包,安装rJava前确认已经配置了Java环境变量,然后进行R对jvm建立连接。
root@Hadoop-NN-01 ~]# R CMD javareconf
5、安装相关的依赖包,确保RHadoop软件包能正常使用
[root@Hadoop-NN-01 ~]# R > install.packages("rJava") > install.packages("reshape2") > install.packages("Rcpp") > install.packages("iterators") > install.packages("itertools") > install.packages("digest") > install.packages("RJSONIO") > install.packages("functional") > install.packages("bitops") > quit()
或者使用软件包安装:
[root@Hadoop-NN-01 mysofts]# R CMD INSTALL rJava_0.9-8.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL Rcpp_0.12.3.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL plyr_1.8.1.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL stringr_0.6.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL reshape2_1.4.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL iterators_1.0.7.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL itertools_0.1-1.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL digest_0.6.8.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL RJSONIO_1.2-0.2.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL functional_0.4.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL bitops_1.0-5.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL caTools_1.17.tar.gz
[root@Hadoop-NN-01 mysofts]# R CMD INSTALL Cairo_1.5-9.tar.gz
6、安装RHadoop软件包
首先将下面的变量加入到环境变量中:
[root@Hadoop-NN-01 ~]# vi /etc/profile export HADOOP_CMD=/home/hadoopuser/hadoop-2.6.0-cdh5.6.0/bin/hadoop export HADOOP_STREAMING=/home/hadoopuser/hadoop-2.6.0-cdh5.6.0/share/hadoop/tools/lib/hadoop-streaming-2.6.0-cdh5.6.0.jar [root@Hadoop-NN-01 ~]# source /etc/profile #保存生效
安装
[root@Hadoop-NN-01 mysofts]# R CMD INSTALL rhdfs_1.0.8.tar.gz [root@Hadoop-NN-01 mysofts]# R CMD INSTALL rmr2_3.3.0.tar.gz #各个节点都要安装
7、使用RHadoop软件包
[root@Hadoop-NN-01 ~]# R > library(rhdfs) > hdfs.init() > hdfs.ls("/")
如出现警告:
> hdfs.init() 16/05/10 10:58:26 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
需要在/etc/profile中设置环境变量JAVA_LIBRARY_PATH:
export JAVA_LIBRARY_PATH=/home/hadoopuser/hadoop-2.6.0-cdh5.6.0/lib/native
再将native下面的libhadoop.so.0 及 libhadoop.so.1.0.0拷贝到 /usr/lib64下面:
[root@Hadoop-NN-01 ~]# cp /home/hadoopuser/hadoop-2.6.0-cdh5.6.0/lib/native/libhadoop.so /usr/lib64/ [root@Hadoop-NN-01 ~]# cp /home/hadoopuser/hadoop-2.6.0-cdh5.6.0/lib/native/libhadoop.so.1.0.0 /usr/lib64/
8、安装Rstudio Server
下载地址:https://www.rstudio.com/products/rstudio/download-server/
[root@Hadoop-NN-01 mysofts]$ wget https://download2.rstudio.org/rstudio-server-rhel-0.99.902-x86_64.rpm #下载 [root@Hadoop-NN-01 mysofts]$ sudo yum install --nogpgcheck rstudio-server-rhel-0.99.902-x86_64.rpm #安装 [root@Hadoop-NN-01 mysofts]$ rstudio-server start #启动
报错:Unable to connect to Upstart: Failed to connect to socket /com/ubuntu/upstart: Connection refused
解决方案:
sudo dpkg-divert --local --rename --add /sbin/initctl ln -s /bin/true /sbin/initctl
rstudio-server默认端口:8787
windows下访问:http://server-ip:8787
输入用户名、密码即可使用。
使用文档:https://support.rstudio.com/hc/en-us/articles/200552306-Getting-Started
配置RStudio Server(略)
9、Linux下运行R脚本
构建test.r脚本:
#!/usr/bin/Rscript a<-c(1:20) b<-rep(c(1:4),5) c<-a/b data<-data.frame(a,b,c) write.table(data, file="/root/r_test", row.names=FALSE)
运行:
[root@Hadoop-NN-01 ~]# Rscript test.r
10、TIPS
A:R相关的软件包安装在/usr/local/lib64/R/library下,可以在该目录下查看是否已经安装了相应的软件包。
B:如果安装的时候不是用root身份安装,则R安装的软件包会在用户目录上,其他用户将使用不了软件包。
C:在安装rhbase软件需要安装thrift,在后面章节介绍。