1、准备工作
IP | 服务列表 |
---|---|
10.1.62.186 | zk1、dashboard、proxy、server、fe |
10.1.62.187 | zk2、proxy、server |
10.1.62.188 | zk3、proxy、server |
2、codis安装
- 解压
mv /home/codis/codis3.2.2-go1.9.2-linux.tar.gz /usr/codis/
tar -zxvf /usr/codis/codis3.2.2-go1.9.2-linux.tar.gz
2、codis dashboard(1台)
- dashboard.toml编辑
./codis-dashboard --default-config | tee dashboard.toml
coordinator_name = "zookeeper"
coordinator_addr = "10.1.62.186:2181"
product_name = "codis-demo"
product_auth = ""
admin_addr = "10.1.62.186:18080"
# Set arguments for data migration (only accept 'sync' & 'semi-async').
migration_method = "semi-async"
migration_parallel_slots = 100
migration_async_maxbulks = 200
migration_async_maxbytes = "32mb"
migration_async_numkeys = 500
migration_timeout = "30s"
# Set configs for redis sentinel.
sentinel_client_timeout = "10s"
sentinel_quorum = 2
sentinel_parallel_syncs = 1
sentinel_down_after = "30s"
sentinel_failover_timeout = "5m"
sentinel_notification_script = ""
sentinel_client_reconfig_script = ""
- 启动dashboard
nohup ./codis-dashboard --ncpu=4 --config=dashboard.toml \
--log=dashboard.log --log-level=WARN &
PS:dashboard停止,这里必须使用命令来停止dashboard,不然会报错。原因是已经在zk中注册了,但是没有正常关闭的话,zk中的信息就不能删除,再次启动会报错。
./codis-admin –dashboard=10.1.62.186:18080 –shutdown
2.2、codis proxy(3台)
- proxy.toml编辑(以10.1.62.186为例)
./codis-proxy --default-config | tee proxy.toml
# Set bind address for admin(rpc), tcp only.
admin_addr = "10.1.62.186:11080"
# Set bind address for proxy, proto_type can be "tcp", "tcp4", "tcp6", "unix" or "unixpacket".
proto_type = "tcp4"
proxy_addr = "10.1.62.186:19000"
- 启动proxy
nohup ./codis-proxy --ncpu=4 --config=proxy.toml \
--log=proxy.log --log-level=WARN &
2.3、codis server
与启动普通 redis 的方法一致,启动完成后,可以通过 codis-fe 提供的界面或者 codis-admin 命令行工具添加到集群中。
./codis-server ./config/redis.conf
#新建redis.conf文件,可以拷贝redis中的redis.conf,主要修改bind与保护模式
bind 10.1.62.186
protected-mode no
2.4、codis fe
nohup ./codis-fe --ncpu=4 --log=fe.log --log-level=WARN \
--zookeeper=10.1.62.186:2181 --listen=10.1.62.186:8080 &
http://10.1.62.186:8080
3、使用
- 添加proxy
- 通过redis-cli访问proxy
./redis-cli -h 10.1.62.186 -p 19000
set hello world