codis集群实例

codis配置实例

3.13.10.1架构图及环境

1、架构图

2、软件版本

(1)zookeeper-3.5.2-alpha.tar.gz

(2)go1.8.1.linux-amd64.tar.gz

(3)codis3.2

3.13.10.2 zookeeper集群安装

1、安装jdk 1.8(这一步不作详解)

2、下载zookeeper3.5.2安装

在192.168.2.122, 192.168.2.123, 192.168.2.124执行以下安装

(1)准备安装目录和数据存放目录,并建立id文件

#Mkdir /apps/

#Mkdir -p /var/zookeeperdata/

(2)安装zookeeper

# tar -xvf zookeeper-3.5.2-alpha.tar.gz -C/apps/

(3)配置zook.cfg

到/apps/zookeeper目录下的conf目录下配置zoo.cfg如下:

clientPort=2181

dataDir=/var/zookeeperdata            //主要改这一项。

syncLimit=5

initLimit=10

tickTime=2000

server.1=192.168.2.122:2888:3888//后面一定不能有空格,否则启动出错。

server.2=192.168.2.123:2888:3888

server.3=192.168.2.124:2888:3888

(1)   为zookeeper服务器创建ID号

192.168.2.122服务器执行:

Echo “1”>>/var/zookeeperdata/myid

192.168.2.123服务器执行:

Echo “2”>>/var/zookeeperdata/myid

192.168.2.124服务器执行:

Echo “3”>>/var/zookeeperdata/myid

(5)启动并验证

./bin/zkServer.sh start

./bin/zkServer.sh status    //查看状态

可以查看状态:(谁先启动谁为leader)

192.168.2.123为leader

192.168.2.122和192.168.2.124为follower

3.13.10.3安装codis-proxy和codis-server

在192.168.2.122,192.168.2.123,192.168.9.124上执行下列相同操作。

1、安装gcc  gcc-c++ git  autoconf

Yum -y install gcc gcc-c++  git autoconf

2、安装 go

到go的官网下载go.tar.gz包到/apps/目录下:

#Tar -xvf go1.8.1.linux-amd64.tar.gz -C /apps/

Vi /etc/profile.d/go.sh

Export GOROOT=/apps/go

EXPORT GOPATH=apps/codis

Export PATH=$PATH:$GOROOT:$GOPATH

Source go.sh

3、  安装codis

下载codis

#go get -u -d github.com/CodisLabs/codis

Codis会下载到/apps/codis目录下。

(2)编译codis

#Cd /apps/codis/src/github.com/codislabs/codis

#make

编译成功会在/apps/codis/src/github.com/codislabs/codis

bin/目录下生成如下文件:

4、  创建并复制主要目录到/apps/codis/目录下

#mkdir-p /apps/codis/{bin,logs,data}/

#cp -rf$GOPATH/src/github.com/CodisLabs/codis/bin/* /opt/local/codis/bin

#cp -rf$GOPATH/src/github.com/CodisLabs/codis/config /opt/local/codis/

3.13.10.4启动codis-dishboard

1、配置codis-dishboard

Vi /apps/codis/config/ dashboard.toml

coordinator_name = "zookeeper"

coordinator_addr = "192.168.2.123:2181,192.168.2.122:2181,192.168.2.124:2181"

product_name = "codis-loready"

product_auth = ""

admin_addr = "0.0.0.0:18080"

2、启动 codis-dishboard

#./bin/codis-dashboard --config=./config/dashboard.toml--log=./logs/dashboard.log --log-level=WARN &

3.13.10.5 启动codis-proxy

在192.168.2.122,192.168.2.123上启动codis-proxy

1、  配置codis-proxy

vi proxy.toml:

product_name ="codis-loready"           //关键配置

product_auth = ""

session_auth = ""

admin_addr = "0.0.0.0:11080"

proto_type = "tcp4"

proxy_addr = "0.0.0.0:19000"

jodis_name = "Zookeeper"               //关键配置

jodis_addr = "192.168.2.123:2181,192.168.2.122:2181,192.168.2.124:2181"    //关键配置

jodis_timeout = "20s"

jodis_compatible = false

proxy_datacenter = ""

proxy_max_clients = 1000

proxy_max_offheap_size = "1024mb"

proxy_heap_placeholder = "256mb"

backend_ping_period = "5s"

backend_number_databases = 16

2、启动codis-proxy

#./bin/codis-proxy  --config=./config/proxy.toml  --log=./logs/proxy.log --log-level=WARN &

3.13.10.5配置codis-server-group

在192.168.2.123和192.168.2.124上配置redis.conf,并启动codis-server,并把192.168.2.124作为master,192.128.2.123作为slave。

1、  配置redis.conf

(1)192.168.2.124(master)的配置

Vi /apps/codis/config/redis.conf

bind 127.0.0.1

bind 192.168.2.124

logfile"/apps/codis/logs/redis_6379.log"

#save 900 1                           //关闭快照持久化。

#save 300 10

#save 60 10000

appendonly yes                       //开启aof持久化

appendfilename "appendonly.aof"

appendfsync everysec

(2)192.168.2.123(slave配置)

Vi /apps/codis/config/redis.conf

bind 127.0.0.1

bind 192.168.2.123

logfile"/apps/codis/logs/redis_6379.log"

#save 900 1                           //关闭快照持久化。

#save 300 10

#save 60 10000

slaveof 192.168.2.124 6379             //设定master的地址

slave-serve-stale-data yes

slave-read-only yes

appendonly yes                       //开启aof持久化

appendfilename "appendonly.aof"

appendfsync everysec

2、  启动redis

在192.168.2.123和192.168.2.124

Cd  /apps/codis

# ./bin/codis-server ./config/redis.conf  &

3.13.10.6配置CODIS-FE管理codis

1、生成codis.json文件

./bin/codis-admin--dashboard-list --zookeeper=192.168.2.123:2181,192.168.2.122:2181,192.168.2.124:2181|tee ./config/codis.json

2、启动codis-fe

./bin/codis-fe --log=./logs/fe.log--log-level=WARN --zookeeper=192.168.2.123:2181 --listen=192.168.2.122:8089&

3、  访问192.168.2.122:8089配置集群

(1)      添加codis-proxy

依次添加192.168.2.122:11080, 192.168.2.123:11080

(2)      添加codis-server-group

(3)      初始化solts

可以把不同的solt分配到不同的codis-server-group,因为我这里只创建了一个codis-group,所以把1024个solt全分配到group1.

至此codis集群部署完毕。

时间: 2024-10-04 20:57:14

codis集群实例的相关文章

实战Centos系统部署Codis集群服务

导读 Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 Codis Proxy 和连接原生的 Redis Server 没有明显的区别 (不支持的命令列表), 上层应用可以像使用单机的 Redis 一样使用, Codis 底层会处理请求的转发, 不停机的数据迁移等工作, 所有后边的一切事情, 对于前面的客户端来说是透明的, 可以简单的认为后边连接的是一个内存无限大的 Redis 服务. 一.Codis简介 Codis 是 Wandoujia Infrastructu

codis集群使用经验

集群架构图 HA方案测试用例: 功能测试 基于各种场景, 我们主要针对redis缓存的get, set操作进行各种codis集群HA方案的验证 当codis集群中只有一个Group1时,该场景可以确保测试程序操作的数据都在该分组的redis实例中(通过codis-proxy的程序大多数不会使用hash tag来区分slots,该场景测试大多数操作场景,功能是否正常). 让Group1.Master下线. > 1. 验证get,set 正常, 会有5秒的服务不可用. 让Group1.Slave下线

codis集群搭建

Codis简介(来自开源中国社区) Codis 是一个分布式 Redis 解决方案, 对于上层的应用来说, 连接到 CodisProxy 和连接原生的 Redis Server 没有明显的区别 (不支持的命令列表), 上层应用可以像使用单机的 Redis 一样使用, Codis 底层会处理请求的转发, 不停机的数据迁移等工作, 所有后边的一切事情, 对于前面的客户端来说是透明的, 可以简单的认为后边连接的是一个内存无限大的 Redis 服务. Codis 由四部分组成: Codis Proxy

Codis集群的搭建与使用

一.简介 Codis是一个分布式的Redis解决方案,对于上层的应用来说,连接Codis Proxy和连接原生的Redis Server没有明显的区别(不支持的命令列表),上层应用可以像使用单机的Redis一样使用,Codis底层会处理请求的转发,不停机的数据迁移等工作,所有后边的一切事情,对于前面客户端来说是透明的,可以简单的认为后边连接是一个内存无限大的Redis服务. Codis架构图: 以上我们可以看到codis-proxy是单个节点的,因为我们可以通过结合keepalived来实现高可

codis集群部署实战

一.概要 1.折腾codis集群已经快两个月了,感谢一直以来codis的作者刘奇和黄东旭的耐心支持,在这里给你们点个赞,现在我司已经有一个业务跑在了codis集群上,目前只是切了整个业务的10%的量,预计下周会全量切到codis上,这个时候大家肯定特别想知道codis稳定吗?有没有什么bug啊,你想知道的也是我想知道的,搞起吧,用了才知道,反正目前我们这没发现啥问题,一些小的问题已经及时联系作者改掉了,好吧,不扯淡了,写这篇文章的目的是帮助想了解codis的初学者快速部署(官方的部署文档对应运维

OpenResty Codis集群缓存系统

部署环境 OpenResty1.12.5 Codis3.2集群(客户端不支持Redis集群协议故选择了Codis集群) Nginx1.12.1反向代理 Iis7源站 依赖的第三方模块 echo-nginx-module https://github.com/openresty/echo-nginx-module  set-misc-nginx-module  https://github.com/openresty/set-misc-nginx-module  redis-nginx-modul

Codis 集群搭建

Codis 集群搭建 1 安装go1.3.1 CentOS 7.0 安装go 1.3.1 1.1 下载go安装包 golang中国上下载 下载到Downloads下 1.2 解压 tar -zxf go1.3.1.linux-amd64.tar.gz -C /usr/local/ 1.3 修改 etc/profile 文件在文件后加入 export的几行,在unset下面直接加,不要有空行 unset i unset -f pathmunge export GOROOT=/usr/local/g

Nginx高可用负载均衡集群实例架设

Nginx高可用负载均衡集群实例架设一. Nginx高可用集群拓扑架构 node1:17216.100.67node2:170.16.100.68VIP:172.16.100.89RS1:172.16.100.6RS2:172.16.100.69 注意:nginx的高可用集群架构的所有RS的内核参数arp_ignore和arp_announce都为0. 二. Nginx的高可用集群架设步骤1. 在所有node节点(172.16.100.67,172.16.100.68)上安装nginx服务.[e

Codis集群

一.简介 Codis是一个分布式的Redis解决方案,对于上层的应用来说,连接Codis Proxy和连接原生的Redis Server没有明显的区别(不支持的命令列表),上层应用可以像使用单机的Redis一样使用,Codis底层会处理请求的转发,不停机的数据迁移等工作,所有后边的一切事情,对于前面客户端来说是透明的,可以简单的认为后边连接是一个内存无限大的Redis服务. codis-proxy 提供连接集群redis服务的入口 codis-redis-group 实现redis读写的水平扩展