Ubuntu二进制安装Apache Doris(2.1版本)

标题

  • [一、 下载二进制包](#一、 下载二进制包)
  • 二、修改环境变量
  • [三、安装 FE](#三、安装 FE)
    • 1.先确定java配置
    • [2.在解压后的文件夹下编辑 FE 配置文件](#2.在解压后的文件夹下编辑 FE 配置文件)
    • [3.启动 FE](#3.启动 FE)
    • [4.检查 FE 状态](#4.检查 FE 状态)
  • [四、安装 BE](#四、安装 BE)
    • [1.配置 BE](#1.配置 BE)
    • [2.启动 BE](#2.启动 BE)
    • [3.在集群中注册 BE 节点](#3.在集群中注册 BE 节点)
    • [4.检查 BE 状态](#4.检查 BE 状态)
  • [五、 运行查询](#五、 运行查询)
  • [五、 设置开机自启](#五、 设置开机自启)

一、 下载二进制包

下载对应的 Doris 二进制安装包,并解压到指定目录。

我们问需要看项目的JDK版本。JDK8的话就使用2.1版本,17可以使用3.x和4.x版本
2.1GitHub下载链接
3.x和4.x下载链接

二、修改环境变量

1.修改系统最大打开文件句柄数

通过以下命令可以调整最大文件句柄数。在调整后,需要重启会话以生效配置:

java 复制代码
nano /etc/security/limits.conf 

在最后加上

java 复制代码
* soft nofile 655350
* hard nofile 655350
root soft nofile 655350
root hard nofile 655350

修改 systemd 服务配置

java 复制代码
sudo nano /etc/systemd/system.conf

添加或修改

java 复制代码
DefaultLimitNOFILE=655350
java 复制代码
sudo nano /etc/systemd/user.conf

添加或修改

java 复制代码
DefaultLimitNOFILE=655350

修改 pam 配置

java 复制代码
sudo nano /etc/pam.d/common-session

确保包含:

java 复制代码
session required pam_limits.so

重启系统

java 复制代码
sudo reboot

检查配置

java 复制代码
ulimit -n

2.修改虚拟内存区域

通过以下命令可以永久修改虚拟内存区域至少为 2000000,并立即生效:

java 复制代码
cat >> /etc/sysctl.conf << EOF
vm.max_map_count = 2000000
EOF
java 复制代码
sudo sysctl -p

三、安装 FE

1.先确定java配置

java 复制代码
echo $JAVA_HOME

我的就是

java 复制代码
/usr/lib/jvm/java-8-openjdk-amd64

2.在解压后的文件夹下编辑 FE 配置文件

解压后文件目录

进入fe,修改 /fe/conf/fe.conf

java 复制代码
nano fe.conf
java 复制代码
## 指定 Java 环境
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

# 指定 FE 监听 IP 的 CIDR 网段
priority_networks=127.0.0.1/32

3.启动 FE

执行 start_fe.sh 脚本启动 FE 进程:

java 复制代码
apache-doris/fe/bin/start_fe.sh --daemon

4.检查 FE 状态

使用 MySQL 客户端连接集群,并检查集群状态:

java 复制代码
mysql -uroot -P9030 -h127.0.0.1 -e "show frontends;"

四、安装 BE

1.配置 BE

修改 BE 配置文件 apache-doris/be/conf/be.conf 的以下内容:

java 复制代码
## 指定 Java 环境
JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64

# 指定 FE 监听 IP 的 CIDR 网段
priority_networks=127.0.0.1/32

2.启动 BE

通过以下命令启动 BE 进程:

java 复制代码
apache-doris/be/bin/start_be.sh --daemon

如果出现

Please disable swap memory before installation

使用命令行永久禁用

java 复制代码
# 备份 fstab 文件
sudo cp /etc/fstab /etc/fstab.bak

# 注释掉所有包含 swap 的行
sudo sed -i '/swap/s/^/#/' /etc/fstab

再次启动BE即可

如果出现这个,就算上面一开始的配置没有配好

3.在集群中注册 BE 节点

使用 MySQL 客户端连接 Doris:

java 复制代码
mysql -uroot -P9030 -h127.0.0.1

使用 ADD BACKEND 命令注册 BE 节点:

java 复制代码
ALTER SYSTEM ADD BACKEND "127.0.0.1:9050";

4.检查 BE 状态

java 复制代码
mysql -uroot -P9030 -h127.0.0.1 -e "show backends;"

五、 运行查询

java 复制代码
mysql -uroot -P9030 -h127.0.0.1

修改密码

java 复制代码
# 在MySQL中执行以下命令:
ALTER USER 'root'@'%' IDENTIFIED BY 'YourSecurePassword123!';

五、 设置开机自启

首先关闭 fe和be

java 复制代码
/opt/apache-doris-2.1.10-bin-x64/fe/bin/stop_fe.sh
/opt/apache-doris-2.1.10-bin-x64/be/bin/stop_be.sh

配置 Doris FE 为 systemd 服务

java 复制代码
sudo nano /etc/systemd/system/doris-fe.service

添加以下内容

java 复制代码
[Unit]
Description=Apache Doris Frontend
After=network.target

[Service]
Type=forking
ExecStart=/opt/apache-doris-2.1.10-bin-x64/fe/bin/start_fe.sh --daemon
ExecStop=/opt/apache-doris-2.1.10-bin-x64/fe/bin/stop_fe.sh
Restart=on-failure
LimitNOFILE=655350

[Install]
WantedBy=multi-user.target

配置 Doris BE 为 systemd 服务

java 复制代码
sudo nano /etc/systemd/system/doris-be.service
java 复制代码
[Unit]
Description=Apache Doris Backend
After=network.target

[Service]
Type=forking
ExecStart=/opt/apache-doris-2.1.10-bin-x64/be/bin/start_be.sh --daemon
ExecStop=/opt/apache-doris-2.1.10-bin-x64/be/bin/stop_be.sh
Restart=on-failure
LimitNOFILE=655350

[Install]
WantedBy=multi-user.target
java 复制代码
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl enable doris-fe
sudo systemctl enable doris-be

sudo systemctl start doris-fe
sudo systemctl start doris-be

查看服务状态

java 复制代码
sudo systemctl status doris-fe
sudo systemctl status doris-be
相关推荐
Android系统攻城狮8 小时前
Linux Gstreamer深度解析之gst_audio_ring_buffer_delay调用流程与实战(七十二)
linux·运维·服务器·gstreamer音视频·音视频进阶
快乐的韭菜根根9 小时前
ubuntu 安装slurm并配置
linux·运维·ubuntu
倒头就睡的小比特11 小时前
Linux基础指令3
linux·服务器
梦帮科技11 小时前
Kali Linux Scapy 畸形报文构造学——深度解剖非法 TCP Flags 与反常序列号
linux·爬虫·神经网络·算法·数学建模·系统架构·模拟退火算法
半杯咖啡半行码12 小时前
Linux 驱动开发入门:内核模块编程基础
linux·服务器·网络
别动我齐刘海12 小时前
Linux 系统调试学习2
linux·运维·c++·人工智能·学习·机器学习·机器人
龙虾电话12 小时前
语音机器人打断不进去:VAD 双阈值迟滞里一个共用的 bool,和它引发的连锁误判
linux
honsor13 小时前
机房IP化改造首选:以太网温湿度传感器,PoE供电+Modbus TCP一网搞定
linux·运维·服务器
默|笙13 小时前
【Linux网络】_udp_socket(认识)
linux·网络·udp
程序员梅雨14 小时前
ZooKeeper面经总结
java·大数据·linux·分布式·后端·zookeeper·中间件