use of com.sohu.cache.constant.AppDataMigrateResult in project cachecloud by sohutv.
the class AppDataMigrateCenterTest method testCheckMigrateMachine.
@Test
public void testCheckMigrateMachine() {
// 1.机器是否在列表里(已测)
// 2.是否正确安装redis-migrate-tool(已测)
// 3.是否存在正在执行的redis-migrate-tool(已测)
String migrateMachineIp = "127.0.0.1";
AppDataMigrateEnum sourceRedisMigrateEnum = AppDataMigrateEnum.REDIS_NODE;
String sourceServers = "127.0.0.1:6379";
AppDataMigrateEnum targetRedisMigrateEnum = AppDataMigrateEnum.REDIS_CLUSTER_NODE;
String targetServers = "127.0.0.1:6380";
AppDataMigrateResult redisMigrateResult = appDataMigrateCenter.check(migrateMachineIp, sourceRedisMigrateEnum, sourceServers, targetRedisMigrateEnum, targetServers, REDIS_SOURCE_PASS, REDIS_TARGET_PASS);
logger.info("===============testCheck start=================");
logger.info(redisMigrateResult.toString());
logger.info("===============testCheck end=================");
}
use of com.sohu.cache.constant.AppDataMigrateResult in project cachecloud by sohutv.
the class AppDataMigrateCenterTest method testCheckServers.
@Test
public void testCheckServers() {
// 1. 实例列表格式问题(已测)
// 2.1 rdb文件是否存在(已测)
// 2.2 redis节点是否存活
String migrateMachineIp = "127.0.0.1";
// RedisMigrateEnum sourceRedisMigrateEnum =
// RedisMigrateEnum.REDIS_NODE;
// String sourceServers = "127.0.0.1:6388";
AppDataMigrateEnum sourceRedisMigrateEnum = AppDataMigrateEnum.RDB_FILE;
String sourceServers = "/opt/soft/redis/data/dump-6380.rdb";
AppDataMigrateEnum targetRedisMigrateEnum = AppDataMigrateEnum.REDIS_CLUSTER_NODE;
String targetServers = "127.0.0.1:6380";
AppDataMigrateResult redisMigrateResult = appDataMigrateCenter.check(migrateMachineIp, sourceRedisMigrateEnum, sourceServers, targetRedisMigrateEnum, targetServers, REDIS_SOURCE_PASS, REDIS_TARGET_PASS);
logger.info("===============testCheck start=================");
logger.info(redisMigrateResult.toString());
logger.info("===============testCheck end=================");
}
use of com.sohu.cache.constant.AppDataMigrateResult in project cachecloud by sohutv.
the class AppDataMigrateController method check.
/**
* 检查配置
* @return
*/
@RequestMapping(value = "/check")
public ModelAndView check(HttpServletRequest request, HttpServletResponse response, Model model) {
//相关参数
String migrateMachineIp = request.getParameter("migrateMachineIp");
String sourceRedisMigrateIndex = request.getParameter("sourceRedisMigrateIndex");
AppDataMigrateEnum sourceRedisMigrateEnum = AppDataMigrateEnum.getByIndex(NumberUtils.toInt(sourceRedisMigrateIndex, -1));
String sourceServers = request.getParameter("sourceServers");
String targetRedisMigrateIndex = request.getParameter("targetRedisMigrateIndex");
AppDataMigrateEnum targetRedisMigrateEnum = AppDataMigrateEnum.getByIndex(NumberUtils.toInt(targetRedisMigrateIndex, -1));
String targetServers = request.getParameter("targetServers");
String redisSourcePass = request.getParameter("redisSourcePass");
String redisTargetPass = request.getParameter("redisTargetPass");
//检查返回结果
AppDataMigrateResult redisMigrateResult = appDataMigrateCenter.check(migrateMachineIp, sourceRedisMigrateEnum, sourceServers, targetRedisMigrateEnum, targetServers, redisSourcePass, redisTargetPass);
model.addAttribute("status", redisMigrateResult.getStatus());
model.addAttribute("message", redisMigrateResult.getMessage());
return new ModelAndView("");
}
use of com.sohu.cache.constant.AppDataMigrateResult in project cachecloud by sohutv.
the class AppDataMigrateController method stop.
/**
* 停掉迁移任务
* @return
*/
@RequestMapping(value = "/stop")
public ModelAndView stop(HttpServletRequest request, HttpServletResponse response, Model model) {
//任务id:查到任务相关信息
long id = NumberUtils.toLong(request.getParameter("id"));
AppDataMigrateResult stopMigrateResult = appDataMigrateCenter.stopMigrate(id);
model.addAttribute("status", stopMigrateResult.getStatus());
model.addAttribute("message", stopMigrateResult.getMessage());
return new ModelAndView("");
}
use of com.sohu.cache.constant.AppDataMigrateResult in project cachecloud by sohutv.
the class AppDataMigrateCenterImpl method check.
@Override
public AppDataMigrateResult check(String migrateMachineIp, AppDataMigrateEnum sourceRedisMigrateEnum, String sourceServers, AppDataMigrateEnum targetRedisMigrateEnum, String targetServers, String redisSourcePass, String redisTargetPass) {
// 1. 检查migrateMachineIp是否安装
AppDataMigrateResult migrateMachineResult = checkMigrateMachine(migrateMachineIp);
if (!migrateMachineResult.isSuccess()) {
return migrateMachineResult;
}
// 2. 检查源配置
AppDataMigrateResult sourceResult = checkMigrateConfig(migrateMachineIp, sourceRedisMigrateEnum, sourceServers, redisSourcePass, true);
if (!sourceResult.isSuccess()) {
return sourceResult;
}
// 3. 检查目标
AppDataMigrateResult targetResult = checkMigrateConfig(migrateMachineIp, targetRedisMigrateEnum, targetServers, redisTargetPass, false);
if (!targetResult.isSuccess()) {
return targetResult;
}
return AppDataMigrateResult.success();
}
Aggregations