CacheCloud详解(一)----------CacheCloud搭建(Redis云平台)

    xiaoxiao2022-07-06  212

    目标:

    redis作为流行的缓存数据库,被众多企业使用,但是对于中小型企业来说,日益增多的redis服务器,如何管理是个问题。本系列文章就搜狐视频开源的CacheCloud云平台进行深入讲解。通过从安装到源码讲解,让你深入了解实现原理。

    CacheCloud可以做什么?

    cacheCloud提供一个Redis云管理平台:实现多种类型(Redis Standalone、Redis Sentinel、Redis Cluster)自动部署、解决Redis实例碎片化现象、提供完善统计、监控、运维功能、减少运维成本和误操作,提高机器的利用率,提供灵活的伸缩 性,提供方便的接入客户端。官方功能结构图如下:

    下载源代码:

    git clone https://github.com/sohutv/cachecloud

    cachecloud-open-client:客户端开发的sdk工具cachecloud-open-common:包含了一些工具类、枚举和共用组件(比如发送邮件、短信和用户登录等)cachecloud-open-web:cachecloud运维管理平台script:包含了数据库脚本、redis服务器初始化脚本和应用启动、停止、部署等脚本

    初始化数据库:

    数据库脚本cachecloud.sql位置:

    修改项目的数据库地址:

    local.properties:本地运行数据库配置online.properties:线上部署数据库配置 将cachecloud.db.url 、cachecloud.db.user、cachecloud.db.password 修改成自己的数据库参数

    启动CacheCloud服务:

    在项目根目录下运行:

    mvn clean compile install -Plocal

    -P:指定运行环境的数据库配置

    本地部署:

    在cachecloud-open-web目录下运行:

    mvn springboot:run

    线上部署:

    将 start.sh、deploy.sh、stop.sh、cachecloud-web.conf、cachecloud-open-web-1.0-SNAPSHOT.war通过xft工具上传到服务器的/opt/cachecloud-web目录下

    cachecloud-web.conf 位置:

    mkdir /opt/cachecloud-web cd /opt/cachecloud-web mkdir logs mv cachecloud-web.conf cachecloud-open-web-1.0-SNAPSHOT.conf sh start.sh

    注意(启动报错参考以下解决方式):

    cachecloud-web.conf的名称必须和项目的war包名称相同执行sh start.sh 可能会出现错误: start.sh: line 2: $’\r’: command not found,需要在编辑模式下执行set ff=unix命令,然后回车,最后:wq保存退出即可 如果是虚拟机需要修改start.sh中的JVM配置参数,设置JVM最大可用内存为512M,设置JVM启动时堆的初始化大小为512M:

    登录系统

    系统启动成功后,访问服务器地址,通过系统管理员账号登录(管理员账号/密码:admin/admin) 访问失败原因:

    防火墙原因:

    参考:防火墙问题解决方式

    登录成功后页面如下:

    初始化redis服务器:

    添加机器:

    将cachecloud-init.sh上传到redis服务器,然后使用root用户执行以下命令(cachecloud是用户名,你可以自己修改,但是要和管理平台的对应,用户密码同理):

    sh cachecloud-init.sh cahcecloud

    添加成功后页面:

    普通用户注册:

    普通用户注册后,管理员可以在流程审批模块进行审批

    redis申请与分配:

    用户申请: 用户申请redis以后,管理员在流程审批模块审批处理 点击审批处理,进入处理页面: 注意:

    部署之前要检查相应的端口是否打开,否则会部署失败

    部署成功后页面: 点击通过按钮,然后redis就分配成功了

    在申请者页面可以查看: 点击应用名,进入详细信息页面: 可以通过接入代码模块的示例进行客户端接入: 上面的maven 依赖是之前源码包里面的Client ,使用时需要上传到公司内部的私服。 这里面需要注意的是,需要修改Client 源码包中的CacheCloud的服务地址: 到此,CacheCloud 的 安装和使用就介绍完了。

    最新回复(0)