Files
KnowStreaming/docs/install_guide/单机部署手册.md
2022-08-18 17:04:05 +08:00

238 lines
7.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

## 前言
- 本文以 Centos7 系统为例系统基础配置要求4 核 8G
- 按照本文可以快速部署一套单机模式的 KnowStreaming 环境
- 本文以 v3.0.0-bete 版本为例进行部署,如需其他版本请关注[官网](https://knowstreaming.com/)
- 部署完成后可以通过浏览器输入 IP:PORT 进行访问,默认用户名密码: admin/admin2022\_
- KnowStreaming 同样支持分布式集群模式,如需部署高可用集群,[请联系我们](https://knowstreaming.com/support-center)
## 1.1、软件版本及依赖
| 软件名 | 版本要求 | 默认端口 |
| ------------- | -------- | -------- |
| Mysql | v5.7+ | 3306 |
| Elasticsearch | v6+ | 8060 |
| JDK | v8+ | - |
| Centos | v6+ | - |
| Ubantu | v16+ | - |
## 1.2、部署方式选择
- Shell 部署(单机版本)
- 容器化部署(需准备 K8S 环境)
- 根据操作手册进行手动部署
## 1.3、Shell 部署
### 1.3.1、在线方式安装
#在服务器中下载安装脚本,脚本中会重新安装Mysql
wget https://s3-gzpu.didistatic.com/pub/knowstreaming/deploy_KnowStreaming.sh
#执行脚本
sh deploy_KnowStreaming.sh
#访问测试
127.0.0.1:8080
### 1.3.2、离线方式安装
#将安装包下载到本地且传输到目标服务器
wget https://s3-gzpu.didistatic.com/pub/knowstreaming/KnowStreaming-3.0.0-beta—offline.tar.gz
#解压安装包
tar -zxf KnowStreaming-3.0.0-beta—offline.tar.gz
#执行安装脚本
sh deploy_KnowStreaming-offline.sh
#访问测试
127.0.0.1:8080
## 1.4、容器化部署
### 1.4.1、环境依赖及版本要求
- Kubernetes >= 1.14 Helm >= 2.17.0
- 默认配置为全部安装elasticsearch + mysql + knowstreaming
- 如果使用已有的 elasticsearch(7.6.x) 和 mysql(5.7) 只需调整 values.yaml 部分参数即可
### 1.4.2、安装方式
#下载安装包
wget https://s3-gzpu.didistatic.com/pub/knowstreaming/knowstreaming-3.0.0-hlem.tgz
#解压安装包
tar -zxf knowstreaming-3.0.0-hlem.tgz
#执行命令(NAMESPACE需要更改为已存在的)
helm install -n [NAMESPACE] knowstreaming knowstreaming-manager/
#获取KnowStreaming前端ui的service. 默认nodeport方式.(http://nodeIP:nodeport默认用户名密码admin/admin2022_)
## 1.5、手动部署
### 1.5.1、部署流程
基础依赖服务部署 ——> KnowStreaming 模块
### 1.5.2、基础依赖服务部署
#### 如现有环境中已经有相关服务,可跳过对其的安装
#### 基础依赖JAVA11、Mysql、Elasticsearch
#### 1.5.2.1、安装 Mysql 服务
##### 1.5.2.1.1 yum 方式安装
#配置yum源
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
#执行安装
yum -y install mysql-server mysql-client
#服务启动
systemctl start mysqld
#获取初始密码并修改
old_pass=`grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}' | tail -n 1`
mysql -NBe "alter user USER() identified by 'Didi_km_678';" --connect-expired-password -uroot -p$old_pass
##### 1.5.2.1.2、rpm 包方式安装
#下载安装包
wget https://s3-gzpu.didistatic.com/knowsearch/mysql5.7.tar.gz
#解压到指定目录
tar -zxf mysql5.7.tar.gz -C /tmp/
#执行安装
yum -y localinstall /tmp/libaio-*.rpm /tmp/mysql-*.rpm
#服务启动
systemctl start mysqld
#获取初始密码并修改
old_pass=`grep 'temporary password' /var/log/mysqld.log | awk '{print $NF}' | tail -n 1`
mysql -NBe "alter user USER() identified by 'Didi_km_678';" --connect-expired-pa
ssword -uroot -p$old_pass
#### 1.5.2.2、配置 JAVA 环境
#下载安装包
wget https://s3-gzpu.didistatic.com/pub/jdk11.tar.gz #解压到指定目录
tar -zxf jdk11.tar.gz -C /usr/local/ #更改目录名
mv /usr/local/jdk-11.0.2 /usr/local/java11 #添加到环境变量
echo "export JAVA_HOME=/usr/local/java11" >> ~/.bashrc
echo "export CLASSPATH=/usr/java/java11/lib" >> ~/.bashrc
echo "export PATH=\$JAVA_HOME/bin:\$PATH:\$HOME/bin" >> ~/.bashrc
source ~/.bashrc
#### 1.5.2.3、Elasticsearch 实例搭建
#### Elasticsearch 元数据集群来支持平台核心指标数据的存储,如集群维度指标、节点维度指标等
#### 以下安装示例为单节点模式,如需集群部署可以参考[Elasticsearch 官方文档](https://www.elastic.co/guide/en/elasticsearch/reference/7.6/elasticsearch-intro.html)
#下载安装包
wget https://s3-gzpu.didistatic.com/pub/elasticsearch.tar.gz
#创建ES数据存储目录
mkdir -p /data/es_data
#创建ES所属用户
useradd arius
#配置用户的打开文件数
echo "arius soft nofile 655350" >>/etc/security/limits.conf
echo "arius hard nofile 655350" >>/etc/security/limits.conf
echo "vm.max_map_count = 655360" >>/etc/sysctl.conf
sysctl -p
#解压安装包
tar -zxf elasticsearch.tar.gz -C /data/
#更改目录所属组
chown -R arius:arius /data/
#修改配置文件(参考以下配置)
vim /data/elasticsearch/config/elasticsearch.yml
cluster.name: km_es
node.name: es-node1
node.master: true
node.data: true
path.data: /data/es_data
http.port: 8060
discovery.seed_hosts: ["127.0.0.1:9300"]
#修改内存配置
vim /data/elasticsearch/config/jvm.options
-Xms2g
-Xmx2g
#启动服务
su - arius
export JAVA_HOME=/usr/local/java11
sh /data/elasticsearch/control.sh start
#确认状态
sh /data/elasticsearch/control.sh status
### 1.5.3、KnowStreaming 服务部署
#### 以 KnowStreaming 为例
#下载安装包
wget wget https://s3-gzpu.didistatic.com/pub/knowstreaming/KnowStreaming-3.0.0-beta.tar.gz
#解压安装包到指定目录
tar -zxf KnowStreaming-3.0.0-beta.tar.gz -C /data/
#修改启动脚本并加入systemd管理
cd /data/KnowStreaming/
#创建相应的库和导入初始化数据
mysql -uroot -pDidi_km_678 -e "create database know_streaming;"
mysql -uroot -pDidi_km_678 know_streaming < ./init/sql/ddl-ks-km.sql
mysql -uroot -pDidi_km_678 know_streaming < ./init/sql/ddl-logi-job.sql
mysql -uroot -pDidi_km_678 know_streaming < ./init/sql/ddl-logi-security.sql
mysql -uroot -pDidi_km_678 know_streaming < ./init/sql/dml-ks-km.sql
mysql -uroot -pDidi_km_678 know_streaming < ./init/sql/dml-logi.sql
#创建elasticsearch初始化数据
sh ./init/template/template.sh
#修改配置文件
vim ./conf/application.yml
#监听端口
server:
port: 8080 # web 服务端口
tomcat:
accept-count: 1000
max-connections: 10000
#elasticsearch地址
es.client.address: 127.0.0.1:8060
#数据库配置一共三处地方修改正确的mysql地址和数据库名称以及用户名密码
jdbc-url: jdbc:mariadb://127.0.0.1:3306/know-streaming?.....
username: root
password: Didi_km_678
#启动服务
cd /data/KnowStreaming/bin/
sh startup.sh
#### 打开浏览器输入 IP 地址+端口测试(默认端口 8080),用户名密码: admin/admin2022\_