无法在 DSE 中启用 Alwayson sql

Posted

技术标签:

【中文标题】无法在 DSE 中启用 Alwayson sql【英文标题】:Can not enable Alwayson sql in DSE 【发布时间】:2019-02-14 04:51:36 【问题描述】:

我在启动 Alwayson sql 时遇到此错误,尝试了很多方法但结果仍然相同。任何想法为什么? 我使用 1 个集群、1 个分析+搜索中心、2 个 ubuntu 16.04 节点。

INFO  [ALWAYSON-SQL] 2019-02-14 11:36:01,348 ALWAYSON-SQL AlwaysOnSqlRunner.scala:304 - Shutting down AlwaysOn SQL.
INFO  [ALWAYSON-SQL] 2019-02-14 11:36:01,617 ALWAYSON-SQL AlwaysOnSqlRunner.scala:328 - Set status to stopped
INFO  [ALWAYSON-SQL] 2019-02-14 11:36:01,620 ALWAYSON-SQL AlwaysOnSqlRunner.scala:382 - Reserve port for AlwaysOn SQL
INFO  [ALWAYSON-SQL] 2019-02-14 11:36:04,621 ALWAYSON-SQL AlwaysOnSqlRunner.scala:375 - Release reserved port
INFO  [ALWAYSON-SQL] 2019-02-14 11:36:04,622 ALWAYSON-SQL AlwaysOnSqlRunner.scala:805 - Set InCluster token to DseFs client
INFO  [ForkJoinPool-1-worker-1] 2019-02-14 11:36:04,650  AlwaysOnSqlRunner.scala:740 - dsefs server heartbeat response: pong
INFO  [ForkJoinPool-1-worker-3] 2019-02-14 11:36:04,757  AlwaysOnSqlRunner.scala:704 - Create DseFs directory /var/log/spark/alwayson_sql
INFO  [ForkJoinPool-1-worker-3] 2019-02-14 11:36:04,758  AlwaysOnSqlRunner.scala:805 - Set InCluster token to DseFs client
ERROR [ForkJoinPool-1-worker-3] 2019-02-14 11:36:04,788  AlwaysOnSqlRunner.scala:722 - Failed to check dsefs directory alwayson_sql
com.datastax.bdp.fs.model.AccessDeniedException: Insufficient permissions to path /
        at com.datastax.bdp.fs.model.DseFsJsonProtocol$ThrowableReader$.read(DseFsJsonProtocol.scala:258)
        at com.datastax.bdp.fs.model.DseFsJsonProtocol$ThrowableReader$.read(DseFsJsonProtocol.scala:232)
        at spray.json.JsValue.convertTo(JsValue.scala:31)
        at com.datastax.bdp.fs.rest.RestResponse$stateMachine$macro$331$1.apply(RestResponse.scala:48)
        at com.datastax.bdp.fs.rest.RestResponse$stateMachine$macro$331$1.apply(RestResponse.scala:44)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:465)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
        at java.lang.Thread.run(Thread.java:748)
INFO  [ALWAYSON-SQL] 2019-02-14 11:36:04,788 ALWAYSON-SQL AlwaysOnSqlRunner.scala:247 - ALWAYSON-SQL caused an exception in state RUNNING : com.datastax.bdp.fs.model.AccessDeniedException: Insufficient permissions to path /
com.datastax.bdp.fs.model.AccessDeniedException: Insufficient permissions to path /
        at com.datastax.bdp.fs.model.DseFsJsonProtocol$ThrowableReader$.read(DseFsJsonProtocol.scala:258)
        at com.datastax.bdp.fs.model.DseFsJsonProtocol$ThrowableReader$.read(DseFsJsonProtocol.scala:232)
        at spray.json.JsValue.convertTo(JsValue.scala:31)
        at com.datastax.bdp.fs.rest.RestResponse$stateMachine$macro$331$1.apply(RestResponse.scala:48)
        at com.datastax.bdp.fs.rest.RestResponse$stateMachine$macro$331$1.apply(RestResponse.scala:44)
        at scala.concurrent.impl.CallbackRunnable.run(Promise.scala:32)
        at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:163)
        at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:404)
        at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:465)
        at io.netty.util.concurrent.SingleThreadEventExecutor$5.run(SingleThreadEventExecutor.java:884)
        at java.lang.Thread.run(Thread.java:748)

【问题讨论】:

【参考方案1】:

我也遇到过这个问题!这是 dsefs 中的权限问题!要解决此问题,请使用 root Cassandra 用户登录,并将您的 alwayson 日志目录的权限更改为 alwayson 用户。

【讨论】:

以上是关于无法在 DSE 中启用 Alwayson sql的主要内容,如果未能解决你的问题,请参考以下文章

DSE:激活 OLAP

可以为特定表启用 dse cassandra 审核日志吗?

SQL群集下安装多实例并启用AlwaysOn可用性组功能

无法在 DSE 图中打印节点属性

实时索引 DSE

为啥我们应该在单独的 DC 中运行 dse search