Apache doris 快速安装体验
环境准备
1.选择一个 x86-64 上的主流 Linux 环境,推荐 CentOS 7.1 或者 Ubuntu 16.04 以上版本。更多运行环境请参考安装部署部分。
2.Java 8 运行环境
3.关闭swap和修改limits.conf
cp -a /etc/security/limits.conf /etc/security/limits.conf.backup
cat >> /etc/security/limits.conf << EOF
* soft nofile 65535
* hard nofile 65535
* soft nproc 65565
* hard nproc 65565
EOF
cp -a /etc/sysctl.conf /etc/sysctl.conf.bak
echo "vm.max_map_count=2000000" >> /etc/sysctl.conf
sysctl -p
swapoff -a && sudo sed -i '/swap/s/^/#/' /etc/fstab
4.下载二进制包,此次使用的版本是:apache-doris-2.1.7-bin-x64.tar.gz
安装 Doris
解压doris软件
tar -zxvf apache-doris-2.1.7-bin-x64.tar.gz
mv apache-doris-2.1.7-bin-x64 apache-doris
#----------------------------------------------
[root@localhost apache-doris]# ll
总用量 0
drwxr-xr-x 11 root root 160 11月 6 15:36 be
drwxr-xr-x 3 root root 32 11月 6 15:36 extensions
drwxr-xr-x 14 root root 243 12月 4 23:13 fe
配置 FE
FE 的配置文件为 apache-doris/fe/conf/fe.conf
。
需要配置priority_networks
指定ip,其它配置,可以使用默认值,即可支持单机快速体验。
如我当前虚拟机ip是192.168.100.150
# FE 元数据存放的目录,默认是在 DORIS_HOME 下的 doris-meta 目录。已经创建,可以更改为你的元数据存储路径。
#meta_dir = ${DORIS_HOME}/doris-meta
启动 FE
在apache-doris/fe
下,运行下面命令启动 FE。
# 将 FE 启动成后台运行模式,这样确保退出终端后,进程依旧运行。
[root@localhost fe]# ./bin/start_fe.sh --daemon
[root@localhost fe]#
[root@localhost fe]# ps -ef| grep fe
root 66 2 0 15:17 ? 00:00:00 [deferwq]
root 9122 1 77 15:47 pts/0 00:00:03 /usr/local/jdk/bin/java -Dfile.encoding=UTF-8 -Djavax.security.auth.useSubjectCredsOnly=false -Xss4m -Xmx8192m -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:MaxGCPauseMillis=200 -XX:+PrintGCDateStamps -XX:+PrintGCDetails -Xloggc:/AppHome/doris/apache-doris/fe/log/fe.gc.log.20241205-154728 -Dlog4j2.formatMsgNoLookups=true -XX:-OmitStackTraceInFastThrow -XX:OnOutOfMemoryError=kill -9 %p org.apache.doris.DorisFE
root 9141 8543 0 15:47 pts/0 00:00:00 grep --color=auto fe
配置 BE
BE 的配置文件为 apache-doris/be/conf/be.conf
需要配置priority_networks
指定ip,其它配置,可以使用默认值,即可支持单机快速体验。
如我当前虚拟机ip是192.168.100.150
# BE 数据存放的目录,默认是在 DORIS_HOME 下的 storage 下,默认已经创建,可以更改为你的数据存储路径
#storage_root_path = ${DORIS_HOME}/storage
启动 BE
在 apache-doris/be
下,运行下面命令启动 BE。
[root@localhost be]# ./bin/start_be.sh --daemon
[root@localhost be]# ps -ef |grep /doris_be
root 10098 1 68 15:51 pts/0 00:00:42 /AppHome/doris/apache-doris/be/lib/doris_be
root 12131 8543 0 15:52 pts/0 00:00:00 grep --color=auto /doris_be
连接 Apache Doris FE
通过 MySQL 客户端来连接 Apache Doris FE,下载免安装的 MySQL 客户端。解压刚才下载的 MySQL 客户端,在 bin/
目录下可以找到 mysql
命令行工具。然后执行下面的命令连接 Apache Doris。
mysql -uroot -P9030 -h127.0.0.1
我这边使用的是dbeaver连接的,默认root无密码
注册BE到FE中
在 MySQL 客户端执行类似下面的 SQL,将 BE 添加到集群中
# ALTER SYSTEM ADD BACKEND "be_host_ip:heartbeat_service_port";
ALTER SYSTEM ADD BACKEND "192.168.100.150:9050";
查看BE,FE状态
show proc '/backends';
BackendId|Host |HeartbeatPort|BePort|HttpPort|BrpcPort|ArrowFlightSqlPort|LastStartTime |LastHeartbeat |Alive|SystemDecommissioned|TabletNum|DataUsedCapacity|TrashUsedCapacity|AvailCapacity|TotalCapacity|UsedPct|MaxDiskUsedPct|RemoteUsedCapacity|Tag |ErrMsg|Version |Status |HeartbeatFailureCounter|NodeRole|
---------+---------------+-------------+------+--------+--------+------------------+-------------------+-------------------+-----+--------------------+---------+----------------+-----------------+-------------+-------------+-------+--------------+------------------+------------------------+------+---------------------------+-----------------------------------------------------------------------------------------------------------------------------+-----------------------+--------+
10069 |192.168.100.150|9050 |9060 |8040 |8060 |-1 |2024-12-05 15:52:05|2024-12-05 15:57:01|true |false |24 |0.000 |0.000 |74.180 GB |99.976 GB |25.80 %|25.80 % |0.000 |{"location" : "default"}| |doris-2.1.7-rc03-443e87e203|{"lastSuccessReportTabletsTime":"2024-12-05 15:56:26","lastStreamLoadTime":-1,"isQueryDisabled":false,"isLoadDisabled":false}|0 |mix |
show proc '/frontends';
Name |Host |EditLogPort|HttpPort|QueryPort|RpcPort|ArrowFlightSqlPort|Role |IsMaster|ClusterId |Join|Alive|ReplayedJournalId|LastStartTime |LastHeartbeat |IsHelper|ErrMsg|Version |CurrentConnected|
---------------------------------------+---------------+-----------+--------+---------+-------+------------------+--------+--------+----------+----+-----+-----------------+-------------------+-------------------+--------+------+---------------------------+----------------+
fe_72ca5633_c907_4063_8351_b50252ae0503|192.168.100.150|9010 |8030 |9030 |9020 |-1 |FOLLOWER|true |1556370489|true|true |7618 |2024-12-05 15:47:59|2024-12-05 15:56:21|true | |doris-2.1.7-rc03-443e87e203|Yes |
修改 Root 用户和 Admin 用户的密码
在 MySQL 客户端,执行类似下面的 SQL,为 Root 用户和 Admin 用户设置新密码
#SET PASSWORD FOR 'root' = PASSWORD('doris-root-password');
mysql> SET PASSWORD FOR 'root' = PASSWORD('123456');
Query OK, 0 rows affected (0.01 sec)
#SET PASSWORD FOR 'admin' = PASSWORD('doris-admin-password');
mysql> SET PASSWORD FOR 'admin' = PASSWORD('123456');
Query OK, 0 rows affected (0.00 sec)
Root 用户和 Admin 用户的区别
Root 用户和 Admin 用户都属于 Apache Doris 安装完默认存在的 2 个账户。其中 Root 用户拥有整个集群的超级权限,可以对集群完成各种管理操作,比如添加节点,去除节点。Admin 用户没有管理权限,是集群中的 Superuser,拥有除集群管理相关以外的所有权限。建议只有在需要对集群进行运维管理超级权限时才使用 Root 权限。
使用doris页面访问
访问http://ip:8030/home
即可访问页面
Doris 默认端口介绍
Doris 的各个实例通过网络进行通信,其正常运行需要网络环境提供以下端口。管理员可以根据实际环境自行调整 Doris 的端口配置:
实例名称 | 端口名称 | 默认端口 | 通信方向 | 说明 |
---|---|---|---|---|
BE | be_port | 9060 | FE -> BE | BE 上 Thrift Server 的端口,用于接收来自 FE 的请求 |
BE | webserver_port | 8040 | BE <-> BE,Client <-> FE | BE 上的 HTTP Server 端口 |
BE | heartbeat_service_port | 9050 | FE -> BE | BE 上的心跳服务端口(Thrift),用于接收来自 FE 的心跳 |
BE | brpc_port | 8060 | FE <-> BE,BE <-> BE | BE 上的 BRPC 端口,用于 BE 之间的通信 |
FE | http_port | 8030 | FE <-> FE,Client <-> FE | FE 上的 HTTP Server 端口 |
FE | rpc_port | 9020 | BE -> FE,FE <-> FE | FE 上的 Thrift Server 端口,每个 FE 的配置需保持一致 |
FE | query_port | 9030 | Client <-> FE | FE 上的 MySQL Server 端口 |
FE | edit_log_port | 9010 | FE <-> FE | FE 上的 bdbje 通信端口 |
Broker | broker_ipc_port | 8000 | FE -> Broker,BE -> Broker | Broker 上的 Thrift Server 端口,用于接收请求 |
停止 Apache Doris
停止 FE
在apache-doris/fe
下,运行下面命令停止 FE。
./bin/stop_fe.sh
停止 BE
在 apache-doris/be
下,运行下面命令停止 BE。
./bin/stop_be.sh
参考
1.https://doris.apache.org/zh-CN/docs/gettingStarted/quick-start
2.https://doris.apache.org/zh-CN/docs/install/cluster-deployment/standard-deployment?_highlight=%E7%AB%AF%E5%8F%A3#%E7%AB%AF%E5%8F%A3%E8%A7%84%E5%88%92