cronicle 后端存储是可配置的 ,通过使用不同的存储配置,我们可以解决多实例部署以及数据共享的问题
cronicle 的后端存储模型,设计的特别方便,包含了基于文件的,基于s3 的,同时我们也可以开发自己的
存储引擎

以下是一个集成minio s3 部署单master,多slave 实际上我们可以扩展为多master

环境准备

  • docker-compose 文件
 
version: "3"
services:  
  s3:
      image: minio/minio
      command: server /data
      ports: 
      - "9000:9000"
      environment:
      - "MINIO_ACCESS_KEY=dalongapp"
      - "MINIO_SECRET_KEY=dalongapp"
      volumes: 
      - "./data:/data" 
  cronicle:
      build: ./
      hostname: master
      image: dalongrong/cronicle
      volumes:
      - "./config.json:/opt/cronicle/conf/config.json"
      ports:
      - "3012:3012"
  cronicle2:
      build: ./
      hostname: cronicle2
      image: dalongrong/cronicle
      volumes:
      - "./config.json:/opt/cronicle/conf/config.json"
      ports:
      - "3013:3012"
  cronicle3:
      build: ./
      hostname: cronicle3
      image: dalongrong/cronicle
      volumes:
      - "./config.json:/opt/cronicle/conf/config.json"
      ports:
      - "3014:3012"
  • cronicle dockerfile
    添加了aws sdk
 
FROM node:12.10.0-stretch-slim
LABEL AUTHOR="rongfengliang"
LABEL EMAIL="1141591465@qq.com"
RUN npm config set registry https://registry.npm.taobao.org
RUN curl -s https://raw.githubusercontent.com/jhuckaby/Cronicle/master/bin/install.js | node
RUN cd /opt/cronicle && npm install aws-sdk
EXPOSE 3012
ENTRYPOINT ["tail", "-f", "/dev/null"]
 
  • 存储配置
    config.json ,以下截取部分关于存储的配置
 
"Storage": {
    "engine": "S3",
    "AWS": {
      "accessKeyId": "dalongapp", 
      "secretAccessKey": "dalongapp", 
      "region": "us-east-1",
      "correctClockSkew": true,
      "endpoint": "s3:9000",
      "sslEnabled": false,
      "s3ForcePathStyle": true,
      "maxRetries": 5,
      "httpOptions": {
        "connectTimeout": 5000,
        "timeout": 5000
      }
    },
    "S3": {
      "keyPrefix": "cronicle",
      "fileExtensions": true,
      "params": {
        "Bucket": "cronicle"
      }
    }
  }

启动&&运行

  • 启动
docker-compose up -d
  • 创建s3桶
    通过UI
  • 启动master
docker-compose exec cronicle /opt/cronicle/bin/control.sh setup
docker-compose exec cronicle /opt/cronicle/bin/control.sh start
  • s3 内容

  • 启动slave
docker-compose exec cronicle2 /opt/cronicle/bin/control.sh start
docker-compose exec cronicle3 /opt/cronicle/bin/control.sh start
  • 添加slave 节点

  • 配置一个简单的调度任务

  • 执行调度效果

说明

以上是一个简单的基于minio s3 实现的配置共享,实际上基于s3 我们可以配置cronicle 的多master

参考资料

https://github.com/jhuckaby/Cronicle
https://github.com/awsdocs/aws-doc-sdk-examples/blob/master/javascript/example_code/s3/s3_setcors.js
https://github.com/rongfengliang/cronicle-docker

cronicle minio s3 存储配置集成的更多相关文章

  1. k8s helm 私服chartmuseum minio s3 存储配置

    1. 安装minio 使用docker 安装 参考项目 https://github.com/rongfengliang/mino-thumbor-openresty 备注: 因为是一个集成项目可能会 ...

  2. streamsets 集成 minio s3测试

    具体streamsets crate 集成可以参考 streamsets crate 以下文档只关注minio 集成的配置 minio 服务 搭建 具体搭建参考: https://www.cnblog ...

  3. 使用s3-sftp-proxy 暴露minio s3 数据为sftp 访问

    尽管s3 很不错,但是ftp 也有自己存在的价值,以下是一个简单的通过s3-sftp-proxy 暴露minio s3 数据为ftp 的访问方式 环境准备 docker-compose 文件 vers ...

  4. nexus && minio s3 存储私有镜像

    对于新版本的nexus 已经支持s3 存储了(3.12),但是企业内部可能还是需要使用私有部署的 还好我们有minio,具体的介绍就不说了 minio 项目运行 参考项目: https://githu ...

  5. 使用s3fs-fuse 挂载minio s3 对象存储

    minio 是一个aws s3 兼容的对象存储系统,我们可以通过s3fs 进行数据桶的挂载,这样可以做好多方便的事情 环境准备 使用docker-compose 运行 minio docker-com ...

  6. 云原生分布式文件存储 MinIO 教程

    文章转载自:https://mp.weixin.qq.com/s/_52kZ5jil1Cec98P5oozoA MinIO 提供开源.高性能.兼容 s3 的对象存储,为每个公共云.每个 Kuberne ...

  7. 使用k8s && minio 进行 postgres 数据库自动备份

      通过k8s 的定时任务job,我们可以方便的进行定时任务应用的开发,通过minio s3 兼容的cloud native 存储 我们可以方便的通过http 请求进行数据文件的备份,以下简单演示下如 ...

  8. minio select api 试用

    对于minio 我们可以使用基于sql 的对象内容查询,特别适合进行特定文件内容的获取,强大方便. 以下是一个简单的试用 环境准备 集成了prometheus docker-compose 文件   ...

  9. Github 29K Star的开源对象存储方案——Minio入门宝典

    对象存储不是什么新技术了,但是从来都没有被替代掉.为什么?在这个大数据发展迅速地时代,数据已经不单单是简单的文本数据了,每天有大量的图片,视频数据产生,在短视频火爆的今天,这个数量还在增加.有数据表明 ...

随机推荐

  1. In-Memory:哈希索引

    SQL Server 2016支持哈希查找,用户可以在内存优化表(Memory-Optimized Table)上创建哈希索引(Hash Index),使用Hash 查找算法,实现数据的极速查找.在使 ...

  2. Wamp Https 的 SSL认证 配置说明

    Wamp Https 的 SSL认证 配置说明版本 Apache2.2.11注:右下角图标的 重启 不能有效加载 配置文件 应退出后重新运行注:C:\wamp\bin\apache\Apache2.2 ...

  3. Linux学习笔记之Centos7 自定义systemctl服务脚本

    0x00 概述 之前工作环境一直使用Centos6版本,脚本一直在使用/etc/init.d/xxx:系统升级到Cento7后,虽然之前的启动脚本也可以使用,但一直没有使用systemctl 的自定义 ...

  4. 关于Svn服务总是链接异常

    之前一直在使用,本机电脑也没有修改网络环境却一直无法链接svn. 每次剪切代码都提示: ping服务ip可以ping通,域名却总是不通. 百度结果各种clear缓存,还不行 结果使用 在本地C:\Wi ...

  5. EntityFramework执行Add-Miragtion或者Update-Database出闲ScriptHalted

    今天基友在他本机运行我的项目,执行ef还原数据的时候,一直出现ScriptHalted的错误. 找了下百度,只找到一个stackoverflowd的答案,没有看到中文的解决方案. 现在总结一下,并给出 ...

  6. byte[],File和InputStream的相互转换

    File.FileInputStream 转换为byte[] File file = new File("test.txt"); InputStream input = new F ...

  7. springboot+MessageSource实现国际化

    1.springboot自带,不需要引入任何依赖 2.在resource下建立:i18n/messages.properties 3.在application.yml增加以下内容 spring: ap ...

  8. 搭建idea出现无法自动映射Mapper问题

    org.apache.ibatis.binding.BindingException: Invalid bound statement (not found) 如出这种问题,导致的原因是mapp.xm ...

  9. TensorFlow NMT的数据处理过程

    在tensorflow/nmt项目中,训练数据和推断数据的输入使用了新的Dataset API,应该是tensorflow 1.2之后引入的API,方便数据的操作.如果你还在使用老的Queue和Coo ...

  10. golang测试

    简述 Go语言中自带有一个轻量级的测试框架testing和自带的go test命令来实现单元测试和性能测试. go test [-c] [-i] [build flags] [packages] [f ...