• Doris的安装和部署(Failed to find 3 backends for policy)


    一、硬件环境准备

              Doris作为开源MPP架构OLAP数据库,可以运行在大部分主流商业服务器上。为了充分利用 MPP 架构的并发优势和 Doris 的高可用特性,我们建议 Doris 的部署遵循以下要求:

    硬件环境

    Linux SystemVersion
    Centos7.1 and above
    Ubuntu16.04 and above

    软件环境

    SoftVersion
    Java1.8 and above
    GCC

    4.8.2 and above(Linux系统已经带了)

    Doris1.1.1

    当前Doris的下载安装包,由于挂在apache官网上,官网地址CDN在境外,网络下载速度极慢,可以使用挂载VPN下载,速度会极快,本博主已经下载完毕上传在百度云盘,地址为:

    Doris1.1.1 下载网盘地址:

    链接:https://pan.baidu.com/s/1ciD0f8YE5YxLkAcjFhoLtw 
    提取码:boyp

    JDK1.8 下载网盘下载地址:

    链接:https://pan.baidu.com/s/1lsQPkl41oroR60NN0nMvNw 
    提取码:yzjw

    二、组件分配

    服务器IP        服务组件备注说明(测试环境)
    192.168.1.1FE,BE测试环境,所以FE和BE在一台服务器
    192.168.1.2BE多台FE组件切勿放在,会存在问题        
    192.168.1.3BE同时建设表的时候,OLAP引擎时候,是最少需要3台FE组件

    重点说明 :(如果只有一个节点,FE和BE只在一台服务器,单节点,在建表OLAP时候,会出现)ERROR 1105 (HY000): errCode = 2, detailMessage = Failed to find 3 backends for policy: cluster|query|load|schedule|tags|medium: default_cluster|false|false|true|[{"location" : "default"}]|HDD

    三、Linxu 系统环境设置(所有服务器)

    1. vi /etc/security/limits.conf
    2. *soft nofile 65536
    3. *hard nofile 65536

    重启服务器:reboot
    查           看:ulimit -n     (如果显示65536即为正确)

    三、Linxu 系统环境设置(时钟同步|所有服务器)

           Doris 的元数据要求时间精度小于 5000ms,所以集群中的所有机器都需要同步时钟,避免时钟问题导致元数据不一致导致服务异常。说明:分布式,对服务器之间时间由很好要求,最好安装Ntpd服务)

    四、Linxu 系统环境设置(关闭交换分区(swap )所有服务器)

    Linux swap分区会对Doris造成严重的性能问题,安装前需要禁用
    swap分区      :    swapoff -a
    查看是否关闭:  free -h

    五、硬件环境要求

    解压Doris 压缩包(重命名)

    1. tar -zxvf apache-doris-1.1.1-bin-x86.tar.gz
    2. mv apache-doris-1.1.1-bin-x86.tar.gz doris

    查看服务器Ip Addr 将对应IP地址 填写在Fe.conf配置文件,去掉注释添加下列配置

    priority_networks=192.168.1.1/24

    由于存在多个网卡,或者安装docker等环境导致的虚拟网卡存在,同一主机可能有多个不同的ip。目前 Doris 不会自动识别可用 IP。所以当你在部署主机上遇到多个IP时,必须通过priority_networks配置项强制指定正确的IP 。

    将上述解压包,拷贝到对应的Be服务器,只修改Be.conf,将服务器对应IP地址修改在
    priority_networks=192.168.1.2/24 

    其余配置文件,元数据存储,实际数据存储测试环境先默认不书写。

    运行Fe服务

    1. cd /Doris/apache-doris-1.1.1-bin-x86/fe/bin
    2. /start_fe.sh --daemon

    运行Be服务,先需要将Be注册到Fe,在Fe服务器解压,此处用到Mysql-Client5.7

    tar Mysql-5.7.1xxxxx.tar.gz

    使用Mysql-Client登录(默认无密码)

    /usr/local/mysql/bin/mysql -h 192.168.1.1 -P 9030 -uroot

    将BE的IP地址和端口添加注册到FE

    1. 多个BE需要都要添加
    2. ALTER SYSTEM ADD BACKEND "192.168.1.1:9050";
    3. ALTER SYSTEM ADD BACKEND "192.168.1.2:9050";
    4. ALTER SYSTEM ADD BACKEND "192.168.1.3:9050";

     运行Be服务

    1. cd /Doris/apache-doris-1.1.1-bin-x86/be/bin/
    2. ./start_be.sh

    登录WEB页面查看FE运行情况,同时可以看到日志
    Fe的Ip:8030 用户名:root 密码没修改,默认为空(密码可以修改,生产环境建议修改,包括Root密码)

    内部登录界面:

     

    修改 admin 和 root 用户密码
    因为web界面的admin用户和 数据库root都没有密码,所以需要设置一下,方式都相同
    SET PASSWORD FOR 'admin' = PASSWORD('666666');
    SET PASSWORD FOR 'root' = PASSWORD('666666');
    # 这样访问web界面和数据库登录时都需要输入密码了

    登录数据库查看FE和BE对应的状态

     使用mysql > Help create table; 获取操作指南,数据库建表语句。

    上述异常为,没找到三个节点,节点异常,所以需要修改。各节点详细信息查看对应节点的错误日志

    1. | 错误码 | 错误信息 |
    2. | :----- | :----------------------------------------------------------- |
    3. | 1005 | 创建表格失败,在返回错误信息中给出具体原因 |
    4. | 1007 | 数据库已经存在,不能创建同名的数据库 |
    5. | 1008 | 数据存不存在,无法删除 |
    6. | 1044 | 数据库对用户未授权,不能访问 |
    7. | 1045 | 用户名及密码不匹配,不能访问系统 |
    8. | 1046 | 没有指定要查询的目标数据库 |
    9. | 1047 | 用户输入了无效的操作指令 |
    10. | 1049 | 用户指定了无效的数据库 |
    11. | 1050 | 数据表已经存在 |
    12. | 1051 | 无效的数据表 |
    13. | 1052 | 指定的列名有歧义,不能唯一确定对应列 |
    14. | 1053 | 为Semi-Join/Anti-Join查询指定了非法的数据列 |
    15. | 1054 | 指定的列在表中不存在 |
    16. | 1058 | 查询语句中选择的列数目与查询结果的列数目不一致 |
    17. | 1060 | 列名重复 |
    18. | 1064 | 没有存活的Backend节点 |
    19. | 1066 | 查询语句中出现了重复的表别名 |
    20. | 1094 | 线程ID无效 |
    21. | 1095 | 非线程的拥有者不能终止线程的运行 |
    22. | 1096 | 查询语句没有指定要查询或操作的数据表 |
    23. | 1102 | 数据库名不正确 |
    24. | 1104 | 数据表名不正确 |
    25. | 1105 | 其它错误 |
    26. | 1110 | 子查询中指定了重复的列 |
    27. | 1111 | 在Where从句中非法使用聚合函数 |
    28. | 1113 | 新建表的列集合不能为空 |
    29. | 1115 | 使用了不支持的字符集 |
    30. | 1130 | 客户端使用了未被授权的IP地址来访问系统 |
    31. | 1132 | 无权限修改用户密码 |
    32. | 1141 | 撤销用户权限时指定了用户不具备的权限 |
    33. | 1142 | 用户执行了未被授权的操作 |
    34. | 1166 | 列名不正确 |
    35. | 1193 | 使用了无效的系统变量名 |
    36. | 1203 | 用户使用的活跃连接数超过了限制 |
    37. | 1211 | 不允许创建新用户 |
    38. | 1227 | 拒绝访问,用户执行了无权限的操作 |
    39. | 1228 | 会话变量不能通过SET GLOBAL指令来修改 |
    40. | 1229 | 全局变量应通过SET GLOBAL指令来修改 |
    41. | 1230 | 相关的系统变量没有缺省值 |
    42. | 1231 | 给某系统变量设置了无效值 |
    43. | 1232 | 给某系统变量设置了错误数据类型的值 |
    44. | 1248 | 没有给内联视图设置别名 |
    45. | 1251 | 客户端不支持服务器请求的身份验证协议;请升级MySQL客户端 |
    46. | 1286 | 配置的存储引擎不正确 |
    47. | 1298 | 配置的时区不正确 |
    48. | 1347 | 对象与期望的类型不匹配 |
    49. | 1353 | SELECT和视图的字段列表具有不同的列数 |
    50. | 1364 | 字段不允许NULL值,但是没有设置缺省值 |
    51. | 1372 | 密码长度不够 |
    52. | 1396 | 用户执行的操作运行失败 |
    53. | 1471 | 指定表不允许插入数据 |
    54. | 1507 | 删除不存在的分区,且没有指定如果存在才删除的条件 |
    55. | 1508 | 无法删除所有分区,请改用DROP TABLE |
    56. | 1517 | 出现了重复的分区名字 |
    57. | 1567 | 分区的名字不正确 |
    58. | 1621 | 指定的系统变量是只读的 |
    59. | 1735 | 表中不存在指定的分区名 |
    60. | 1748 | 不能将数据插入具有空分区的表中使用“ SHOW PARTITIONS FROM tbl”来查看此表的当前分区 |
    61. | 1749 | 表分区不存在 |
    62. | 5000 | 指定的表不是OLAP表 |
    63. | 5001 | 指定的PROC路径无效 |
    64. | 5002 | 必须在列置换中明确指定列名 |
    65. | 5003 | Key列应排在Value列之前 |
    66. | 5004 | 表至少应包含1个Key列 |
    67. | 5005 | 集群ID无效 |
    68. | 5006 | 无效的查询规划 |
    69. | 5007 | 冲突的查询规划 |
    70. | 5008 | 数据插入提示:仅适用于有分区的数据表 |
    71. | 5009 | PARTITION子句对于INSERT到未分区表中无效 |
    72. | 5010 | 列数不等于SELECT语句的选择列表数 |
    73. | 5011 | 无法解析表引用 |
    74. | 5012 | 指定的值不是一个有效数字 |
    75. | 5013 | 不支持的时间单位 |
    76. | 5014 | 表状态不正常 |
    77. | 5015 | 分区状态不正常 |
    78. | 5016 | 分区上存在数据导入任务 |
    79. | 5017 | 指定列不是Key列 |
    80. | 5018 | 值的格式无效 |
    81. | 5019 | 数据副本与版本不匹配 |
    82. | 5021 | BE节点已离线 |
    83. | 5022 | 非分区表中的分区数不是1 |
    84. | 5023 | alter语句中无任何操作 |
    85. | 5024 | 任务执行超时 |
    86. | 5025 | 数据插入操作失败 |
    87. | 5026 | 通过SELECT语句创建表时使用了不支持的数据类型 |
    88. | 5027 | 没有设置指定的参数 |
    89. | 5028 | 没有找到指定的集群 |
    90. | 5030 | 某用户没有访问集群的权限 |
    91. | 5031 | 没有指定参数或参数无效 |
    92. | 5032 | 没有指定集群实例数目 |
    93. | 5034 | 集群名已经存在 |
    94. | 5035 | 集群已经存在 |
    95. | 5036 | 集群中BE节点不足 |
    96. | 5037 | 删除集群之前,必须删除集群中的所有数据库 |
    97. | 5037 | 集群中不存在这个ID的BE节点 |
    98. | 5038 | 没有指定集群名字 |
    99. | 5040 | 未知的集群 |
    100. | 5041 | 没有集群名字 |
    101. | 5042 | 没有权限 |
    102. | 5043 | 实例数目应大于0 |
    103. | 5046 | 源集群不存在 |
    104. | 5047 | 目标集群不存在 |
    105. | 5048 | 源数据库不存在 |
    106. | 5049 | 目标数据库不存在 |
    107. | 5050 | 没有选择集群,请输入集群 |
    108. | 5051 | 应先将源数据库连接到目标数据库 |
    109. | 5052 | 集群内部错误:BE节点错误信息 |
    110. | 5053 | 没有从源数据库到目标数据库的迁移任务 |
    111. | 5054 | 指定数据库已经连接到目标数据库,或正在迁移数据 |
    112. | 5055 | 数据连接或者数据迁移不能在同一集群内执行 |
    113. | 5056 | 不能删除数据库:它被关联至其它数据库或正在迁移数据 |
    114. | 5056 | 不能重命名数据库:它被关联至其它数据库或正在迁移数据 |
    115. | 5056 | 集群中BE节点不足 |
    116. | 5056 | 集群内已存在指定数目的BE节点 |
    117. | 5059 | 集群中存在处于下线状态的BE节点 |
    118. | 5062 | 不正确的群集名称(名称'default_cluster'是保留名称) |
    119. | 5063 | 类型名不正确 |
    120. | 5064 | 通用错误提示 |
    121. | 5063 | Colocate功能已被管理员禁用 |
    122. | 5063 | colocate数据表不存在 |
    123. | 5063 | Colocate表必须是OLAP表 |
    124. | 5063 | Colocate表应该具有同样的副本数目 |
    125. | 5063 | Colocate表应该具有同样的分桶数目 |
    126. | 5063 | Colocate表的分区列数目必须一致 |
    127. | 5063 | Colocate表的分区列的数据类型必须一致 |
    128. | 5064 | 指定表不是colocate表 |
    129. | 5065 | 指定的操作是无效的 |
    130. | 5065 | 指定的时间单位是非法的,正确的单位包括:HOUR / DAY / WEEK / MONTH |
    131. | 5066 | 动态分区起始值应该小于0 |
    132. | 5066 | 动态分区起始值不是有效的数字 |
    133. | 5066 | 动态分区结束值应该大于0 |
    134. | 5066 | 动态分区结束值不是有效的数字 |
    135. | 5066 | 动态分区结束值为空 |
    136. | 5067 | 动态分区分桶数应该大于0 |
    137. | 5067 | 动态分区分桶值不是有效的数字 |
    138. | 5066 | 动态分区分桶值为空 |
    139. | 5068 | 是否允许动态分区的值不是有效的布尔值:true或者false |
    140. | 5069 | 指定的动态分区名前缀是非法的 |
    141. | 5070 | 指定的操作被禁止了 |
    142. | 5071 | 动态分区副本数应该大于0 |
    143. | 5072 | 动态分区副本值不是有效的数字 |
    144. | 5073 | 原始创建表stmt为空 |
    145. | 5074 | 创建历史动态分区参数:create_history_partition无效,期望的是:true或者false |

    官方文档:https://doris.incubator.apache.org/docs/install/install-deploy

  • 相关阅读:
    javascript自定义事件的观察者模式写法和用法以及继承
    day36 XSS跨站&MXSS&UXSS&FlashXSS&PDFXSS
    css-transform:rotate()没效果
    LeetCode50天刷题计划(Day 5—— 最长回文子串 10.50-13:00)
    【LEACH协议】无线传感器网络LEACH与DEEC协议【含Matlab源码 2187期】
    一篇讲清楚String、StringBuffer和StringBuild
    HTML5和CSS3五CSS3二
    Media Foundation播放器
    网络安全/渗透测试工具AWVS14.9下载/使用教程/安装教程
    Python 类self 详解
  • 原文地址:https://blog.csdn.net/weixin_38822045/article/details/126519080