当前位置: 首页 > news >正文

Docker运行Cassandra集群

  • cassandra是一个开源的分布式NoSQL数据库系统。
  • 去中心化而非Master/Slave架构,非常易于扩展。
  • 面向列的数据库,不是传统结构式数据库。

获取镜像

docker pull cassandra:latest

创建单机容器

docker run -it --name cassandra cassandra:latest

挂载文件

切换到宿主机存放配置文件的地方(如果没有自己创建)

cd /opt/cassandra

首先我们从刚才单机版本中拷贝出yaml文件:cassandra.yaml

docker cp cassandra:/opt/cassandra/conf/cassandra.yaml .

查看拷贝出来的文件

ls
cassandra.yaml

修改配置文件:

authenticator: AllowAllAuthenticator 修改为 authenticator: PasswordAuthenticator来允许外部连接
删除容器,一定要删除,否则报错端口占用:

docker rm -f cassandra

编写docker-compose.yml文件

前提是你已经安装好了这里的docker-compose插件,另外具体的挂载位置一定根据自身来

version: '3'
services:cassandra-1:image: cassandra:latestcontainer_name: cassandra-1volumes:- ~/Desktop/brainwave/conf/cassandra/cassandra.yaml:/opt/cassandra/conf/cassandra.yaml- ~/Desktop/brainwave/data/cassandra-cluster/cassandra-1/cassandra:/var/lib/cassandraenvironment:- CASSANDRA_BROADCAST_ADDRESS=cassandra-1ports:- "7000:7000"- "9042:9042"restart: alwayscassandra-2:image: cassandra:latestcontainer_name: cassandra-2volumes:- ~/Desktop/brainwave/conf/cassandra/cassandra.yaml:/opt/cassandra/conf/cassandra.yaml- ~/Desktop/brainwave/data/cassandra-cluster/cassandra-2/cassandra:/var/lib/cassandraenvironment:- CASSANDRA_BROADCAST_ADDRESS=cassandra-2- CASSANDRA_SEEDS=cassandra-1ports:- "7001:7000"- "9043:9042"depends_on:- cassandra-1restart: alwayscassandra-3:image: cassandra:latestcontainer_name: cassandra-3volumes:- ~/Desktop/brainwave/conf/cassandra/cassandra.yaml:/opt/cassandra/conf/cassandra.yaml- ~/Desktop/brainwave/data/cassandra-cluster/cassandra-3/cassandra:/var/lib/cassandraenvironment:- CASSANDRA_BROADCAST_ADDRESS=cassandra-3- CASSANDRA_SEEDS=cassandra-1ports:- "7002:7000"- "9044:9042"depends_on:- cassandra-2restart: always

可能需要额外调整系统参数:

vi /etc/sysctl.conf
vm.max_map_count=1048575
sysctl -p

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 如何选择工厂模式或策略模式:Java设计模式实践指南
  • mmdebstrap:创建 Debian 系统 chroot 环境的利器 ️
  • LeetCode138-随机链表的复制--经典OJ题
  • 视频循环存储的实现
  • 嵌入式学习笔记十三——C语言指针变量、一维数组的指针、快速排序
  • 25考研计算机组成原理复习·3.3主存储器与CPU的连接·3.4外部存储器
  • Web前端开发环境搭建
  • 后台数据库与Excel互联操作
  • 基于大数据的气象数据分析与可视化系统设计与实现【爬虫海量数据,LSTM预测】
  • SSRS rdlc报表 九 在.net core中使用RDLC报表
  • Linux 下查看 CPU 使用率
  • 达梦数据库 逻辑备份还原
  • SQL注入第一关-Less1
  • 备战秋招60天算法挑战,Day12
  • 企业数据治理之主数据治理--组织主数据
  • 2018一半小结一波
  • isset在php5.6-和php7.0+的一些差异
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • Octave 入门
  • Odoo domain写法及运用
  • Vue实战(四)登录/注册页的实现
  • Web Storage相关
  • Zsh 开发指南(第十四篇 文件读写)
  • 三栏布局总结
  • 适配mpvue平台的的微信小程序日历组件mpvue-calendar
  • 提升用户体验的利器——使用Vue-Occupy实现占位效果
  • No resource identifier found for attribute,RxJava之zip操作符
  • 如何在招聘中考核.NET架构师
  • ​学习一下,什么是预包装食品?​
  • #include
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • #在 README.md 中生成项目目录结构
  • (+3)1.3敏捷宣言与敏捷过程的特点
  • (23)Linux的软硬连接
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (Java数据结构)ArrayList
  • (附源码)springboot学生选课系统 毕业设计 612555
  • (十六)Flask之蓝图
  • (学习日记)2024.03.25:UCOSIII第二十二节:系统启动流程详解
  • (原創) 如何動態建立二維陣列(多維陣列)? (.NET) (C#)
  • (转)ORM
  • (自用)交互协议设计——protobuf序列化
  • ***监测系统的构建(chkrootkit )
  • .NET Core 通过 Ef Core 操作 Mysql
  • .NET MVC第三章、三种传值方式
  • .NET 将多个程序集合并成单一程序集的 4+3 种方法
  • .NET/C# 使窗口永不激活(No Activate 永不获得焦点)
  • .net打印*三角形
  • .NET中winform传递参数至Url并获得返回值或文件
  • .one4-V-XXXXXXXX勒索病毒数据怎么处理|数据解密恢复
  • @RequestParam @RequestBody @PathVariable 等参数绑定注解详解
  • [ 隧道技术 ] 反弹shell的集中常见方式(四)python反弹shell
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹
  • [AI]ChatGPT4 与 ChatGPT3.5 区别有多大