Ubuntu 22 安装 Apache Doris 3.0.3 笔记
1. 环境准备
Doris 需要 Java 17 作为运行环境,所以首先需要安装 Java 17。
sudo apt-get install openjdk-17-jdk -y
sudo update-alternatives --config java
在安装 Java 17 后,可以通过 sudo update-alternatives --config java
命令选择 Java 版本并查看 JAVA_HOME 环境变量的路径。我们需要记下这个路径,因为后面配置 Doris 时会用到。
2. 下载 Apache Doris 文件
接下来,我们需要下载 Doris 的二进制文件。可以使用以下命令进行下载和解压:
# 下载 Apache Doris 二进制安装包
wget https://apache-doris-releases.oss-accelerate.aliyuncs.com/apache-doris-3.0.2-bin-x64.tar.gz
# 解压安装包
tar zxf apache-doris-3.0.2-bin-x64.tar.gz
# 重命名目录为更为简单的 apache-doris
mv apache-doris-3.0.2-bin-x64 apache-doris
3. 配置与启动 Frontend (FE) 和 Backend (BE)
修改 FE 配置并启动
首先,我们需要修改 FE 的配置文件,以确保其可以正常运行。FE 的配置文件位于 conf/fe.conf
。
-
修改默认的 JVM 内存参数:
FE 的默认 JVM 配置可能过大,导致内存不足而无法启动。因此可以适当调整-Xmx
和-Xms
参数,比如:JAVA_OPTS_FOR_JDK_17="-Dfile.encoding=UTF-8 -Djavax.security.auth.useSubjectCredsOnly=false -Xmx2048m -Xms1024m -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=$LOG_DIR -Xlog:gc*:$LOG_DIR/fe.gc.log.$CUR_DATE:time,uptime:filecount=10,filesize=50M --add-opens=java.base/java.nio=ALL-UNNAMED --add-opens java.base/jdk.internal.ref=ALL-UNNAMED"
-
增加 JAVA_HOME 配置:
在fe.conf
中设置 JAVA_HOME 路径,指向 JDK 17 的安装位置。假如 JDK 17 位于/usr/lib/jvm/java-17-openjdk-amd64
,则设置如下:# Set your own JAVA_HOME JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
-
修改 FE 监听的网段:
如果 FE 有多个网段,可以在fe.conf
中设置priority_networks
,例如:priority_networks = 192.168.1.0/16
-
启动 FE:
进入apache-doris/fe/bin
目录,运行以下命令启动 FE:./start_fe.sh --daemon
FE 启动后,可以查看日志确认是否启动成功:
tail -f ../log/fe.log
修改 BE 配置并启动
接下来是 BE 的配置。BE 的配置文件位于 conf/be.conf
,需要进行以下修改:
-
和 FE 一样,增加 JAVA_HOME 配置:
# Set your own JAVA_HOME JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
-
修改 BE 的 JVM 配置:
同样地,适当调整-Xmx
和-Xms
参数:JAVA_OPTS="-Xmx2048m -Xms1024m"
-
启动 BE:
进入apache-doris/be/bin
目录,运行以下命令启动 BE:./start_be.sh --daemon
同样可以通过查看日志来确认 BE 是否启动成功:
tail -f ../log/be.out
4. 安装 MySQL 客户端
为了连接和操作 Doris,我们需要安装 MySQL 客户端。可以使用以下命令进行安装:
sudo apt install mysql-client-core-8.0
5. 连接 FE 并添加 BE
安装好 MySQL 客户端后,我们可以连接到 FE,并将 BE 添加到集群中,以完成 Doris 集群的基础配置。使用以下命令进行连接:
mysql -h <fe_host> -P 9030 -u root
在进入 MySQL 客户端后,可以执行相应的 SQL 命令来添加 BE 节点:
ALTER SYSTEM ADD BACKEND "be_host_ip:heartbeat_service_port";
be_host_ip:要添加 BE 的 IP 地址
heartbeat_service_port:要添加 BE 的心跳上报端口,可以查看 be.conf 里的 heartbeat_service_port,默认是 9050。
通过 show backends;
语句可以查看新添加的 BE 节点。
6. 修改账号密码
为了安全起见,建议修改 Doris 默认的 root 账号密码。可以使用以下 SQL 语句来完成:
mysql> SET PASSWORD FOR 'root' = PASSWORD('doris-root-password');
Query OK, 0 rows affected (0.01 sec)
mysql> SET PASSWORD FOR 'admin' = PASSWORD('doris-admin-password');
Query OK, 0 rows affected (0.00 sec)
Root 用户和 Admin 用户的区别
Root 用户和 Admin 用户都属于 Apache Doris 安装完默认存在的 2 个账户。其中 Root 用户拥有整个集群的超级权限,可以对集群完成各种管理操作,比如添加节点,去除节点。Admin 用户没有管理权限,是集群中的 Superuser,拥有除集群管理相关以外的所有权限。建议只有在需要对集群进行运维管理超级权限时才使用 Root 权限。
7. 本地访问 Doris
Doris 安装完成后,可以通过 MySQL 客户端或 JDBC 连接来访问 Doris,进行数据的查询和管理。
参考资料
Apache Doris 快速入门