Datastax Enterprise:shark / spark无法在新的分析节点上运行

时间:2014-08-22 22:20:44

标签: datastax-enterprise datastax

背景

我刚刚将一个Analytics节点添加到我的多数据中心群集中。我正在运行DSE 4.5.1。这是我的拓扑结构:

$ dsetool ring liminex_ent
Address          DC           Rack         Workload         Status  State    Load             Effective-Ownership  VNodes                                      
172.31.22.79     Solr         rack1        Search           Up      Normal   1.31 GB          75.00%               1                                           
172.31.42.106    Solr         rack1        Search           Up      Normal   1.11 GB          58.33%               1                                           
172.31.11.202    Solr         rack1        Search           Up      Normal   1.16 GB          66.67%               1                                           
172.31.45.40     Analytics    2a           Unknown          Up      Normal   391.15 MB        100.00%              1                                           
172.31.41.76     us-west-2    2a           Unknown          Up      Normal   2.05 GB          100.00%              255                                         
172.31.50.106    us-west-2    2b           Unknown          Up      Normal   1.29 GB          0.36%                255 
172.31.8.174     us-west-2    2c           Unknown          Up      Normal   2.23 GB          99.64%               255

我的liminex_ent键空间具有以下复制:

'class': 'NetworkTopologyStrategy',
'us-west-2': '2',
'Solr': '2',
'Analytics': '1'

Ops Center正在识别分析节点(奇怪的是dsetool ring并未意识到其工作负载是分析):

Ops Center Screenshot

节点/etc/default/dseHADOOP_ENABLED=1SPARK_ENABLED=1

问题

在节点上运行dse sharkdse spark会无限期挂起。而且,system.log经常/反复地转储以下内容:

INFO [main] 2014-08-22 22:13:34,580 PluginManager.java (line 223) Activating plugin: com.datastax.bdp.plugin.ExternalProcessAuthPlugin
INFO [main] 2014-08-22 22:13:34,582 PluginManager.java (line 232) No enough available nodes to start plugin com.datastax.bdp.plugin.ExternalProcessAuthPlugin. Trying once again...

我没有足够的关于DSE的背景来了解正在发生的事情。似乎有couple instances这个问题浮出水面,但没有解决方案。

我真的很感激这方面的一些帮助。 DSE到目前为止一直很棒 - 我很想让鲨鱼工作!

1 个答案:

答案 0 :(得分:1)

TL; DR Just do this

在启动具有2个节点的新分析DC时,情况相同。

上面提到的日志消息说Cassandra配置了PasswordAuthentication,因此DSE / Spark正在寻找一种创建并行用户以保证其安全的方法。

但是当添加新DC时,通常策略是对所有期望的键空间(通常是用户拥有的键空间)的NTS的更改。但是,与安全相关的内容都保存在 dse_security system_auth 中 - 这也需要使用NTS且RF = N.除非新DC具有这些键空间,否则Spark不会发生。启动序列每隔5秒就会继续查找它们,然后打印出这个神秘的INFO消息。

<强>解决方案

ALTER KEYSPACE "system_auth" 
    WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'dc1' : 3, 'dc2' : 2};

ALTER KEYSPACE "dse_security"
    WITH REPLICATION = {'class' : 'NetworkTopologyStrategy', 'dc1' : 3, 'dc2' : 2};

不需要重新启动分析/火花节点。跑吧

$ nodetool repair system_auth
$ nodetool repair dse_security

HTH。