使用数人云轻松部署 Cassandra 集群

Cassandra 是一个高可靠的大规模分布式存储系统,是一个高度可伸缩的、一致的、分布式的结构化 key-value 存储方案,集 Google BigTable 的数据模型与 Amazon Dynamo 的彻底分布式的架构于一身。数人云只须要简单几个步骤,就能够完成Cassandra集群的部署,快一块儿来看看吧。html

Cassandra 在2007年 由 facebook 开发,并于2009年成为 Apache 的孵化项目。Cassandra 的主要特色就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对 Cassandra 的一个写操做,会被复制到其余节点上去,对 Cassandra 的读操做,也会被路由到某个节点上面去读取。对于一个 Cassandra 群集来讲,扩展性能是比较简单的事情,只管在群集里面添加节点就能够了。因为它良好的可扩展性,被 Digg、Twitter 等知名网站所采纳,成为了一种流行的分布式结构化数据存储方案。docker

接下来,让咱们来体验一下用数人云来部署 Cassandra 集群吧。数据库

部署以前,咱们要在 Docker 环境下制做 Cassandra 的 Docker image,并推送至可访问的 Docker Registry。写好配置文件 docker-entrypoint.sh 和 Dockerfile,建立并上传 Docker image 以后,便可开始部署 Cassandra 集群。服务器

第一步创建集群

请参见 “建立/删除集群” (详见文章底部连接)来建立您的集群。
建立集群的实例能够参考数人云文档第一个应用-2048,若要部署 Cassandra 集群,需至少3个 Slave 节点。网络

注意:本实例至少须要一个内部代理,以便进行 Cassandra 集群的服务发现。架构

第二步发布应用

接下来,经过数人云建立应用。
新建 Cassandra 应用:分布式

应用名称:cassandra  
选择集群:your-cluster  
镜像地址:index.shurenyun.com/cassandra  
镜像版本:2.2.4   
网络模式:HOST 模式  
选择主机:(选择3台主机)
添加目录:主机目录:/var/lib/cassandra  容器目录:/var/lib/cassandra  
选择容器规格:  CPU:1   内存:2048 MB  
容器个数:3,选中"1容器1主机"

高级设置:性能

添加应用地址:  
端口:9024,类型:对内 TCP,映射端口:9024    
端口:9160,类型:对内 TCP,映射端口:9160    
添加环境变量:  
CASSANDRA_SEEDS=ip1,ip2,ip3(3台主机的 IP,以逗号分隔)
HEAP_NEWSIZE=300m
MAX_HEAP_SIZE=2g

注1:CASSANDRA_SEEDS:Cassandra 集群的种子节点地址;这个选项能够设置多个值,即 Cassandra 集群中有多个种子节点,集群中全部的服务器在启动的时候,都将于 seed 节点进行通讯,从而获取集群的相关信息;这里选择3台主机做为 seed 节点;测试

注2:Cassandra 启动须要足够的资源,建议 CPU 数最小为1,内存最低2G;网站

注3:Cassandra 节点间须要通讯,因此选择 HOST 模式部署,避免端口隐射致使而节点间没法通讯;

注4:若是对 Cassandra 集群有大体的规划,能够在选择主机处选择所需数量的主机;应用发布后,能够在所选主机的数量范围内,自由伸缩 Cassandra 节点数量。

第三步测试

等待应用部署完成,登录一台集群中的测试机,经过如下指令,用 cqlsh 链接 Cassandra 集群:

sudo docker run -it --rm index.shurenyun.com/cassandra:2.2.4 cqlsh 10.3.10.39

其中,请将10.3.10.39换成你的集群的内部代理 IP;
若链接成功,输入如下代码:

CREATE KEYSPACE test 
WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'dc1' : 3 } AND DURABLE_WRITES = false;

SELECT * FROM system.schema_keyspaces;

若看到名为 test 的 keyspace 已经添加成功,以下图所示:
图片描述

恭喜,如今你的 Cassandra 集群已经正常运做了!

更多详细内容参见:http://doc.shurenyun.com/practice/cassandra.html

相关文章
相关标签/搜索