使用数人云轻松部署 Cassandra 集群
Posted 优云数智
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用数人云轻松部署 Cassandra 集群相关的知识,希望对你有一定的参考价值。
Cassandra 是一个高可靠的大规模分布式存储系统,是一个高度可伸缩的、一致的、分布式的结构化 key-value 存储方案,集 Google BigTable 的数据模型与 Amazon Dynamo 的完全分布式的架构于一身。数人云只需要简单几个步骤,就可以完成 Cassandra 集群的部署,快一起来看看吧。
Cassandra 在 2007 年 由 facebook 开发,并于 2009 年成为 Apache 的孵化项目。Cassandra 的主要特点就是它不是一个数据库,而是由一堆数据库节点共同构成的一个分布式网络服务,对 Cassandra 的一个写操作,会被复制到其他节点上去,对 Cassandra 的读操作,也会被路由到某个节点上面去读取。对于一个 Cassandra 群集来说,扩展性能是比较简单的事情,只管在群集里面添加节点就可以了。由于它良好的可扩展性,被 Digg、Twitter 等知名网站所采纳,成为了一种流行的分布式结构化数据存储方案。
接下来,让我们来体验一下用数人云来部署 Cassandra 集群吧。
部署之前,我们要在 Docker 环境下制作 Cassandra 的 Docker image,并推送至可访问的 Docker Registry。写好配置文件 docker-entrypoint.sh 和 Dockerfile,创建并上传 Docker image 之后,即可开始部署 Cassandra 集群。
请参见 “创建/删除集群” (详见文章底部“阅读原文”)来创建您的集群。
创建集群的实例可以参考数人云文档第一个应用 - 2048,若要部署 Cassandra 集群,需至少 3 个 Slave 节点。
注意:本实例至少需要一个内部代理,以便进行 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,内存最低 2 G;
注 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 集群已经正常运作了!
更具体的内容请点击下方“阅读原文”。
以上是关于使用数人云轻松部署 Cassandra 集群的主要内容,如果未能解决你的问题,请参考以下文章
基于Ansible+Docker快速实现DCOS云平台部署(有彩蛋)
数人云操作系统 2.0 发布
数人云Meetup|容器之Mesos/K8S/Swarm三国演义谁与争锋
开源第二弹!数人云Mesos调度器Swan来啦
容器技术炙手可热 数人云都有哪些应变之道?
PPT来啦 | 数人云分享Kubernetes & Mesos之我见