Failed to find enough host in all backends.

4个be,状态都是Alive: true,在建表时指定PROPERTIES (“replication_num” = “3”);
建表语句报错:ERROR 1064 (HY000): Failed to find enough host in all backends. need: 3
指定"replication_num" = "1"可以创建成功,求助如何解决。

确认一下执行show proc ‘/backends’ \G; 每个节点都是alive?

是的,所以才无从下手,不知道还有啥其他可能原因,我也试过重启,重新建库,都不行。

您是几台机器启动的be,不是一台机器启动的多个be实例吧

4台机器,4个be,其中一台既有fe又有be

请将be.WARNING.log内容以附件的形式上传一下。

我看了一下,这个WARNING日志里都是这个报错:
W1110 16:29:47.610512 12903 utils.cpp:90] Fail to get master client from cache. host=127.0.0.1 port=9020 code=THRIFT_RPC_ERROR
W1110 16:29:47.611557 12903 task_worker_pool.cpp:1060] Fail to report task to 127.0.0.1:9020, err=-1

但是我用show proc ‘/backends’ \G查看,显示节点状态如下:
BackendId: 10134
Cluster: default_cluster
IP: x.x.x.x
HostName: host1
HeartbeatPort: 9050
BePort: 9060
HttpPort: 8040
BrpcPort: 8060
LastStartTime: 2021-11-10 11:15:34
LastHeartbeat: 2021-11-10 16:23:07
Alive: true
SystemDecommissioned: false
ClusterDecommissioned: false
TabletNum: 0
DataUsedCapacity: .000
AvailCapacity: 1.000 B
TotalCapacity: .000
UsedPct: 0.00 %
MaxDiskUsedPct: 0.00 %
ErrMsg:
Version: 1.18.4-5ee7dd28
Status: {“lastSuccessReportTabletsTime”:“N/A”}

请问warning日志中有fail to open相关的错误信息么


在be.conf中加下priority_networks指定为集群内部通信的ip网段,例如priority_networks=10.1.3.0/24

需要drop掉be节点,添加完priority_networks配置后,重新部署

您好,不能一台机器 3个节点么

建议分开部署,同一机器多be计算资源也是共享的,这样做是没意义的