CacheCloud-系统配置

一、系统配置全局说明

在早期的CacheCloud版本中,许多配置需要对源码进行一些修复,对于一些运维人员以及对java不太熟悉的朋友来说不是很友好,为此添加了系统配置页面,系统配置页面可以动态修改系统的一些配置,例如ssh的相关信息,客户端版本信息,机器报警阀值,文档地址、maven仓库、手机和邮件报警、值班联系人配置等等,具体示意图如下:

系统配置

二、详细说明

1.ssh相关:cachecloud服务器与其他Redis机器交互使用的是ssh。

* ssh用户名
* ssh密码
* ssh端口

老版本中的online.properties和local.properties中的如下配置,如今已经改为可以动态配置了。

1
2
3
cachecloud.machine.username = cachecloud
cachecloud.machine.password = cachecloud
cachecloud.machine.ssh.port = 22

2.管理员相关

* admin用户名:cachecloud超级管理员登录名
* admin密码: cachecloud超级管理员密码
* 超级管理员组: 除了admin,可以添加其他成员,用于做下线的操作(超级管理员与普通管理员的区别:目前只是下线应用)

3.机器报警阀值:

cachecloud会定期对机器重要指标进行检测进行报警(报警实现请参考:https://github.com/sohutv/cachecloud/wiki/3.%E6%9C%8D%E5%8A%A1%E5%99%A8%E7%AB%AF%E6%8E%A5%E5%85%A5%E6%96%87%E6%A1%A3#cc5-2)

  • cpu报警阀值
  • 内存报警阀值
  • 负载报警阀值

4. 文案

  • 文档地址,对应的是
    文档地址
  • 联系地址,对应的是
    值班联系人信息

5. 报警信息

  • 邮件联系人: 用逗号隔开
  • 手机号短信: 用逗号隔开

6. 客户端版本管理(修改请慎重,修改不当可能造成客户端启动失效

  • 可用客户端版本(用逗号隔开):良好的客户端版本列表,没有bug,如果客户端使用该版本的客户端可正常使用。
  • 警告客户端版本(用逗号隔开): 即将被放弃的客户端版本列表,如果客户端使用该版本能启动成功,但是可能存在bug,建议替换成可用版本的客户端。
  • 不可用客户端版本(用逗号隔开): 不可用的客户端版本列表,如果客户端使用该版本将启动失败。

    注意,最后一个可用版本的版本号,就是接入代码中的版本号,代表最新的版本,例如1.1,1.2,1.5,那么接入代码就是

三、注意

系统配置的初始化值:

需要导入cachecloud.sql中的相关表和数据(以cachecloud.sql中数据为准):

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
CREATE TABLE `system_config` (
`config_key` varchar(255) NOT NULL COMMENT '配置key',
`config_value` varchar(512) NOT NULL COMMENT '配置value',
`info` varchar(255) NOT NULL COMMENT '配置说明',
`status` tinyint NOT NULL COMMENT '1:可用,0:不可用',
`order_id` int NOT NULL COMMENT '顺序',
PRIMARY KEY (`config_key`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='系统配置';
--
-- init cachecloud data
--
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.machine.ssh.name','cachecloud','机器ssh用户名',1,1);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.machine.ssh.password','cachecloud','机器ssh密码',1,2);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.machine.ssh.port','22','机器ssh端口',1,3);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.admin.user.name','admin','cachecloud-admin用户名',1,4);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.admin.user.password','admin','cachelcoud-admin密码',1,5);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.superAdmin','admin,xx,yy','超级管理员组',1,6);
insert into system_config(config_key,config_value,info,status,order_id) values('machine.cpu.alert.ratio','80.0','机器cpu报警阀值',1,7);
insert into system_config(config_key,config_value,info,status,order_id) values('machine.mem.alert.ratio','80.0','机器内存报警阀值',1,8);
insert into system_config(config_key,config_value,info,status,order_id) values('machine.load.alert.ratio','8.0','机器负载报警阀值',1,9);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.documentUrl','http://cachecloud.github.io','文档地址',1,10);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.owner.email','xx@sohu.com,yy@qq.com','邮件报警(逗号隔开)',1,11);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.owner.phone','13812345678,13787654321','手机号报警(逗号隔开)',1,12);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.mavenWareHouse','http://your_maven_house','maven仓库地址(客户端)',1,13);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.contact','user1:(xx@zz.com, user1:135xxxxxxxx)<br/>user2: (user2@zz.com, user2:138xxxxxxxx)','值班联系人信息',1,14);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.good.client','1.0-SNAPSHOT','可用客户端版本(用逗号隔开)',1,15);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.warn.client','0.1','警告客户端版本(用逗号隔开)',1,16);
insert into system_config(config_key,config_value,info,status,order_id) values('cachecloud.error.client','0.0','不可用客户端版本(用逗号隔开)',1,17);