一.kafka基础介绍 Kafka是最初由Linkedin公司开发,是一个分布式.支持分区的(partition).多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量数据以满足各种需求场景:比如基于hadoop的批处理系统.低延迟的实时系统.storm/Spark流式处理引擎,web/nginx日志.访问日志,消息服务等等,用scala语言编写,Linkedin于2010年贡献给了Apache基金会并成为顶级开源 项目. kafka是一种…
前面详细介绍了mongodb的副本集和分片的原理,这里就不赘述了.下面记录Mongodb副本集+分片集群环境部署过程: MongoDB Sharding Cluster,需要三种角色: Shard Server: mongod 实例,用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个relica set承担,防止主机单点故障Config Server: mongod 实例,存储了整个 Cluster Metadata,其中包括 chunk 信息.Route…
一.   MySQL InnoDB Cluster 介绍MySQL的高可用架构无论是社区还是官方,一直在技术上进行探索,这么多年提出了多种解决方案,比如MMM, MHA, NDB Cluster, Galera Cluster, InnoDB Cluster, 腾讯的PhxSQL, MySQL Fabric., aliSQL.MySQL官方在2017年4月推出了一套完整的.高可用的Mysql解决方案 - MySQL InnoDB Cluster, 即一组MySQL服务器可以配置为一个MySQL集…
ProxySQL在早期版本若需要做高可用,需要搭建两个实例,进行冗余.但两个ProxySQL实例之间的数据并不能共通,在主实例上配置后,仍需要在备用节点上进行配置,对管理来说非常不方便.但是ProxySQl 从1.4.2版本后,ProxySQL支持原生的Cluster集群搭建,实例之间可以互通一些配置数据,大大简化了管理与维护操作. ProxySQL是一个非中心化代理,在拓扑中,建议将它部署在靠近应用程序服务器的位置处.ProxySQL节点可以很方便地扩展到上百个节点,因为它支持runtime修…
之前的文档介绍了ELK架构的基础知识,日志集中分析系统的实施方案:- ELK+Redis- ELK+Filebeat - ELK+Filebeat+Redis- ELK+Filebeat+Kafka+ZooKeeper ELK进一步优化架构为EFK,其中F就表示Filebeat.Filebeat即是轻量级数据收集引擎,基于原先Logstash-fowarder 的源码改造出来.换句话说:Filebeat就是新版的 Logstash-fowarder,也会是ELK Stack在shipper端的第…
1.MongoDB副本集 可以先创建超管用户,然后再关闭服务,创建密钥文件,修改配置文件,启动服务,使用超管用户登录验证,然后创建普通用户 2.MongoDB分片集群 先关闭服务,创建密钥文件,修改配置文件,启动服务,创建超管用户,使用超管用户登录验证,然后创建普通用户 这两者的区别主要是创建的用户账号信息存储的地方不一样,导致创建超管用户的先后顺序不一样 另外有关MongoDB分片集群中创建超管用户有如下限制: 使用localhost地址登录的才能创建超管用户(提示:相当于一个后门,只能在 a…
0)环境准备 GlusterFS至少需要两台服务器搭建,服务器配置最好相同,每个服务器两块磁盘,一块是用于安装系统,一块是用于GlusterFS. 192.168.10.239 GlusterFS-master(主节点) Centos7.4192.168.10.212 GlusterFS-slave (从节点) Centos7.4192.168.10.213 Client (客户端)---------------------------------------------------------…
前面详细介绍了mongodb的副本集和分片的原理,这里就不赘述了.下面记录Mongodb副本集+分片集群环境部署过程: MongoDB Sharding Cluster,需要三种角色: Shard Server: mongod 实例,用于存储实际的数据块,实际生产环境中一个shard server角色可由几台机器组个一个relica set承担,防止主机单点故障Config Server: mongod 实例,存储了整个 Cluster Metadata,其中包括 chunk 信息.Route…
前面的文章介绍了Mongodb的安装使用,在 MongoDB 中,有两种数据冗余方式,一种 是 Master-Slave 模式(主从复制),一种是 Replica Sets 模式(副本集). Mongodb一共有三种集群搭建的方式: Replica Set(副本集). Sharding(切片) Master-Slaver(主从)[目前已不推荐使用了!!!] 其中,Sharding集群也是三种集群中最复杂的. 副本集比起主从可以实现故障转移!!非常使用! mongoDB目前已不推荐使用主从模式,取…
首先搭建一个副本集(三台机器) 主,从,仲裁 然后搭建分片shard1,在每台机子上启用shard1(这里就写一个分片吧!!如果写多了怕初学者会混乱,先写一个.然后可以按照同样的方法写第二个,第三个) 再创建mongo路由 进入到路由把分片与control_server串连在一起 这时你的副本集+分片集群已经完成!!但我们还要启用哪些库或者表要做分片.这时我们就启用分片功能了. (详情后面补)…
分片是横跨多台主机存储数据记录的过程,它是MongoDB针对日益增长的数据需求而采用的解决方案.随着数据的快速增长,单台服务器已经无法满足读写高吞吐量的需求.分片通过水平扩展的方式解决了这个问题.通过分片,你能添加更多的机器到集群中来应对快速增长的数据存储并且满足高吞吐量读写操作. 一.分片介绍 MongoDB使用分片技术来支持大数据集和高吞吐量操作. 1.分片目的 对于单台数据库服务器,庞大的数据量及高吞吐量的应用程序对它而言无疑是个巨大的挑战.频繁的CRUD操作能够耗尽服务器的CPU资源,快…
MySQL Group Replication(简称MGR)是MySQL官方于2016年12月推出的一个全新的高可用与高扩展的解决方案.MGR是MySQL官方在5.7.17版本引进的一个数据库高可用与高扩展的解决方案,以插件形式提供,实现了分布式下数据的最终一致性, 它是MySQL5.7版本出现的新特性,它提供了高可用.高扩展.高可靠的MySQL集群服务.MySQL组复制分单主模式和多主模式,mysql 的复制技术仅解决了数据同步的问题,如果 master 宕机,意味着数据库管理员需要介入,应用…
centos6.5环境下Zookeeper-3.4.6集群环境部署 [系统]Centos 6.5 集群部署 [软件]准备好jdk环境,此次我们的环境是open_jdk1.8.0_101 zookeeper-3.4.6.tar.gz [步骤] 1. 准备条件 如果有内部dns或者外网有域名,则直接使用域名 如果没有需要修改/etc/hosts文件,或者直接使用IP 集群规划 主机类型IP地址 域名 zookeeper1192.168.1.1zookeeper1.chinasoft.com zook…
kubernetes 1.5 的安装和集群环境部署 文章转载自:http://www.cnblogs.com/tynia/p/k8s-cluster.html 简介: Docker:是一个开源的应用容器引擎,可以为应用创建一个轻量级的.可移植的.自给自足的容器. Kubernetes:由Google开源的Docker容器集群管理系统,为容器化的应用提供资源调度.部署运行.服务发现.扩容缩容等功能. Etcd:由CoreOS开发并维护的一个高可用的键值存储系统,主要用于共享配置和服务发现. Fla…
复制集 MongoDB复制集RS(ReplicationSet): 基本构成是1主2从的结构,自带互相监控投票机制(Raft(MongoDB)Paxos(mysql MGR 用的是变种)) 如果发生主库宕机, 复制集内部会进行投票选举,选择一个新的主库替代原有主库对外提供服务.同时复制集会自动通知.客户端程序, 主库已经发生切换了, 应用就会连接到新的主库; 4.png 配置Replication Set 1 . 单台配置多实例 // 多套目录 su - mongod mkdir -p /mon…
之前梳理了Mysql+Keepalived双主热备高可用操作记录,对于mysql高可用方案,经常用到的的主要有下面三种: 一.基于主从复制的高可用方案:双节点主从 + keepalived 一般来说,中小型规模的时候,采用这种架构是最省事的. 两个节点可以采用简单的一主一从模式,或者双主模式,并且放置于同一个VLAN中,在master节点发生故障后,利用keepalived/heartbeat的高可用机制实现快速 切换到slave节点. 在这个方案里,有几个需要注意的地方: 采用keepaliv…
MMM介绍MMM(Master-Master replication manager for MySQL)是一套支持双主故障切换和双主日常管理的脚本程序.MMM使用Perl语言开发,主要用来监控和管理MySQL Master-Master(双主)复制,可以说是mysql主主复制管理器.虽然叫做双主复制,但是业务上同一时刻只允许对一个主进行写入,另一台备选主上提供部分读服务,以加速在主主切换时刻备选主的预热,可以说MMM这套脚本程序一方面实现了故障切换的功能,另一方面其内部附加的工具脚本也可以实现…
一.MHA介绍 MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开发,是日本的一位 MySQL专家采用Perl语言编写的一个脚本管理工具,该工具仅适用于MySQLReplication(二层)环境,目的在于维持Master主库的高可用性.是一套优秀的作为MySQL高可用性 环境下故障切换和主从提升的高可用软件.在MySQL故障切换过程中,MHA能做到在0~30秒…
redis配置主从和ssdb主主复制 参考:散尽浮华Linux下Redis主从复制以及SSDB主主复制环境部署记录 只做自己查阅. 环境要求:三台虚拟机一台做主,两台做从. 通过SSDB在redis做主主操作. Redis主从复制(目前redis仅支持主从复制模式,可以支持在线备份.读写分离等功能.) 1)Redis的复制功能是支持多个数据库之间的数据同步.一类是主数据库(master),一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动    将数据同步到从数据库,…
rsyslog 可以理解为多线程增强版的syslog. 在syslog的基础上扩展了很多其他功能,如数据库支持(MySQL.PostgreSQL.Oracle等).日志内容筛选.定义日志格式模板等.目前大多数Linux发行版默认也是使用rsyslog进行日志记录.rsyslog提供了三种远程传输协议: 1 2 3 4 5 6 7 8 9 10 11 12 13 UDP 传输协议 基于传统UDP协议进行远程日志传输,也是传统syslog使用的传输协议: 可靠性比较低,但性能损耗最少, 在网络情况比…
# centos7下FFmpeg环境部署记录 随着视频在网站上的应用越来越多,越来越多的网站服务器需要支持视频转码,视频压缩,FFmpeg是目前最好用的网站服务器后台转码程序,应用最多.FFmpeg是一套可以用来记录.转换数字音频.视频,并能将其转化为流的开源计算机程序.采用LGPL或GPL许可证.它提供了录制.转换以及流化音视频的完整解决方案. ## 下面介绍下在Centos7下针对FFmpeg的部署记录 ### 安装EPEL Release,因为安装需要使用其他的repo源,所以需要EPEL…
前面几篇文章的分析复制集解决了数据库的备份与自动故障转移,但是围绕数据库的业务中当前还有两个方面的问题变得越来越重要.一是海量数据如何存储?二是如何高效的读写海量数据?尽管复制集也可以实现读写分析,如在primary节点上写,在secondary节点上读,但在这种方式下客户端读出来的数据有可能不是最新的,因为primary节点到secondary节点间的数据同步会带来一定延迟,而且这种方式也不能处理大量数据.mongoDB从设计之初就考虑了上面所提到的两个问题,引入了分片机制,实现了海量数据的分…
Mongodb是一种非关系数据库(NoSQL),非关系型数据库的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.MongoDB官方已经不建议使用主从模式了,替代方案是采用副本集的模式.主从模式其实就是一个单副本的应用,没有很好的扩展性和容错性,而Mongodb副本集具有多个副本保证了容错性,就算一个副本挂掉了还有很多副本存在,主节点挂掉后,整个集群内会实现自动切换. Mongodb副本集的工作原理客户端连接到整个Mongodb副本集,不关心具体哪一台节点机是否挂掉.主节点机负…
MongoDB中集群有三种:主从复制.副本集.分片集群.目前副本集已经替代主从复制架构,成为官方建议采用的架构,而分片集群相较于前两种,更加复杂. 下面是生产环境中常用的分片集群架构: 我们知道,分片集群由三个组件构成: [分片]:官方建议采用副本集,提供数据冗余和高可用,主要存储业务数据. [配置服务器]:官方建议采用副本集,存储集群的元数据.很重要,能够影响集群的使用. [mongos instances]:是应用程序的接口,通过它,应用程序与整个集群是透明的,故一般每个应用服务器对应一个实…
上面的(http://www.cnblogs.com/guoyuanwei/p/3565088.html)介绍了部署了一个默认的分片集群,对mongoDB的分片集群有了大概的认识,到目前为止我们还没有在集群上建立其它数据库,mongoDB的分片是基于集合(表)来进行的,因此要对一个集合分片,必须先使其所在的数据库支持分片.如何使一个集合分片?如何选择分片用到的片键?平衡器如何使chunks块在片中迁移?分片的读写情况怎么样?接下来将探讨这些问题. 使集合分片 (1)连接到上面所配置集群中的mon…
一.准备工作 1. 下载zookeeper,下载地址:https://zookeeper.apache.org/releases.html#download  2. 下载CentOS7的镜像,下载地址:https://www.centos.org/download/ 3. 准备XManager,用于远程连接Linux,我用的是CentOS7. 4. 准备VMVare Workstation,安装好3台以上(至少3台才能集群)CentOS75. 设置好CentOS的JDK,本人使用的是最新的JDK…
Twemproxy 又称nutcracker ,是一个memcache.Redis协议的轻量级代理,一个用于sharding 的中间件.有了Twemproxy,客户端不直接访问Redis服务器,而是通过twemproxy 代理中间件间接访问. Twemproxy 为 Twitter 开源产品,简单来说,Twemproxy是Twitter开发的一个redis代理proxy,类似于nginx的反向代理或者mysql的代理工具,如amoeba.Twemproxy通过引入一个代理层,可以将其后端的多台R…
目录 理论概述 一.各种集群简述 二.原理 主从复制 Mongodb副本集 理论概述 一.各种集群简述 mongodb有三种集群搭建方式: 分片:sharding.指为处理大量数据,将数据分开存储,不同服务器保存不同的数据,它们的数据总和即为整个数据集.追求的是高性能. 复制集:Master-Slave 模式(主从复制). 副本集:副本集其实一种互为主从的关系,可理解为主主.副本集指将数据复制,多份保存,不同服务器保存同一份数据,在出现故障时自动切换.对应的是数据冗余.备份.镜像.读写分离.高可…
分布式文件系统(Distributed File System)是指文件系统管理的物理存储资源不一定直接连接在本地节点上,而是通过计算机网络与节点相连,分布式文件系统的实际基于客户机/服务器模式.目前常见的分布式文件系统有很多种,比如Hadoop.Moosefs.HDFS.FastDFS.PNFS(Parallel NFS).Lustre.TFS.GFS等等一系列.在众多的分布式文件系统解决方案中,MFS是搭建比较简单.使用起来也不需要过多的修改web程序,非常方便. 一.MooseFS是什么…
前面的文章已经介绍了redis作为缓存数据库的说明,本文主要说下redis主从复制及集群管理配置的操作记录: Redis主从复制(目前redis仅支持主从复制模式,可以支持在线备份.读写分离等功能.) 1)Redis的复制功能是支持多个数据库之间的数据同步.一类是主数据库(master),一类是从数据库(slave),主数据库可以进行读写操作,当发生写操作的时候自动 将数据同步到从数据库,而从数据库一般是只读的,并接收主数据库同步过来的数据,一个主数据库可以有多个从数据库,而一个从数据库只能有一…