大数据框架安装及配置

所有脚本和配置文件内容查看请点击

0.JDK

1.解压文件
	1.1可以写一个分发脚本xsync.sh方便分发配置文件和项目框架
	1.2配置SSH免密,方便文件的传输
2.在/etc/profile.d/my_env.sh 文件中编写环境变量(如果没有,就创建)
3.使环境变量生效source /etc/profile

1.Hadoop

1.解压Hadoop压缩包到/opt/module目录下	
2.配置环境变量,分发环境变量
3.编写配置文件hdfs-site.xml,core-site.xml,yarn-site.xml,mapred-site.xml,workers
4.分发hadoop到每个节点上
5.初始化hadoop   bin/hdfs namenode -format  如果可以打开网页端,那就说明正常启动
6.hadoop群起脚本的编写 myhadoop.sh

2.Mysql

1.使用命令卸载系统自带的mysql “rpm -qa | grep -i -E mysql\|mariadb | xargs -n1 sudo rpm -e --nodeps”
2.分模块安装mysql
sudo rpm -ivh 01_mysql-community-common-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 02_mysql-community-libs-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 03_mysql-community-libs-compat-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 04_mysql-community-client-5.7.16-1.el7.x86_64.rpm
sudo rpm -ivh 05_mysql-community-server-5.7.16-1.el7.x86_64.rpm
3.启动mysql
sudo systemctl start mysqld
4.查看mysql密码
sudo cat /var/log/mysqld.log | grep password
5.登录进入mysql
6.更改密码进行密码安全性操作
set password=password("Qs23=zs32");
7.修改密码策略
set global validate_password_length=4;
set global validate_password_policy=0;
8.设置简单密码
set password=password("root");
9.更改用户权限,方便外部工具连接
use mysql
update user set host="%" where user="root";
flush privileges;

3.Zookeeper

Zookeeper一般安装单数台机器,常用即3台或5台
1.解压Zookeeper
2.在Zookeeper中创建目录zkData
3.创建文件myid打上对应的服务编号,2
4.分发zookeeper,修改对应节点上的服务编号
5.将zoo_sample.cfg文件修改为zoo.cfg文件,并配置两个参数
dataDir=/opt/module/zookeeper-3.5.7/zkData

#######################cluster##########################
server.2=hadoop102:2888:3888
server.3=hadoop103:2888:3888
server.4=hadoop104:2888:3888
6.分发配置文件
7.编写群起zookeeper脚本

4.Kafka

kafka的运行在2.4.1之前的版本都依赖于zookeeper,所以我们要先安装好zookeeper后,再进行kafka的安装,并且zk和kafka需要安装在相同节点上
1.解压kafka安装包
2.修改配置文件 vim /kafka/config/server.properties
        修改或者增加以下内容:
        #broker的全局唯一编号,不能重复
        broker.id=0
        #kafka运行日志存放的路径
        log.dirs=/opt/module/kafka/data
        #配置连接Zookeeper集群地址
        zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181/kafka
3.配置环境变量,并source
	#KAFKA_HOME
	export KAFKA_HOME=/opt/module/kafka
	export PATH=$PATH:$KAFKA_HOME/bin

4.分发kafka,并且在不同节点上修改相应的broker.id
5.编写启停脚本
6.可以选择安装kafka的监控工具eagle

5.Flume

1.解压flume
2.lib文件夹下的guava-11.0.2.jar删除以兼容Hadoop 3.1.3
3.修改conf目录下的log4j.properties配置文件,配置日志文件路径
	flume.log.dir=/opt/module/flume/logs
4.分发flume

6.Datax

下载解压即可使用

7.Maxwell

注意!!maxwell 1.30及以上版本不支持jdk1.8.0;
1.解压MaxWell
2.配置mysql Binlog日志 修改配置文件
sudo vim /etc/my.cnf
[mysqld]
#数据库id
server-id = 1
#启动binlog,该参数的值会作为binlog的文件名
log-bin=mysql-bin
#binlog类型,maxwell要求为row类型
binlog_format=row
#启用binlog的数据库,需根据实际情况作出修改
binlog-do-db=gmall
3.重启sql服务
sudo systemctl restart mysqld
4.创建maxwell所需要的数据库及用户和权限分配
        创建数据库
        CREATE DATABASE maxwell;

        调整MySQL数据库密码级别
        set global validate_password_policy=0;
        set global validate_password_length=4;

        创建Maxwell用户并赋予其必要权限
        CREATE USER 'maxwell'@'%' IDENTIFIED BY 'maxwell';
        GRANT ALL ON maxwell.* TO 'maxwell'@'%';
        GRANT SELECT, REPLICATION CLIENT, REPLICATION SLAVE ON *.* TO 'maxwell'@'%';
5.配置maxwell的配置文件config.properties.example改名为config.properties

        #Maxwell数据发送目的地,可选配置有stdout|file|kafka|kinesis|pubsub|sqs|rabbitmq|redis
        producer=kafka
        #目标Kafka集群地址
        kafka.bootstrap.servers=hadoop102:9092,hadoop103:9092,hadoop104:9092
        #目标Kafka topic,可静态配置,例如:maxwell,也可动态配置,例如:%{database}_%{table}
        kafka_topic=maxwell

        #MySQL相关配置
        host=hadoop102
        user=maxwell
        password=maxwell
        jdbc_options=useSSL=false&serverTimezone=Asia/Shanghai



8.hive的安装

1.解压hive
2.配置环境变量
#HIVE_HOME
export HIVE_HOME=/opt/module/hive
export PATH=$PATH:$HIVE_HOME/bin
3.解决日志jar包冲突
	mv log4j-slf4j-impl-2.10.0.jar log4j-slf4j-impl-2.10.0.jar.bak
4.将hive的元数据配置到mysql中
	4.1拷贝jdbc的驱动到hive的lib目录下
	4.2新建hive-site.xml文件并配置,配置看下文
5.在mysql中新建hive的元数据库并初始化
create database metastore;(在sql中)
bin/schematool -initSchema -dbType mysql -verbose(在hive目录中命令行中)
6.修改元数据字符集
use metastore;
alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
alter table TABLE_PARAMS modify column PARAM_VALUE mediumtext character set utf8;
7.使用jdbc的方式连接数据库,可以通过脚本hiveservers.sh 和jdbc.sh

9.Hbase以及phoniex的安装

9.1Hbase安装部署的前置

​ Hbase必须依赖于zookeeper和Hadoop

9.2Hbase的安装
9.2.1解压
9.2.2配置环境变量

​ #HBASE_HOME

​ export HBASE_HOME=/opt/module/hbase

​ export PATH= P A T H : PATH: PATH:HBASE_HOME/bin

9.2.3修改配置文件

​ 修改hbase-env.sh中的 export HBASE_MANAGES_ZK=false

​ 修改hbase-site.xml的内容

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://hadoop102:8020/hbase</value>
    </property>

    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>

    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>hadoop102,hadoop103,hadoop104</value>
    </property>    
</configuration>

​ 修改regionservers里面输入对应的服务器节点

9.3分发hbase
9.4群体启动停止hbase命令
bin/start-hbase.sh
bin/stop-hbase.sh

​ 启动成功后可以通过http://主机名:16010来访问Hbase管理页面

9.5进入客户端操作

​ bin/hbase shell

phoneix的安装

​ 上传并解压jar包

​ 复制server包并拷贝到各个节点的hbase/lib

​ cp /opt/module/phoenix/phoenix-5.0.0-HBase-2.0-server.jar /opt/module/hbase/lib/

​ xsync /opt/module/hbase/lib/phoenix-5.0.0-HBase-2.0-server.jar

​ 配置环境变量

​ #phoenix

​ export PHOENIX_HOME=/opt/module/phoenix

​ export PHOENIX_CLASSPATH=$PHOENIX_HOME

​ export PATH= P A T H : PATH: PATH:PHOENIX_HOME/bin

​ 重启HBase

​ 连接Phoenix

​ /opt/module/phoenix/bin/sqlline.py hadoop102,hadoop103,hadoop104:2181

10.scala的安装及idea的配置

10.1Scala的安装

​ 解压scala安装包,配置环境变量,在cmd中输入scala,跳出版本号,即为安装成功

10.2idea的环境配置

​ 10.2.1 创建正常的maven项目,点击File => Setting => plugins 选择网络安装可以使用Markerplace,但是网络不稳定,也可以下载好对应idea版本的scala环境安装包后在设置中进行加载。

​ 10.2.2 设置完成后,右键项目名,选择add FrameWorkers Support进行Scala加载,第一次配置时,需要手动选择Scala安装路径

​ 10.2.3 右键点击main目录->New->点击Diretory -> 写个名字(比如scala)。

​ 右键点击scala目录->Mark Directory as->选择Sources root,观察文件夹颜色变成蓝色

11.Spark的安装与配置

11.1本地模式
11.1.1解压直接测试即可
 bin/spark-submit \
--class org.apache.spark.examples.SparkPi \
--master local[2] \
./examples/jars/spark-examples_2.12-3.0.0.jar \
10
11.2standalong模式
11.2.1新解压一份安装包
11.2.2进入到conf目录下,将slaves.temple修改成slaves,并添加对应集群节点
11.2.3修改spark-env.sh文件,添加master节点
SPARK_MASTER_HOST=hadoop102
SPARK_MASTER_PORT=7077
11.2.4配置历史服务(可选,一般必备)
	mv spark-defaults.conf.template spark-defaults.conf
	vim spark-defaults.conf
        spark.eventLog.enabled          true
        spark.eventLog.dir              hdfs://hadoop102:8020/directory
需要启动Hadoop集群,确认存放的directory目录存在
	hadoop fs -mkdir /directory
	
	修改spark.env.sh文件
	vim spark-env.sh
         export SPARK_HISTORY_OPTS="
         -Dspark.history.ui.port=18080 
         -Dspark.history.fs.logDirectory=hdfs://hadoop102:8020/directory 
         -Dspark.history.retainedApplications=30"
11.2.5高可用配置(可选)
配置高可用前一定要停止集群
#注释掉如下内容:
#SPARK_MASTER_HOST=hadoop102
#SPARK_MASTER_PORT=7077

#添加上如下内容。配置由Zookeeper管理Master,在Zookeeper节点中自动创建/spark目录,用于管理:
export SPARK_DAEMON_JAVA_OPTS="
-Dspark.deploy.recoveryMode=ZOOKEEPER 
-Dspark.deploy.zookeeper.url=hadoop102,hadoop103,hadoop104 
-Dspark.deploy.zookeeper.dir=/spark"

#添加如下代码
#Zookeeper3.5的AdminServer默认端口是8080,和Spark的WebUI冲突
export SPARK_MASTER_WEBUI_PORT=8989

注:一旦配置了高可用以后,master后面要连接多个master

bin/spark-shell \
--master spark://hadoop102:7077,hadoop103:7077 \
--executor-memory 2g \
--total-executor-cores 2

11.2.6分发spark-standalone/
11.2.7问题的发生及解决

注意:如果遇到 “JAVA_HOME not set” 异常,可以在sbin目录下的spark-config.sh 文件中加入如下配置:

export JAVA_HOME=java家目录

11.3yarn模式(重点)
11.3.1新解压一份安装包取名为spark-yarn
11.3.2为hadoop的配置文件yarn-site.xml添加如下内容(因为测试环境虚拟机内存较少,防止执行过程进行被意外杀死,做如下配置
<!--是否启动一个线程检查每个任务正使用的物理内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
     <name>yarn.nodemanager.pmem-check-enabled</name>
     <value>false</value>
</property>

<!--是否启动一个线程检查每个任务正使用的虚拟内存量,如果任务超出分配值,则直接将其杀掉,默认是true -->
<property>
     <name>yarn.nodemanager.vmem-check-enabled</name>
     <value>false</value>
</property>
记得分发
11.3.3修改spark-yarn的conf目录下的spark-env.sh添加YARN_CONF_DIR配置
YARN_CONF_DIR=/opt/module/hadoop-3.1.3/etc/hadoop
11.3.3配置历史服务器&配置查看历史日志
	spark-default.conf文件
spark.eventLog.enabled          true
spark.eventLog.dir               hdfs://hadoop102:8020/directory
	查看历史日志配置
spark.yarn.historyServer.address=hadoop102:18080
spark.history.ui.port=18080

	spark-env.sh文件
export SPARK_HISTORY_OPTS="
-Dspark.history.ui.port=18080 
-Dspark.history.fs.logDirectory=hdfs://hadoop102:8020/directory 
-Dspark.history.retainedApplications=30"
11.3.4异常问题及解决

ClassNotFoundException:com.sun.jersey.api.client.config.ClientConfig

-原因分析:Spark2中jersey版本是2.22,但是yarn中还需要依赖1.9,版本不兼容
-解决方式:在yarn-site.xml中,添加
<property>
	<name>yarn.timeline-service.enabled</name>
	<value>false</value>
</property>

11.4mesos模式

Spark客户端直接连接Mesos;不需要额外构建Spark集群。国内应用比较少,更多的是运用Yarn调度

12.hive on Spark

12.1兼容性说明

注意:官网下载的Hive3.1.2和Spark3.0.0默认是不兼容的。因为Hive3.1.2支持的Spark版本是2.4.5,所以需要我们重新编译Hive3.1.2版本。

编译步骤:官网下载Hive3.1.2源码,修改pom文件中引用的Spark版本为3.0.0,如果编译通过,直接打包获取jar包。如果报错,就根据提示,修改相关方法,直到不报错,打包获取jar包。

12.2在Hive节点上部署Spark
12.2.1Spark官网下载jar包地址:
http://spark.apache.org/downloads.html
12.2.2上传,解压Spark并配置环境变量
tar -zxvf spark-3.0.0-bin-hadoop3.2.tgz -C /opt/module/
mv /opt/module/spark-3.0.0-bin-hadoop3.2 /opt/module/spark

# SPARK_HOME
export SPARK_HOME=/opt/module/spark
export PATH=$PATH:$SPARK_HOME/bin
记得source
12.2.3在hive中创建Spark配置文件
vim /opt/module/hive/conf/spark-defaults.conf
添加如下内容
spark.master                               yarn
spark.eventLog.enabled                   true
spark.eventLog.dir                        hdfs://hadoop102:8020/spark-history
spark.executor.memory                    1g
spark.driver.memory					   1g

在hdfs创建如下路径,用户存储历史日志(和上述spark.eventLog.dir参数内容一致)

hadoop fs -mkdir /spark-history
12.2.4向HDFS上传spark纯净版jar包

说明1:由于Spark3.0.0非纯净版默认支持的是hive2.3.7版本,直接使用会和安装的Hive3.1.2出现兼容性问题。所以采用Spark纯净版jar包,不包含hadoop和hive相关依赖,避免冲突。

说明2:Hive任务最终由Spark来执行,Spark任务资源分配由Yarn来调度,该任务有可能被分配到集群的任何一个节点。所以需要将Spark的依赖上传到HDFS集群路径,这样集群中任何一个节点都能获取到。

上传并解压spark-3.0.0-bin-without-hadoop.tgz

tar -zxvf /opt/software/spark-3.0.0-bin-without-hadoop.tgz

上传jar包至HDFS上

hadoop fs -mkdir /spark-jars
hadoop fs -put spark-3.0.0-bin-without-hadoop/jars/* /spark-jars

修改hive-site.xml配置文件

<!--Spark依赖位置(注意:端口号8020必须和namenode的端口号一致)-->
<property>
    <name>spark.yarn.jars</name>
    <value>hdfs://hadoop102:8020/spark-jars/*</value>
</property>
  
<!--Hive执行引擎-->
<property>
    <name>hive.execution.engine</name>
    <value>spark</value>
</property>

12.2.5测试

启动hive,执行sql出现spark-job即为成功

12.3Yarn环境配置
12.3.1增加ApplicationMaster资源比例

系统资源不足时适当调整

在hadoop102的/opt/module/hadoop-3.1.3/etc/hadoop/capacity-scheduler.xml文件中修改如下参数值

13.DS调度器安装与配置

13.1DS安装规划

集群模式下,可配置多个Master及多个Worker。通常可配置2~3个Master,若干个Worker。

13.2前置准备工作

1)每台节点均需部署JDK(1.8+),并配置相关环境变量。

2)需部署数据库,支持MySQL(5.7+)或者PostgreSQL(8.2.15+)。

3)需部署Zookeeper(3.4.6+)。

4)每台节点均需安装进程管理工具包psmisc。

sudo yum install -y psmisc
13.3解压DolphinScheduler安装包

1)上传DolphinScheduler安装包到hadoop102节点的/opt/software目录

2)解压安装包到当前目录

注:解压目录并非最终的安装目录

13.4初始化数据库
13.4.1DolphinScheduler 元数据存储在关系型数据库中,故需创建相应的数据库和用户。
--创建数据库
CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
--创建用户
CREATE USER 'dolphinscheduler'@'%' IDENTIFIED BY 'dolphinscheduler';
--赋予权限
GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%';
flush privileges;
13.4.2修改数据源配置文件

进入DS解压目录,修改conf目录下的datasource.properties文件

vim /opt/software/apache-dolphinscheduler-1.3.9-bin/conf/datasource.properties
--修改内容如下
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://主机名:3306/dolphinscheduler?useUnicode=true&characterEncoding=UTF-8
spring.datasource.username=dolphinscheduler
spring.datasource.password=dolphinscheduler
13.4.3拷贝MySQL驱动到DolphinScheduler的解压目录下的lib中
cp /opt/software/mysql-connector-java-5.1.27-bin.jar lib/
13.4.4执行数据库初始化脚本

数据库初始化脚本位于DolphinScheduler解压目录下的script目录中,即/opt/software /apache-dolphinscheduler-1.3.9-bin/script/。

script/create-dolphinscheduler.sh
13.5配置一键部署脚本

修改解压目录下的conf/config目录下的install_config.conf文件

修改内容如下:

# postgresql or mysql
dbtype="mysql"

# db config
# db address and port
dbhost="hadoop102:3306"

# db username
username="dolphinscheduler"

# database name
dbname="dolphinscheduler"

# db passwprd
# NOTICE: if there are special characters, please use the \ to escape, for example, `[` escape to `\[`
password="dolphinscheduler"

# zk cluster
zkQuorum="hadoop102:2181,hadoop103:2181,hadoop104:2181"

# Note: the target installation path for dolphinscheduler, please not config as the same as the current path (pwd)
installPath="/opt/module/dolphinscheduler"

# deployment user
# Note: the deployment user needs to have sudo privileges and permissions to operate hdfs. If hdfs is enabled, the root directory needs to be created by itself
deployUser="atguigu"

# resource storage type: HDFS, S3, NONE
resourceStorageType="HDFS"

# resource store on HDFS/S3 path, resource file will store to this hadoop hdfs path, self configuration, please make sure the directory exists on hdfs and have read write permissions. "/dolphinscheduler" is recommended
resourceUploadPath="/dolphinscheduler"

# if resourceStorageType is HDFS,defaultFS write namenode address,HA you need to put core-site.xml and hdfs-site.xml in the conf directory.
# if S3,write S3 address,HA,for example :s3a://dolphinscheduler,
# Note,s3 be sure to create the root directory /dolphinscheduler
defaultFS="hdfs://hadoop102:8020"

# resourcemanager port, the default value is 8088 if not specified
resourceManagerHttpAddressPort="8088"

# if resourcemanager HA is enabled, please set the HA IPs; if resourcemanager is single, keep this value empty
yarnHaIps=

# if resourcemanager HA is enabled or not use resourcemanager, please keep the default value; If resourcemanager is single, you only need to replace ds1 to actual resourcemanager hostname
singleYarnIp="hadoop103"

# who have permissions to create directory under HDFS/S3 root path
# Note: if kerberos is enabled, please config hdfsRootUser=
hdfsRootUser="atguigu"

# api server port
apiServerPort="12345"


# install hosts
# Note: install the scheduled hostname list. If it is pseudo-distributed, just write a pseudo-distributed hostname
ips="hadoop102,hadoop103,hadoop104"

# ssh port, default 22
# Note: if ssh port is not default, modify here
sshPort="22"

# run master machine
# Note: list of hosts hostname for deploying master
masters="hadoop102"

# run worker machine
# note: need to write the worker group name of each worker, the default value is "default"
workers="hadoop102:default,hadoop103:default,hadoop104:default"

# run alert machine
# note: list of machine hostnames for deploying alert server
alertServer="hadoop102"

# run api machine
# note: list of machine hostnames for deploying api server
apiServers="hadoop102"

14.Superset安装与配置

14.1安装python环境

Superset是由Python语言编写的Web应用,要求Python3.7的环境。

14.1.1安装Miniconda

conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同Python版本的软件包及其依赖,并能够在不同的Python环境之间切换,Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,Miniconda包括Conda、Python。

1)安装Miniconda

(1)执行以下命令进行安装,并按照提示操作,直到安装完成。

[atguigu@hadoop102 lib]$ bash Miniconda3-latest-Linux-x86_64.sh

(2)加载环境变量配置文件,使其生效

source ~/.bashrc

2)取消激活base环境

Miniconda安装完成后,每次打开终端都会激活其默认的base环境,我们可通过以下命令,禁止激活默认base环境。

[atguigu@hadoop102 lib]$ conda config --set auto_activate_base false
14.2创建Python3.7环境

2)创建Python3.7环境

(base) [atguigu@hadoop102 ~]$ conda create --name superset python=3.7

说明:conda环境管理常用命令

**创建环境:**conda create -n env_name

**查看所有环境:**conda info --envs

**删除一个环境:**conda remove -n env_name --all

3)激活superset环境

(base) [atguigu@hadoop102 ~]$ conda activate superset          

说明:退出当前环境

(superset) [atguigu@hadoop102 ~]$ conda deactivate

4)执行python命令查看python版本

14.3Superset部署
14.3.1 安装依赖

安装Superset之前,需安装以下所需依赖

(superset) [atguigu@hadoop102 ~]$ sudo yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel python-setuptools openssl-devel cyrus-sasl-devel openldap-devel
14.3.2 安装Superset

1)安装(更新)setuptools和pip

(superset) [atguigu@hadoop102 ~]$ pip install --upgrade setuptools pip -i https://pypi.douban.com/simple/

**说明:**pip是python的包管理工具,可以和centos中的yum类比

2)安装Supetset

(superset) [atguigu@hadoop102 ~]$ pip install apache-superset -i https://pypi.douban.com/simple/

说明:-i的作用是指定镜像,这里选择国内镜像

注:如果遇到网络错误导致不能下载,可尝试更换镜像

(superset) [atguigu@hadoop102 ~]$  pip install apache-superset --trusted-host https://repo.huaweicloud.com -i https://repo.huaweicloud.com/repository/pypi/simple

3)初始化Supetset数据库

(superset) [atguigu@hadoop102 ~]$ superset db upgrade

4)创建管理员用户

(superset) [atguigu@hadoop102 ~]$ export FLASK_APP=superset

(superset) [atguigu@hadoop102 ~]$ superset fab create-admin

**说明:**flask是一个python web框架,Superset使用的就是flask

5)Superset初始化

(superset) [atguigu@hadoop102 ~]$ superset init
14.3.3 启动Supterset

1)安装gunicorn

(superset) [atguigu@hadoop102 ~]$ pip install gunicorn -i https://pypi.douban.com/simple/
**说明:**gunicorn是一个Python Web Server,可以和java中的TomCat类比

2)启动Superset

(1)确保当前conda环境为superset

(2)启动

(superset) [atguigu@hadoop102 ~]$ gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 "superset.app:create_app()" --daemon 

3)停止superset

停掉gunicorn进程

(superset) [atguigu@hadoop102 ~]$ ps -ef | awk ‘/superset/ && !/awk/{print $2}’ | xargs kill -9

14.4 superset启停脚本

创建文件

vim superset.sh

脚本内容如下

#!/bin/bash

superset_status(){
    result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`
    if [[ $result -eq 0 ]]; then
        return 0
    else
        return 1
    fi
}
superset_start(){
        source ~/.bashrc
        superset_status >/dev/null 2>&1
        if [[ $? -eq 0 ]]; then
            conda activate superset ; gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 --daemon 'superset.app:create_app()'
        else
            echo "superset正在运行"
        fi

}

superset_stop(){
    superset_status >/dev/null 2>&1
    if [[ $? -eq 0 ]]; then
        echo "superset未在运行"
    else
        ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9
    fi
}


case $1 in
    start )
        echo "启动Superset"
        superset_start
    ;;
    stop )
        echo "停止Superset"
        superset_stop
    ;;
    restart )
        echo "重启Superset"
        superset_stop
        superset_start
    ;;
    status )
        superset_status >/dev/null 2>&1
        if [[ $? -eq 0 ]]; then
            echo "superset未在运行"
        else
            echo "superset正在运行"
        fi
esac

14.5对接mysql数据源
(superset) [atguigu@hadoop102 ~]$ conda install mysqlclient

安装完毕后需要重启superset

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值