HadoopSpark集群部署手册.docx

上传人:牧羊曲112 文档编号:4219682 上传时间:2023-04-10 格式:DOCX 页数:26 大小:443.22KB
返回 下载 相关 举报
HadoopSpark集群部署手册.docx_第1页
第1页 / 共26页
HadoopSpark集群部署手册.docx_第2页
第2页 / 共26页
HadoopSpark集群部署手册.docx_第3页
第3页 / 共26页
HadoopSpark集群部署手册.docx_第4页
第4页 / 共26页
HadoopSpark集群部署手册.docx_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《HadoopSpark集群部署手册.docx》由会员分享,可在线阅读,更多相关《HadoopSpark集群部署手册.docx(26页珍藏版)》请在三一办公上搜索。

1、1 软件环境整体情况说明172.16.158.24172.16.158.25172.16.158.26172.16.158.27JDKHadoop(Master)(Slave)(Slave)(Slave)HiveScalaSpark(Master)(Worker)(Worker)(Worker)2 安装包下载路径系统名软件包名下载路径Sparkhadoop-2.2.0.tar.gz开源软件/hive-1.2.1.tar.gzspark-1.5.1.tar.gzscala-2.10.4.tgz3 Hadoop2.2安装和配置3.1 集群网络环境节点IP地址和主机名分布如下:IPHostName用

2、户名172.16.158.24DashDB01.yunvod172.16.158.25spark01.yunvod172.16.158.26spark02.yunvod172.16.158.27spark03.yunvod3.2 环境搭建(每台机器都要操作)3.2.1 修改HostName(非必须)vim /etc/sysconfig/network修改HOSTNAME为需要的名称重启服务器,进行生效reboot3.2.2 设置Host映射文件1.使用root身份编辑/etc/hosts映射文件,设置IP地址及机器名的映射,设置信息如下:vim /etc/hosts172.16.158.24

3、DashDB01.yun172.16.158.25 spark01.yun172.16.158.26 spark02.yun172.16.158.27 spark03.yun 2.使用如下命令对网络设置进行重启/etc/init.d/network restart3.验证设置是否成功3.2.3 设置操作系统环境3.2.3.1 关闭防火墙在Hadoop安装过程中需要关闭防火墙和SElinux,否则会出现异常1.service iptables status查看防火墙状态,如下所示表示iptables已经开启2.以root用户使用如下命令关闭iptableschkconfig iptables o

4、ff3.2.3.2 关闭SElinux1.使用getenforce命令查看是否关闭2.修改/etc/selinux/config文件将SELINUX=enforcing改为SELINUX=disabled,执行该命令后重启机器生效3.2.3.3 JDK安装及配置赋予vod用户/usr/lib/java目录可读写权限,使用命令如下:sudo chmod -R 777 /usr/lib/java把下载的安装包,上传到/usr/lib/java目录下,使用如下命令进行解压tar -zxvf jdk-7u55-linux-x64.tar.gz解压后目录如下图所示:使用root用户配置/etc/prof

5、ile,该设置对所有用户均生效vim /etc/profile添加以下信息:export JAVA_HOME=/usr/lib/java/jdk1.7.0_55export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/binexport CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib修改完毕后,使用source /etc/pro -version3.2.3.4 更新OpenSSLyum update openssl3.2.3.5 无密码验证配置1.以root用户使用vim /etc/ssh/

6、sshd_config,打开sshd_config配置文件,开放4个配置,如下图所示:RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysStrictModes no2.配置后重启服务service sshd restart3.使用root用户登录在4个节点,在/home/common目录下,执行命令mkdir .ssh4.使用vod用户登录在4个节点中使用如下命令生成私钥和公钥;sudo chown -R vod .sshssh-keygen -t rsa5.进入/home/common/.ssh目录在4个节点中分别使用如下命

7、令cp id_rsa.pub authorized_keys_DashDB01.yun把公钥命名authorized_keys_DashDB01.yunauthorized_keys_spark01.yunauthorized_keys_spark02.yunauthorized_keys_spark03.yun6.把3个从节点(spark01,spark02,spark03)的公钥使用scp命令传送到DashDB01.yun节点的/home/common/.ssh文件夹中;scp authorized_keys_spark01.yun :/home/common/.ssh最终DashDB01

8、.yun节点中文件如下7.把4个节点的公钥信息保存到authorized_key文件中使用cat authorized_keys_DashDB01.yun authorized_keys命令8.把该文件分发到其他两个从节点上使用scp authorized_keys :/home/common/.ssh把密码文件分发出其余三台机器的.ssh文件包含如下:9.在4台机器中使用如下设置authorized_keys读写权限chmod 775 authorized_keys10.测试ssh免密码登录是否生效3.3 配置Hadooop设置3.3.1 准备hadoop文件1.把hadoop-2.2.0目

9、录移到/usr/local目录下cd /home/hadoop/Downloads/sudo cp hadoop-2.2.0 /usr/local2.使用chown命令遍历修改hadoop-1.1.2目录所有者为hadoopsudo chown -R vod /usr/local/hadoop-2.2.0chmod 775 -R /usr/local/hadoop-2.2.0/3.3.2 在Hadoop目录下创建子目录使用vod用户在hadoop-2.2.0目录下创建tmp、name和data目录,保证目录所有者为vodcd /usr/local/hadoop-2.2.0mkdir tmpmk

10、dir namemkdir datals配置/etc/pro vim /etc/profile添加以下内容export HADOOP_HOME=/usr/local/hadoop-2.2.0export PATH=$PATH:$HADOOP_HOME/binexport YARN_HOME=$HADOOP_HOMEexport HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexport YARN_CONF_DIR=$HADOOP_HOMR/etc/hadoop使用命令使其生效source /etc/profile3.3.3 配置hadoop-env.sh1.打开

11、配置文件hadoop-env.shcd /usr/local/hadoop-2.2.0/etc/hadoopsudo vim hadoop-env.sh2.加入配置内容,设置了hadoop中jdk和hadoop/bin路径export JAVA_HOME=/usr/lib/java/jdk1.7.0_55export PATH=$PATH:/usr/local/hadoop-2.2.0/bin3.编译配置文件hadoop-env.sh,并确认生效source hadoop-env.sh3.3.4 配置yarn-env.sh1.在/usr/local/hadoop-2.2.0/etc/hadoo

12、p打开配置文件yarn-env.shcd /usr/local/hadoop-2.2.0/etc/hadoopsudo vim yarn-env.sh2.加入配置内容,设置了hadoop中jdk和hadoop/bin路径export JAVA_HOME=/usr/lib/java/jdk1.7.0_553.编译配置文件yarn-env.sh,并确认生效source yarn-env.sh3.3.5 配置core-site.xml1.使用如下命令打开core-site.xml配置文件sudo vim core-site.xml2.在配置文件中,按照如下内容进行配置 fs.default.name

13、 hdfs:/172.16.158.24:9000 fs.defaultFS hdfs:/172.16.158.24:9000 io. 131072 hadoop.tmp.dir Abase for other temporary directories. hadoop.proxyuser.hduser.hosts * hadoop.proxyuser.hduser.groups * 3.3.6 配置hdfs-site.xml1.使用如下命令打开hdfs-site.xml配置文件sudo vim hdfs-site.xml2.在配置文件中,按照如下内容进行配置 dfs.namenode.sec

14、ondary.http-address 172.16.158.24:9001 dfs.namenode.name.dir dfs.datanode.data.dir dfs.replication 2 dfs.webhdfs.enabled true dfs.permissions false 3.3.7 配置mapred-site.xml1.默认情况下不存在mapred-site.xml文件,可以从模板拷贝一份cp mapred-site.xml.template mapred-site.xml2.使用如下命令打开mapred-site.xml配置文件sudo vim mapred-site

15、.xml3.在配置文件中,按照如下内容进行配置 mapreduce.framework.name yarn mapreduce.jobhistory.address 172.16.158.24:10020 mapreduce.jobhistory.webapp.address 172.16.158.24:19888 3.3.8 配置yarn-site.xml1.使用如下命令打开yarn-site.xml配置文件sudo vim yarn-site.xml2.在配置文件中,按照如下内容进行配置yarn.nodemanager.aux-servicesmapreduce_shuffleyarn.n

16、odemanager.aux-servicesmapreduce_shuffleyarn.nodemanager.aux-services.mapreduce.shuffle.classorg.apache.hadoop.mapred.ShuffleHandleryarn.resourcemanager.address172.16.158.24:8032yarn.resourcemanager.scheduler.address172.16.158.24:8030yarn.resourcemanager.resource-tracker.address172.16.158.24:8031yar

17、n.resourcemanager.admin.address172.16.158.24:8033yarn.resourcemanager.webapp.address172.16.158.24:80883.3.9 配置slaves文件1.设置从节点sudo vim slaves修改为spark01.yunspark02.yunspark03.yun3.3.10 向各节点分发hadoop程序1.在spark01.yun spark02.yun spark03.yun机器中创建/usr/local/hadoop-2.2.0目录,然后修改该目录所有权限sudo mkdir /usr/local/h

18、adoop-2.2.0sudo chown-R vod /usr/local/hadoop-2.2.0sudo chmod 775 -R /usr/local/hadoop-2.2.0/2.在DashDB01.yun机器上进入/usr/local/hadoop-2.2.0目录,使用如下命令把hadoop文件夹复制到其他3台使用命令cd /usr/local/hadoop-2.2.0scp -r * :/usr/local/hadoop-2.2.0scp -r * :/usr/local/hadoop-2.2.0scp -r * :/usr/local/hadoop-2.2.03.在从节点查看是

19、否复制成功执行chmod 775 -R /usr/local/hadoop-2.2.0/4每个节点配置/etc/pro vim /etc/profile添加以下内容export HADOOP_HOME=/usr/local/hadoop-2.2.0export PATH=$PATH:$HADOOP_HOME/binexport YARN_HOME=$HADOOP_HOMEexport HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoopexport YARN_CONF_DIR=$HADOOP_HOMR/etc/hadoop使用命令使其生效source /etc/pro

20、file3.4 启动hadoop3.4.1 格式化namenode./bin/hdfs namenode -format3.4.2 启动hadoopcd /usr/local/hadoop-2.2.0/sbin./start-all.sh3.4.3 验证当前进行此时执行jps命令在DashDB01.yun上运行的进程有:namenode,secondarynamenode,resourcemanagerspark01.yun spark02.yun 和spark03.yun上面运行的进程有:datanode,nodemanager4 Hive1.2.1安装和配置4.1 拷贝项目sudo cp

21、-r /home/common/Downloads/hive-1.2.1/ hive-1.2.1更改文件夹所属sudo chown -R vod /usr/local/hive-1.2.1sudo chmod 775 -R /usr/local/hive-1.2.1配置/etc/pro vim /etc/profileexport HIVE_HOME=/usr/local/hive-1.2.1export PATH=$HIVE_HOME/bin:$PATHexport HIVE_CONF_DIR=$HIVE_HOME/confsource /etc/profile4.2 配置hive(使用my

22、sql数据源)前提条件:在mysql数据库建立hive用户并赋予相关权限mysql CREATE USER hive IDENTIFIED BY mysql;mysql GRANT ALL PRIVILEGES ON *.* TO hive% WITH GRANT OPTION;mysql flush privileges;cd $HIVE_CONF_DIR/cp hive-default.xml.template hive-site.xmlvim hive-site.xml修改下列参数:javax.jdo.option.ConnectionURLjdbc:mysql:/192.168.15.

23、150:3306/hive?createDatabaseIfNotExist=truejavax.jdo.option.ConnectionDriverNamecom.mysql.jdbc.Driverjavax.jdo.option.ConnectionUserNamehivejavax.jdo.option.ConnectionPasswordhive执行命令chmod 775 -R /usr/local/hive-1.2.1/4.3 启动HiveServer2(后台启动)cd $HIVE_HOME/binnohup hive -service hiveserver2 &测试:netsta

24、t -an|grep 10000 或者使用 jdbc连接测试4.4 测试输入hive命令,启动hivehive show tables;OKTime taken: 4.824 secondshive create table hwz(id int, name string);OKTime taken: 0.566 secondshive select * from hwz;OKTime taken: 0.361 seconds$ hadoop dfs -lsr /user/hiveWarning: $HADOOP_HOME is deprecated.drwxr-xr-x - hadoop s

25、upergroup 0 2012-03-22 12:36 /user/hive/warehousedrwxr-xr-x - hadoop supergroup 0 2012-03-22 12:36 /user/hive/warehouse/hwz5 Scala安装和配置5.1 拷贝安装包cd /usr/libsudo cp /home/common/Downloads/scala-2.10.4.tgz scala-2.10.4.tgz5.2 解压安装包sudo tar -xvf scala-2.10.4.tgzsudo rm scala-2.10.4.tgz给scala文件夹赋予相应的权限su

26、do chown -R vod /usr/lib/scala-2.10.4sudo chmod 775 -R /usr/lib/scala-2.10.4配置/etc/pro vim /etc/pro SCALA_HOME=/usr/lib/scala-2.10.4export PATH=$PATH:$SCALA_HOME/binsource /etc/profile5.3 向每台机器分发cd /usr/libsudo mkdir scala-2.10.4sudo chown-R vod /usr/lib/scala-2.10.4sudo chmod 775 -R /usr/lib/scala-

27、2.10.4scp -r * :/usr/lib/scala-2.10.4配置/etc/pro vim /etc/pro SCALA_HOME=/usr/lib/scala-2.10.4export PATH=$PATH:$SCALA_HOME/binsource /etc/profile5.4 检测scala -version6 Spark安装和配置6.1 在master上安装并配置Sparksudo cp -r /home/common/Downloads/spark-1.5.1/ spark-1.5.1sudo chown-R vod /usr/local/spark-1.5.1sudo

28、 chmod 775 -R /usr/local/spark-1.5.1l 设置SPARK_EXAMPLES_JAR 环境变量sudo vim /etc/profileexport SPARK_HOME=/usr/local/spark-1.5.1export PATH=$PATH:$SPARK_HOME/binexport SPARK_EXAMPLES_JAR=$SPARK_HOME/lib/spark-assembly-1.5.1-hadoop2.2.0.jarsource /etc/profilel 在conf/spark-env.sh中设置cd $SPARK_HOME/confmv s

29、park-env.sh.template spark-env.shsudo vim spark-env.shexport JAVA_HOME=/usr/lib/java/jdk1.7.0_55export SCALA_HOME=/usr/lib/scala-2.10.4export SPARK_MASTER_IP=172.16.158.24export SPARK_MASTER_PORT=7077export MASTER=spark:/$SPARK_MASTER_IP:$SPARK_MASTER_PORTexport SPARK_MEM=16gexport SPARK_WORKER_MEMO

30、RY=32gexport SPARK_WORKER_CORES=12source spark-env.shl 在conf/slaves, 添加Spark worker的hostname, 一行一个。vim slavesspark01.yunspark02.yunspark03.yunl 在conf/spark-defaults.conf中设置mv spark-defaults.conf.template spark-defaults.confvim spark-defaults.confspark.driver.maxResultSize 4gspark.local.dir /usr/loca

31、l/spark-1.5.1/tmp#spark. falsespark.shuffle.memoryFraction 0.4spark.storage.memoryFraction 0.4spark.sql.shuffle.partitions 400spark.kryoserializer.buffer.max 1024spark.reducer.maxMbInFlight 1g6.2 在所有worker上安装并配置Spark既然master上的这个文件件已经配置好了,把它拷贝到所有的worker。注意,三台机器spark所在目录必须一致,因为master会登陆到worker上执行命令,ma

32、ster认为worker的spark路径及自己一样。在其余三台机器上,建立spark目录并赋予权限sudo mkdir /usr/local/spark-1.5.1sudo chown-R vod /usr/local/spark-1.5.1sudo chmod 775 -R /usr/local/spark-1.5.1使用主机操作如下命令cd /usr/local/spark-1.5.1scp -r * :/usr/local/spark-1.5.1scp -r * :/usr/local/spark-1.5.1scp -r * :/usr/local/spark-1.5.16.3 启动Sp

33、arkcd /usr/local/spark-1.5.1/sbin./start-all.sh6.4 Hive on spark 配置(数据源MySql)1 修改conf目录下hive-site.xml hive.metastore.uris的value值设置为thrift:/IP:9083(9083是hive数据源默认端口)2 Hive启动远程数据源,默认端口9083cd $HIVE_HOME/bin/nohup ./hive -service metastore &3 启动服务,并加载mysql驱动包cd /usr/local/spark-1.5.1/sbin./start-thriftserver.sh -driver-class-path $HIVE_HOME/lib/mysql-connector-java-5.1.24-bin.jar

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号