Codis3.2 部署 (2)

./bin/codis-admin --dashboard=127.0.0.1:18080 --create-proxy -x 127.0.0.1:11080

其中 `127.0.0.1:18080` 以及 `127.0.0.1:11080` 分别为 dashboard 和 proxy 的 `admin_addr` 地址; 添加过程中,dashboard 会完成如下一系列动作: - 获取 proxy 信息,对集群 name 以及 auth 进行验证,并将其信息写入到外部存储中; - 同步 slots 状态; - 标记 proxy 状态为 `online`,此后 proxy 开始 `accept` 连接并开始提供服务; 3. 详细说明( 摘自官方文档,详见 : [GitHub](https://github.com/CodisLabs/codis) ) - 启动参数说明:

$ ./bin/codis-proxy -h
Usage:
codis-proxy [--ncpu=N] [--config=CONF] [--log=FILE] [--log-level=LEVEL] [--host-admin=ADDR] [--host-proxy=ADDR] [--ulimit=NLIMIT]
codis-proxy --default-config
codis-proxy --version

Options:
--ncpu=N 最大使用 CPU 个数
-c CONF, --config=CONF 指定启动配置文件
-l FILE, --log=FILE 设置 log 输出文件
--log-level=LEVEL 设置 log 输出等级:INFO,WARN,DEBUG,ERROR;默认INFO,推荐WARN
--ulimit=NLIMIT 检查 ulimit -n 的结果,确保运行时最大文件描述不少于 NLIMIT

- 默认配置文件

$ ./bin/codis-proxy --default-config | tee proxy.toml

Codis-Proxy Set Codis Product {Name/Auth}.

product_name = "codis-demo"
product_auth = ""

Set bind address for admin(rpc), tcp only.

admin_addr = "0.0.0.0:11080"

Set bind address for proxy, proto_type can be "tcp", "tcp4", "tcp6", "unix" or "unixpacket".

proto_type = "tcp4"
proxy_addr = "0.0.0.0:19000"

Set jodis address & session timeout.

jodis_addr = ""
jodis_timeout = 10
jodis_compatible = false

Proxy will ping-pong backend redis periodly to keep-alive

backend_ping_period = 5

If there is no request from client for a long time, the connection will be droped. Set 0 to disable.

session_max_timeout = 1800

Buffer size for each client connection.

session_max_bufsize = 131072

Number of buffered requests for each client connection. Make sure this is higher than the max number of requests for each pipeline request, or your client may be blocked.

session_max_pipeline = 1024

Set period between keep alives. Set 0 to disable.

session_keepalive_period = 60

参数 | 说明 --- | --- product_name|集群名称,参考 dashboard 参数说明 product_auth | 集群密码,默认为空 admin_addr | RESTful API 端口 proto_type | Redis 端口类型,接受 tcp/tcp4/tcp6/unix/unixpacket proxy_addr | Redis 端口地址或者路径 jodis_addr | Jodis 注册 zookeeper 地址 jodis_timeout | Jodis 注册 session timeout 时间,单位 second jodis_compatible | Jodis 注册 zookeeper 的路径 backend_ping_period | 与 codis-server 探活周期,单位 second,0 表示禁止 session_max_timeout | 与 client 连接最大读超时,单位 second,0 表示禁止 session_max_bufsize | 与 client 连接读写缓冲区大小,单位 byte session_max_pipeline | 与 client 连接最大的 pipeline 大小 session_keepalive_period | 与 client 的 tcp keepalive 周期,仅 tcp 有效,0 表示禁止 **注:Codis3 会将 jodis 节点注册在 `/jodis/{PRODUCT_NAME}` 下,这点与 Codis2 不太兼容,所以为了兼容性,可以考虑将 `jodis_compatible` 设置成 `true`。** 4. 停止命令

./bin/codis-admin --proxy=192.168.30.128:11080 --auth="" --shutdown

5. 启动第二个Codis Proxy - 将`config`目录下`proxy.toml`配置文件复制一份为`proxy19001.toml`(原文件默认端口为19000)

[root@localhost codis]# pwd
/usr/local/codis/src/github.com/CodisLabs/codis
[root@localhost codis]# cp config/proxy.toml config/proxy19001.toml

- 编辑复制好的配置文件,修改RESTful API 端口与代理端口端口如下 vim config/proxy19001.toml Set bind address for admin(rpc), tcp only.

admin_addr = "0.0.0.0:11081"

Set bind address for proxy, proto_type can be "tcp", "tcp4", "tcp6", "unix" or "unixpacket".

proto_type = "tcp4"
proxy_addr = "0.0.0.0:19001"

- 启动第二个代理

nohup ./bin/codis-proxy --ncpu=1 --config=config/proxy19001.toml --log=log/proxy19001.log --log-level=WARN &

- 将代理添加入集群(也可在Fe操作,见下方 9.3 页面配置章节)

./bin/codis-admin --dashboard=127.0.0.1:18080 --create-proxy -x 127.0.0.1:11081

##### 八、启动Codis Server 1. 启动命令

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

> 默认日志

/tmp/redis_6379.log

2. 停止命令

./bin/redis-cli shutdown

3. 启动多个Codis Server - 将`config`目录下`redis.conf`配置文件复制3份,总共4份,做两个server各配一个从服务 主 | 从 --- | --- localhost:6379 | localhost:7379 localhost:6380 | localhost:7380

[root@localhost codis]# pwd
/usr/local/codis/src/github.com/CodisLabs/codis
[root@localhost codis]# cp config/redis.conf config/redis7379.conf
[root@localhost codis]# cp config/redis.conf config/redis6380.conf
[root@localhost codis]# cp config/redis.conf config/redis7380.conf

- 修改配置文件(示例为6380,其余操作相同) vim config/redis6380.conf

port 6380
pidfile /tmp/redis_6380.pid
logfile "/tmp/redis_6380.log"
dbfilename dump6380.rdb
dir /tmp/redis_6380

- 启动

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zygspz.html