jdk安装
安装openjdk
- 查看服务器上是否已经装过jdk
[root@Centos7 ~]# java -version
-bash: java: 未找到命令
2. 如果没有则搜索jdk的yum源,执行yum 安装JDK
[root@Centos7 ~]# yum search java | grep jdk
3.查看版本
[root@Centos7 ~]# java -version
openjdk version ""
OpenJDK Runtime Environment (build -b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)
卸载openjdk
- 检查系统jdk版本
[root@Centos7 ~]# java -version
openjdk version ""
OpenJDK Runtime Environment (build -b09)
OpenJDK 64-Bit Server VM (build 25.232-b09, mixed mode)
2. 检测jdk安装包
[root@Centos7 ~]# rpm -qa | grep java
javapackages-tools-3.-11.el7.noarch
python-javapackages-3.-11.el7.noarch
tzdata-java-2019c-1.el7.noarch
java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64
java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64
3. 卸载openjdk
[root@Centos7 ~]# rpm -qa | grep java
[root@Centos7 ~]# rpm -e --nodeps tzdata-java-2019c-1.el7.noarch
[root@Centos7 ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.232.b09-0.el7_7.x86_64
[root@Centos7 ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.232.b09-0.el7_7.x86_64
或者
再次输入rpm -qa | grep java 查看卸载情况
[root@Centos7 ~]# rpm -qa | grep java
javapackages-tools-3.-11.el7.noarch
python-javapackages-3.-11.el7.noarch
重新JDK
- 下载包并且解压
[root@Centos7 download]# tar -zxvf jdk-8u201-linux-x64.tar.gz -C /usr/local/java
2.配置环境变量
3. 加入下面配置
export JAVA_HOME=/usr/local/java/jdk
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
4.执行profile文件,检查安装版本
[root@Centos7 jdk]# source /etc/profile
[root@Centos7 jdk]# java -version
java version ""
Java(TM) SE Runtime Environment (build -b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
安装zookeeper
1.上传安装包并解压
[root@Centos7 download]# tar -zxvf apache-zookeeper-3.5.6-bin.tar.gz -C /opt/modules/
2.重命名Zookeeper配置文件
zookeeper默认读取配置文件,因此需重命名为
[root@Centos7 download]# cd /opt/modules/
[root@Centos7 apache-zookeeper-3.5.6-bin]# cp conf/ conf/
3. 配置Zookeeper
vim conf/
# 配置zookeeper数据保存路径
dataDir=/tmp/zookeeper/data
# 配置zookeeper日志输出路径
dataLogDir=/tmp/zookeeper/logs
# 配置zookeeper连接端口
clientPort=2181
4. 启动Zookeeper并查看状态
##启动zookeeper
[root@Centos7 apache-zookeeper-3.5.6-bin]# bin/zkServer.sh start
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/modules/bin/../conf/
Starting zookeeper ... STARTED
## 查看zookeeper状态
[root@Centos7 apache-zookeeper-3.5.6-bin]# bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/modules/bin/../conf/
Client port found: 2181. Client address: localhost.
Mode: standalone
5. 停止Zookeeper
[root@Centos7 apache-zookeeper-3.5.6-bin]# bin/zkServer.sh stop
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/modules/bin/../conf/
Stopping zookeeper ... STOPPED
[root@Centos7 apache-zookeeper-3.5.6-bin]# bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /opt/modules/bin/../conf/
Client port found: 2181. Client address: localhost.
Error contacting service. It is probably not running.
安装 kafka
- 上传并解压
tar -zxvf kafka_2.12-2.1.1.tgz -C /opt/modules/
2.配置kafka
[root@Centos7 download]# cd /opt/modules/
[root@Centos7 kafka_2.12-2.1.1]# vi config/
检查下面配置
---
# kafka日志输出路径
log.dirs=/tmp/kafka-logs
# kafka分区数量
num.partitions=1
# kafka所连接zookeeper地址和端口,多个zookeeper间用英文逗号隔开,
# 比如:"".
zookeeper.connect=localhost:2181
# kafka连接zookeeper超时时间
zookeeper.connection.timeout.ms=6000
3. 启动Kafka并查看状态
// 启动kafka
# bin/kafka-server-start.sh config/
// 查看kafka状态
# ps -ef | grep kafka
注意:kafka必须在zk启动后启动
注:重置kafka
安装Durid
- 上传解压
[root@Centos7 download]# tar -zxvf -bin.tar.gz -C /opt/modules/
LICENSE
解压后的目录:
DISCLAIMER
,LICENSE
和NOTICE
文件bin/*
-对于此快速入门有用的脚本conf/*
-单服务器和集群设置的示例配置extensions/*
-核心德鲁伊扩展hadoop-dependencies/*
-Druid Hadoop依赖项lib/*
-核心Druid的库和依赖项quickstart/*
-快速入门教程的配置文件,样本数据和其他文件
2. 启动Druid
[root@Centos7 download]# cd /opt/modules/
[root@Centos7 ]# ./bin/start-micro-quickstart
问题:2181端口被占用
[root@Centos7 ]# ./bin/start-micro-quickstart
解决:
查找被占用的端口属于哪个进程,kill掉进程后再启动
[root@Centos7 ]# netstat -tln | grep 2181
tcp6 0 0 :::2181 :::* LISTEN
[root@Centos7 ]# lsof -i :2181
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 8074 root 99u IPv6 48367 0t0 TCP *:eforward (LISTEN)
[root@Centos7 ]# kill -9 8074
[root@Centos7 ]# lsof -i :2181
[root@Centos7 ]# ./bin/start-micro-quickstart
3. 启动后查看Druid 控制器
本机ip : localhost:8888
客户端ip:Ip地址:8888
问题:无法访问
解决:虚拟机防火墙默认开启,关掉防火墙后客户端可以访问
//临时关闭防火墙,重启后会重新自动打开
systemctl restart firewalld
//检查防火墙状态
firewall-cmd --state
firewall-cmd --list-all
//Disable firewall
systemctl disable firewalld
systemctl stop firewalld
systemctl status firewalld
//Enable firewall
systemctl enable firewalld
systemctl start firewalld
systemctl status firewalld
[root@Centos7 ~]# firewall-cmd --state
running
[root@Centos7 ~]# firewall-cmd --list-all
public (default, active)
interfaces: ens3
sources:
services: dhcpv6-client ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
[root@Centos7 ~]# systemctl disable firewalld
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.
[root@Centos7 ~]# systemctl stop firewalld
[root@Centos7 ~]# systemctl status firewalld
● firewalld.service - firewalld - dynamic firewall daemon
Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
Active: inactive (dead)
[root@Centos7 ~]# firewall-cmd --state
not running
实例:使用Druid的本机批处理摄取来执行批处理文件加载
查看官网教程
实例:从Kafka主题加载流数据
- 我这里是在新终端中启动Kafka代理
[root@Centos7 kafka_2.12-2.1.1]# ./bin/kafka-server-start.sh config/
2. 创建一个名为Wikipedia的Kafka主题,后面将向该主题发送数据
[root@Centos7 ~]# cd /opt/modules/
[root@Centos7 kafka_2.12-2.1.1]# ./bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic wikipedia
Created topic "wikipedia".
3. 将数据加载到kafka
在Druid目录中,运行以下命令
[root@Centos7 modules]# cd
[root@Centos7 ]# ls
bin conf DISCLAIMER extensions hadoop-dependencies lib LICENSE licenses NOTICE quickstart README var
[root@Centos7 ]# cd quickstart/tutorial
[root@Centos7 tutorial]# gunzip -c .gz >
在kafka目录下运行以下命令
{PATH_TO_DRUID}替换为Druid目录的路径
export KAFKA_OPTS="" ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic wikipedia < {PATH_TO_DRUID}/quickstart/tutorial/
[root@Centos7 ]# pwd
/opt/modules/
[root@Centos7 ]# cd ..
[root@Centos7 modules]# ls
apache-zookeeper-3.5.6-bin kafka_2.12-2.1.1
[root@Centos7 modules]# cd
[root@Centos7 kafka_2.12-2.1.1]# export KAFKA_OPTS=""
[root@Centos7 kafka_2.12-2.1.1]# ./bin/kafka-console-producer.sh --broker-list localhost:9092 --topic wikipedia < /opt/modules/quickstart/tutorial/
4. 加载数据
访问控制器
选择kafka加载数据
选择Apache Kafka
并单击Connect data
4.3 输入localhost:9092
作为引导服务器和wikipedia
主题。
单击Preview
并确保您看到的数据正确。
找到数据后,单击“下一步:解析数据”进行下一步
数据加载器将尝试自动为数据确定正确的解析器。在这种情况下,它将成功确定json
。随意使用不同的解析器选项来预览Druid如何解析您的数据。
随着json
解析器选中,单击Next: Parse time
获取步骤围绕着确定主timestamp列。
4.5 Druid的体系结构需要一个主时间戳列(内部存储在名为的列中__time
)。如果您的数据中没有时间戳,请选择Constant value
。在我们的示例中,数据加载器将确定time
原始数据中的列是可用作主时间列的唯一候选者。
单击Next: ...
两次以跳过Transform
和Filter
步骤。
在该Configure schema
步骤中,可以配置将哪些维度和指标摄入到Druid中。数据一经摄取,就会在Druid中显示出来。由于我们的数据集非常小,因此请继续并Rollup
通过单击开关并确认更改将其关闭。
对架构感到满意后,单击Next
以转到Partition
可微调数据将如何划分为段的步骤。
您可以调整如何在Druid中将数据拆分为多个段。由于这是一个很小的数据集,因此在此步骤中无需进行任何调整。单击Next: Tune
以转到调整步骤
在Tune
步骤是非常重要的设置Use earliest offset
到True
,因为我们要从流的开始消耗数据。没有其他需要更改的内容,因此请单击Next: Publish
以转到Publish
步骤
将此数据源命名为wikipedia-kafka
。单击Next
以查看您的规格
0 这是构建的规范。请随意返回并在之前的步骤中进行更改,以查看更改将如何更新规范。同样,也可以直接编辑规范,并在前面的步骤中看到它。对规格满意后,请点击,然后Submit
创建提取任务
1 将进入任务视图,重点关注新创建的主管。任务视图设置为自动刷新,请等到主管启动任务。当任务开始运行时,它还将开始提供正在接收的数据。Datasources
从标题导航到视图
当wikipedia-kafka
数据源出现在此处时,可以对其进行查询。
注意:如果一分钟后仍未显示数据源,则可能未设置主管从流的开头读取(在Tune
步骤中)。
此时,您可以转到Query
视图以对数据源运行SQL查询。只需运行SELECT * FROM "wikipedia-kafka"
查询即可查看结果 .
结束了。