Articles of cassandra

Cassandra节点在多个数据中心

http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf:“Cassandra经过configuration,每行都在多个数据中心之间复制。” 那么在这种情况下,在每个数据中心中拥有几乎相同数量的Cassandra节点是一件好事。 如果没有,会不会产生关键的热点?

Linode上的卡桑德拉:黑魔法不起作用

是的,我意识到我正在Linode上运行Cassandra。 是的,我知道在Rackspace或亚马逊上运行它会更好,但现在无关紧要。 基本上,我已经为我计划包含在我的集群中的每个Linode设置了专用IP。 我可以在这些私人IP上ping我的Linode,这样他们就可以互相交谈了。 以下是我的“主”Linode的storage-conf.xml文件中的一些片段: <Seeds> <Seed>192.168.133.219</Seed> </Seeds> <ListenAddress>192.168.133.219</ListenAddress> <StoragePort>7000</StoragePort> <ThriftAddress>192.168.133.219</ThriftAddress> <ThriftPort>9160</ThriftPort> 服务器的私有IP是192.168.133.219 。 我遇到的问题是:当我启动Cassandra时,会发生什么情况: $ cassandra -f Error: Exception thrown by the agent : java.net.MalformedURLException: Local host name unknown: java.net.UnknownHostException: (none): (none) 我不知道是否会有所帮助,但是这里是我的/etc/network/interfaces文件: auto lo iface lo inet loopback auto eth0 eth0:0 iface eth0 inet static address 97.107.137.96 netmask 255.255.255.0 gateway 97.107.137.1 iface eth0:0 […]

当使用AllowAllAuthenticator时,无法连接到cassandra

我在运行Ubuntu Server 10.10的虚拟机上安装了cassandra。 cassandralogin失败与org.apache.cassandra.auth.AllowAllAuthenticator但我总是收到以下错误信息: Login failure. Did you specify 'keyspace', 'username' and 'password'?

使用Flume处理预先存在的日志文件

我有一大堆我需要从中提取数据的日志文件。 是否有可能使用Flume读取这些文件并将其转储到HDFS(Cassandra或其他数据源),然后我可以查询? 文档似乎表明这是所有基于实时事件的日志处理。 我想知道如果我错过了一些明显的过程,只是从目录读取和处理静态日志文件。

EC2在启动时附加实例存储

我正在执行一个实例来托pipe一个Cassandra节点,并且正在testing一些closures和启动脚本。 这个例子是从datastax PV AMI'ami-8932ccfe'发起的。 我为root添加了8GB的SSD EBS存储并启动了它。 在初始启动时,Instance Store(临时驱动器)被连接,一切都很好。 我停止了实例并重新启动它,并且实例存储库不见了,login时显示以下错误消息: ERROR mount -a: 接下来,我终止了实例,重新启动了相同的AMI并进行了设置,然后创build了一个快照AMI,并在其中添加了实例存储以尝试将其“烘焙”到实例中。 然而,停下来开始,我得到同样的问题。 我的问题是,我只有权限停止和启动实例,我不能自己创build它们,所以我必须不停地打扰大学帮我启动它们。 我希望能够在一天结束时停止实例,并在早上再次启动,即在工作时间内降低成本。 有问题的服务器只是一个开发实例,所以我不担心数据丢失,所有我需要在启动时运行的是一些脚本来创build表。 但是,因为实例商店没有自动附加启动Cassandra不会安装。 任何人都可以告诉我如何创build一个实例,以便在停止和启动后自动连接实例存储? 在开始实例之后,我使用下面的代码获取一些元数据(如果有帮助的话): curl http://169.254.169.254/latest/meta-data/block-device-mapping/ ami ephemeral0 root curl http://169.254.169.254/latest/meta-data/block-device-mapping/ephemeral0 sdb 干杯,阿列克谢蓝。

无法将现有Cassandra群集添加到OpsCenter(“ascii”编解码器无法编码字符)

在尝试将现有的Cassandra集群添加到OpsCenter时,遇到以下错误: 创build集群时出错:'ascii'编解码器不能在位置0处对字符u'\ u03a7'进行编码:序号不在范围内(128) 这是在OpsCenter日志中: 2015-06-25 11:30:51-0700 []错误:调用CreateClusterConfController(UnicodeEncodeError)时出现问题:'ascii'编解码器无法对位置0的字符u'\ u03a7'进行编码:序号不在范围内(128) “/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/internet/defer.py”,第1020行,in _inlineCallbacks result = g.send(result)File“/ usr / lib / python2在/usr/lib/python2.6/site-packages/opscenterd/ConfigFileManager.py“中,第154行中的”.6 / site-packages / opscenterd / ClusterServices.py“,第324行,位于_makeAndStartServices文件中,位于loadFromDict File”/ usr /lib/python2.6/site-packages/opscenterd/Config.py“,第673行,fromDict Datastax Enterprise(DSE)4.7.0和OpsCenter 5.1.3遇到此错误。

Mesos从属IP,用于Marathon启动的(docker容器)服务实例

我有一个docker形象,我想通过Mesos / Marathon推出一些实例。 我在docker使用BRIDGEnetworking,我想通过在容器正在启动,启动容器,通过env的mesos奴隶/docker工人主机的“公共”(即不是容器的docker0networking)地址var或param,所以我可以在应用程序响应中通告这个ip(应用程序是一个Cassandra节点,我将在这个地址中的cassandra.yaml中填充broadcast_address ) 我的理解是,我可以让Mesos将此地址上的任何特定端口(在configuration的范围内)转发回运行容器的docker0地址。 如果这是真的,我可以保证应用程序实例(Cassandra节点)没有从这个奴隶移动,有一些约束,我可以有一个mesos预定的Cassandra集群。 我的问题是:我怎么得到奴隶(docker主机)的IP地址到马拉松应用程序实例,因为它正在启动?

Cassandra 2.2 – “nodetool repair”VS“nodetool repair -dc dc1,dc2,dc3”

我想通过在单个节点上只运行一个命令行来完全修复由3个数据中心(dc1,dc2,dc3)组成的Cassandra 2.2群集。 我需要运行吗? nodetool repair 要么 nodetool repair -dc dc1,dc2,dc3 或者我完全错了? 那2个命令修复所有集群节点的所有令牌范围?

无法在Ubuntu上编译节俭

我想在我的电脑上安装cassandra和thrift。 我已经成功安装了cassandra。 但是,使(使用“make”命令)节俭我得到下面的错误: …………… …………. ……Entering directory `/home/USER/thrift-0.9.0-dev/lib/erl' for f in ../../test/AnnotationTest.thrift ../../test/BrokenConstants.thrift ../../test/ConstantsDemo.thrift ../../test/DebugProtoTest.thrift ../../test/DenseLinkingTest.thrift ../../test/DocTest.thrift ../../test/JavaBeansTest.thrift ../../test/ManyTypedefs.thrift ../../test/OptionalRequiredTest.thrift ../../test/SmallTest.thrift ../../test/StressTest.thrift ../../test/ThriftTest.thrift test/Thrift1151.thrift ; do \ ../../compiler/cpp/thrift –gen erl -out test $f ; \ done ; \ touch .generated [WARNING:/home/USER/thrift-0.9.0-dev/test/BrokenConstants.thrift:20] 64-bit constant "68719476736" may not work in all languages. [ERROR:/home/USER/thrift-0.9.0-dev/test/BrokenConstants.thrift:21] (last token was '9876543210987654321') […]

启动cassandra布局

我们在单个服务器上托pipe的stream量较低的站点(每天约1千次的浏览量),并预计在未来几年内会大幅增长。 我正在考虑转移到Rackspace CloudServer或EC2并启动3个节点(全部在CentOS上): 2个Web(Apache) – 带负载均衡器 1个MySQL(用于Wordpress动力部分) 问题是现在把Cassandra放在哪里 它应该坐在每个Web节点还是MySQL节点上? 我现在的想法是把它放在Web节点上。 我的理解是,Cassandra具有容错的好处(即,如果我们取下一个节点,则该网站仍在运行)。 因此,即使只有2个节点,我们也能获得这种好处,而不是把它放在MySQL节点上。 另外,当我们扩展并添加另一个节点时,一个cassandra实例可以和它一起,并且PHP总是可以在本地主机上运行它的查询。 这是一个好主意吗?