hadoop大数据平台集群部署与开发_nginx集群部署详解

hadoop大数据平台集群部署与开发_nginx集群部署详解大数据Hadoop-Spark集群部署知识总结 一、启动/关闭 hadoop myhadoop.sh start/stop 分步启动: 第一步:在hadoop102主机上 sbin/start-dfs

大数据Hadoop-Spark集群部署知识总结(一)

大数据Hadoop-Spark集群部署知识总结

一、启动/关闭 hadoop

myhadoop.sh start/stop

分步启动:

第一步:在hadoop102主机上 sbin/start-dfs.sh

第二步:在hadoop103主机上 sbin/start-yarn.sh

分步关闭:

第一步:在hadoop103主机上 sbin/stop-yarn.sh

第二步:在hadoop102主机上 sbin/stop-dfs.sh

myhadoop.sh脚本文件内容

#!/bin/bash

if [ $# -lt 1 ]
then
    echo "No Args Input..."
    exit ;
fi

case $1 in
"start")
        echo " =================== 启动 hadoop集群 ==================="

        echo " --------------- 启动 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/start-dfs.sh"
        echo " --------------- 启动 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/start-yarn.sh"
        echo " --------------- 启动 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon start historyserver"
;;
"stop")
        echo " =================== 关闭 hadoop集群 ==================="

        echo " --------------- 关闭 historyserver ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/bin/mapred --daemon stop historyserver"
        echo " --------------- 关闭 yarn ---------------"
        ssh hadoop103 "/opt/module/hadoop-3.1.3/sbin/stop-yarn.sh"
        echo " --------------- 关闭 hdfs ---------------"
        ssh hadoop102 "/opt/module/hadoop-3.1.3/sbin/stop-dfs.sh"
;;
*)
    echo "Input Args Error..."
;;
esac

二、启动/关闭 zookeeper

myzk.sh start/stop

分步启动/关闭:

bin/zkServer.sh start

bin/zkServer.sh stop

myzk.sh脚本文件内容

for host in hadoop102 hadoop103 hadoop104
do
        case $1 in
        "start")
                ssh $host "source /etc/profile;/opt/module/zookeeper-3.5.7/bin/zkServer.sh $1"
                echo "$host zk is running..."
                echo "-----------------------------"
        ;;

        "stop")
                ssh $host "source /etc/profile;/opt/module/zookeeper-3.5.7/bin/zkServer.sh $1"
                echo "$host zk is stopping..."
                echo "-----------------------------"
        ;;

        *)
                 echo "输入有误!"
        ;;
     esac
done

三、启动Hbase

bin/hbase-daemon.sh start master

bin/hbase-daemon.sh start regionserver

bin/hbase-daemon.sh stop master

bin/hbase-daemon.sh stop regionserver

bin/start-hbase.sh

bin/stop-hbase.sh


四、常见端口号总结

50070:HDFSwebUI的端口号

8485:journalnode默认的端口号

9000:非高可用访问数rpc端口

8020:高可用访问数据rpc

8088:yarn的webUI的端口号

8080:master的webUI,Tomcat的端口号

7077:spark基于standalone的提交任务的端口号

8081:worker的webUI的端口号

18080:historyServer的webUI的端口号

4040:application的webUI的端口号

2181:zookeeper的rpc端口号

9083:hive的metastore的端口号

60010:Hbase的webUI的端口号

6379:Redis的端口号

8087:sparkwebUI的端口号 sbin/start-master.sh 文件可以修改端口号,默认是8080,我改为8081

9092:kafka broker的端口


五、启动Hive

  1. 启动metastore hive –service metastore
  2. 启动hiveserver2 bin/hive –service hiveserver2
  3. 启动hive (/opt/module/hive):bin/hive

hive建表:

create table test1
(InvoiceNo String, StockCode String, Description String, Quantity String, InvoiceDate String, UnitPrice String, CustomerID String, Country String)
ROW format delimited fields terminated by "," STORED AS TEXTFILE;

导入数据:

load data local inpath "/opt/module/data/test.csv" into table test1;

sqoop导出到mysql:

bin/sqoop export 
--connect jdbc:mysql://hadoop102:3306/company 
--username root 
--password 000429 
--table sale 
--num-mappers 1 
--export-dir /user/hive/warehouse/sale 
--input-fields-terminated-by ","

sqoop导入到hive:

bin/sqoop import 
> --connect jdbc:mysql://hadoop102:3306/company 
> --username root 
> --password 123456 
> --table staff 
> --num-mappers 1 
> --hive-impo
> --fields-terminated-by "	" 
> --hive-overwrite 
> --hive-table  数据库名.staff_hive

sql建表:

USE `company`;
CREATE TABLE `sale1` (
  `day_id` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
  `sale_nbr` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
  `cnt` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL,
  `round` VARCHAR(50) COLLATE utf8_bin DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

CREATE TABLE `sale2` (
  `day_id` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `sale_nbr` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `cnt` varchar(50) COLLATE utf8_bin DEFAULT NULL,
  `round` varchar(50) COLLATE utf8_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

六、Spark

  1. 安装Spark后配置 classpath
$ cd /usr/local/spark
$ cp ./conf/spark-env.sh.template ./conf/spark-env.sh   #拷贝配置文件

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) 这个路径是hadoop的安装路径

  1. local模式启动spark: ./bin/spark-shell

hadoop大数据平台集群部署与开发_nginx集群部署详解

  1. 安装sbt

    vim ./sbt

    启动脚本文件内容如下:

    #!/bin/bash
    SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M" java $SBT_OPTS -jar `dirname $0`/sbt-launch.jar "$@"
    
    

    增加可执行权限命令: chmod u+x ./sbt

  2. simple.sbt文件内容(注意版本号和名字)

name := "Simple Project"
version := "1.0"
scalaVersion := "2.11.8"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.1.0"

七、配置Spark集群

  1. 主机环境变量
vim ~/.bashrc

export SPARK_HOME=/usr/local/spark
export PATH=$PATH:$SPARK_HOME/bin:$SPARK_HOME/sbin

$ source ~/.bashrc
  1. 从机环境变量
$ cd /usr/local/spark/
$ cp ./conf/slaves.template ./conf/slaves

把默认内容localhost替换成如下内容:
hadoop103
hadoop104
  1. 配置spark-env.sh
  • 注意SPARK_MASTER_IP 要填自己的主机IP地址
  • SPARK_DIST_CLASSPATH和HADOOP_CONF_DIR 都是主机的hadoop路径
$ cp ./conf/spark-env.sh.template ./conf/spark-env.sh

export SPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoop classpath) 
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
export SPARK_MASTER_IP=192.168.1.104 

  1. 分发到从机(待分发的路径最好已经建立好且是空的)
cd /usr/local/
tar -zcf ~/spark.master.tar.gz ./spark
cd ~
scp ./spark.master.tar.gz hadoop103:/home/hadoop
scp ./spark.master.tar.gz hadoop104:/home/hadoop

在从机上进行如下操作:

sudo rm -rf /usr/local/spark/
sudo tar -zxf spark.master.tar.gz -C /usr/local
sudo chown -R 用户名 /usr/local/spark

八、测试运行

  1. 首先启动hadoop集群
  2. 启动spark的主机节点
$ cd /usr/local/spark/
$ sbin/start-master.sh
  1. 启动spark的从机节点
$ sbin/start-slaves.sh

打开浏览器输入 http://[主机名]:8087

hadoop大数据平台集群部署与开发_nginx集群部署详解

注意端口号冲突问题:

可以在启动的脚本文件里修改WEBUI端口号:也就是在sbin/start-master.sh中修改端口号!

九、关闭退出

  • 关闭spark主机
sbin/stop-master.sh
  • 关闭Worker从机
sbin/stop-slaves.sh
  • 关闭hadoop集群

补充命令:

  • cp命令:cp 源文件 目标文件(夹)

负责把一个源文件复制到目标文件(夹)下。如下图所示,复制到文件夹下,则文件名保持不变,复制到文件中,则文件名变更。如果目标文件已经存在或目标文件夹中含有同名文件,则复制之后目标文件或目标文件夹中的同名文件会被覆盖。

  • cp -r 命令 :复制源文件夹到目标文件夹下

命令格式为:cp -r 源文件夹 目标文件夹

  • mv 命令:用来移动文件或者将文件改名

    格式:mv [选项] 源文件或目录 目标文件或目录

    选项:

    -b 若需覆盖文件,则在覆盖文件前先进行备份
    -f 强制覆盖,若目标文件已存在同名文件,使用该参数时则直接覆盖而不询问
    -i 若目标文件已存在同名文件,则提示询问是否覆盖
    -u 若目标文件已存在需移动的同名文件,且源文件比较新,才会更新文件
    -t 指定mv的目标目录,改选项使用于移动多个源文件到一个目录的情况,此时目标文件在前,源文件在后

  • chmod

    sudo chmod -(代表类型)×××(所有者)×××(组用户)×××(其他用户)

    0 [000] 无任何权限
    4 [100] 只读权限
    6 [110] 读写权限
    7 [111] 读写执行权限

    sudo chmod 600 ××× (只有所有者有读和写的权限)
    sudo chmod 644 ××× (所有者有读和写的权限,组用户只有读的权限)
    sudo chmod 700 ××× (只有所有者有读和写以及执行的权限)
    sudo chmod 666 ××× (每个人都有读和写的权限)
    sudo chmod 777 ××× (每个人都有读和写以及执行的权限)


  • chown (选项)(参数)

    选项 描述
    -c或——changes 效果类似“-v”参数,但仅回报更改的部分;
    -f或–quite或——silent 不显示错误信息;
    -h或–no-dereference 只对符号连接的文件作修改,而不更改其他任何相关文件;
    -R或——recursive 递归处理,将指定目录下的所有文件及子目录一并处理;
    -v或——version 显示指令执行过程;
    –dereference 效果和“-h”参数相同;
    –help 在线帮助;
    –reference=<参考文件或目录> 把指定文件或目录的拥有者与所属群组全部设成和参考文件或目录的拥有者与所属群组相同;
    –version 显示版本信息。

当只需要修改所有者时,可使用如下 chown 命令的基本格式:

[root@localhost ~]# chown [-R] 所有者 文件或目录

如果需要同时更改所有者和所属组,chown 命令的基本格式为:

[root@localhost ~]# chown [-R] 所有者:所属组 文件或目录

原文地址:https://www.cnblogs.com/rainbow-1/archive/2022/03/02/15956968.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/5472.html

(0)
上一篇 2023-05-07
下一篇 2023-05-08

相关推荐

  • PostgreSQL 12.2 公开课及视频及PGCE认证(第11期)(CUUG)(2020年)

    PostgreSQL 12.2 公开课及视频及PGCE认证(第11期)(CUUG)(2020年)十一、PostgreSQL 12.2 9种索引的原理和应用场景及维护 1、PG数据库众多开放特性概述 2、btree、hash、gin、gist、sp-gist、brin、bloom、rum、zom…

    2023-03-03
    144
  • SQL Server 查看当前会话状态【sp_WhoIsActive 转载】

    SQL Server 查看当前会话状态【sp_WhoIsActive 转载】一.常见简便的方式 通常,DBA使用sp_who和sp_who2系统存储过程或活动监视器来查看SQL实例中的当前会话、用户和进程。 我们还可以从这些过程中确定阻塞会话和活动会话。 1.1. Sp_wh

    2023-04-18
    217
  • 腾讯云ecs_es云平台

    腾讯云ecs_es云平台导语 | 腾讯云Elasticsearch在腾讯会议中有哪些应用?在大规模海量应用场景下,腾讯云Elasticsearch在高可用和性能方面做了哪些优化?在低成本解决方案中又有哪些独到之处?本文是对…

    2023-04-01
    156
  • MySQL-5.7权限详解[通俗易懂]

    MySQL-5.7权限详解[通俗易懂]MySQL-5.7权限详解 1.MySQL权限级别 (1)全局性管理权限 作用于整个MySQL实例级别 *.*代表所有数据库的权限 mysql> grant all on *.* to '…

    2023-03-03
    153
  • 电脑系统重装后没有声音怎么办[亲测有效]

    电脑系统重装后没有声音怎么办[亲测有效]电脑系统重装后没有声音怎么办,下面与大家分享下系统重装后没有声音怎么解决的教程。 1第一步鼠标右键单击此电脑,选择管理进入页面,单击设备管理器,展开声音、视频和游戏控制器,查看设备是否有问号,如果有…

    2023-04-10
    161
  • python面向对象1(python面向对象的三个基本特征)

    python面向对象1(python面向对象的三个基本特征)面向过程和面对对象是一种编程思想,不能说某某语言是不是面对对象或是面向过程,而是某某语言是否支持面对对象或面向过程。回归主题,python可以支持面对对象,但也可以支持面向过程,即使不支持面向对象的语言,比如c语言,也可以用面对对象的思想写程序。你可以理解面对对象为“模块化”,恰巧python可以做到这一点,自己编写的函数文件可以用import引用模块,即使不使用class定义类,也可以实现面对对象的思想。

    2023-11-20
    132
  • 数据权限筛选(RLS)的两种实现介绍[亲测有效]

    数据权限筛选(RLS)的两种实现介绍[亲测有效]介绍了使用Security Policy和RlsStrategy两种方式实现行级数据安全,即数据权限筛选

    2023-04-18
    164
  • 数据仓库架构_docker安装sqlserver

    数据仓库架构_docker安装sqlserver本文主要介绍 Windows 环境下搭建 PostgreSQL 的主从逻辑复制,关于 PostgreSQl 的相关运维文章,网络上大多都是 Linux 环境下的操作,鲜有在 Windows 环境下配置

    2023-06-12
    147

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注