在ES集群种,snapshot作为一种简单而且能够满足自动化的备份方式,通过定义SLM(快照生命周期)来实现一个自动备份的操作。且通过设置还可以管理快照的保存删除之类的操作,可以说极大的节省了运维人员的工作成本。

cron表达式

 <seconds> <minutes> <hours> <day_of_month> <month> <day_of_week> [year]

所有计划均以世界时(UTC)为准,不支持其他时区。

corn表达原件

除year以外,其他所有元素都是必需的。

元素 性质 有效值
<seconds> 必填 0-59和特殊字符, - * /
<minutes> 必填 0-59和特殊字符, - * /
<hours> 必填 0-23和特殊字符, - * /
<day_of_month> 必填 1-31和特殊字符, - * / ? L W
<month> 必填 1- 12JAN- DECjan-dec和特殊字符, - * /
<day_of_week> 必填 1- 7SUN- SATsun-sat和特殊字符, - * / ? L #
<year> 可选 1970-2099和特殊字符, - * /

cron特殊字符

特殊字符 具体使用方法
* 选择一个字段的每个可能的值。例如,*在该hours字段中表示“每小时”。
没有具体值。当您不在乎值是什么时使用。例如,如果您希望计划在每月的特定日期触发,但不在乎星期几,则可以?day_of_week字段中指定。
- 值的范围(含)。用于分隔最小值和最大值。例如,如果您希望时间表在上午9:00和下午5:00之间每小时触发一次,则可以9-17hours字段中指定。
多个值。用于分隔字段的多个值。例如,如果您希望时间表在每个星期二和星期四触发,则可以TUE,THUday_of_week字段中指定。
/ 增量。指定时间增量时用于分隔值。第一个值代表起点,第二个值代表间隔。例如,如果您希望时间表从小时的顶部开始每20分钟触发一次,则可以0/20minutes字段中指定。同样,从该月的第一天开始,1/5day_of_month字段中指定将每5天触发一次。
L 最后的。在day_of_month字段中使用表示月份的最后一天-非-年的1月31日,2月的28日,4月的30日,依此类推。在day_of_week字段中单独使用代替7SAT,或在一周中的特定日期之后选择该类型在月中的最后一天。例如,6L表示月份的最后一个星期五。您可以LWday_of_month 字段中指定以指定该月的最后一个工作日。L在指定值列表或值范围时避免使用该选项,因为结果可能不会达到您的期望。
W 平日 用于指定最接近给定日期的工作日(星期一至星期五)。例如,如果您15Wday_of_month字段中指定, 而15号是星期六,那么时间表将在14号触发。如果15日是星期日,则时间表将在16日星期一触发。如果15日是星期二,则时间表将在15日星期二触发。但是,如果您将1W的值指定为day_of_month且第1个是星期六,则计划将在第3个星期一触发-它不会跳过月份边界。您可以LWday_of_month字段中指定以指定该月的最后一个工作日。您只能在W当天day_of_month是一天时使用该选项-在指定日期范围或日期列表时无效。
# 一个月中的第N个XXX天。在day_of_week字段中使用以指定每月的第XXX天。例如,如果指定6#1,则计划将在该月的第一个星期五触发。请注意,如果您指定3#5并且特定月份中没有5个星期二,则计划不会触发该月份。

例子

设置每日触发
0 5 9 \* \* ?                 每天在世界标准时间上午9:05触发。
0 5 9 \* \* ? 2020            2020年期间,每天在世界标准时间上午9:05触发。
将触发器限制在几天或者时间范围内
0 5 9 ? * MON-FRI             星期一至星期五,世界标准时间上午9:05触发。
0 0-5 9 * * ?                 从UTC上午9:00开始到UTC每天9:05结束,每分钟触发一次。
设置间隔触发
0 0/15 9 * * ?                从UTC上午9:00开始到UTC每天9:45结束,每15分钟触发一次。
0 5 9 1/3 * ?                 从每月的第一天开始,每月每3天在UTC上午9:05触发。
设置在特定的日期触发
0 1 4 1 4 ?                   在每年世界标准时间4月1日凌晨4:01触发。
0 0,30 9 ? 4 WED              4月的每个星期三,在UTC上午9:00和UTC上午9:30触发。
0 5 9 15 * ?                  在每个月的15日(世界标准时间)上午9:05触发。
0 5 9 15W * ?                 在每个月15日最近的工作日(世界标准时间)上午9:05触发。
0 5 9 ? * 6#1                 在每个月的第一个星期五上午9:05触发。
使用last设置触发器
0 5 9 L * ?                   在每个月的最后一天上午9:05在世界标准时间触发。
0 5 9 ? * 2L                  在每个月的最后一个星期一的UTC上午9:05触发。
0 5 9 LW * ?                  在每个月的最后一个工作日世界标准时间上午9:05触发。

最后附一个关于设置SLM策略的方法给大家一个例子,仅供参考

[root@localhost ~]# curl -X PUT "192.168.159.128:9201/_slm/policy/backup-snapshots?pretty" -H 'Content-Type: application/json' -d'
{"schedule": "0 0 0 ? * 2",        #备份的时间"name": "<backup-snap-{now/d}>",  #快照的名称格式"repository": "back",             #备份的repository"config": { "indices": ["*"]                #备份的索引},"retention": { "expire_after": "14d",          #快照存储的天数"min_count": 3,                 #最少存多少快照"max_count": 5                  #最多存多少快照}
}
'

参考链接:

https://www.elastic.co/guide/en/elasticsearch/reference/current/cron-expressions.html#cron-special-characters

es备份之snapshot SLM策略cron详解相关推荐

  1. 从java多态到策略模式_设计模式中的多态——策略模式详解

    2. 策略模式详解 2.1 策略模式定义 策略模式定义了一系列算法,并将每一个算法封装起来,而且使它们还可以相互替换.策略模式让算法独立于使用它的客户端而独立的变化. 可以使用多态进行类比来理解策略模 ...

  2. Android VCard联系人备份恢复(导入/导出)详解

    原文地址为: Android VCard联系人备份恢复(导入/导出)详解 首先我们简单的看下在Android中联系人的存储结构. 工作环境:android 2.3.3 联系人的主要数据存放在raw_c ...

  3. mysql数据类型设计说明_MySQL的数据类型和建库策略分析详解

    MySQL的数据类型和建库策略分析详解 更新时间:2008年04月06日 01:16:47   作者: 无论是在小得可怜的免费数据库空间或是大型电子商务网站,合理的设计表结构.充分利用空间是十分必要的 ...

  4. 设计模式之策略模式详解

    设计模式之策略模式详解 概述 先看下面的图片,我们去旅游选择出行模式有很多种,可以骑自行车.可以坐汽车.可以坐火车.可以坐飞机. 作为一个程序猿,开发需要选择一款开发工具,当然可以进行代码开发的工具有 ...

  5. Policy gradient(策略梯度详解)

    文章目录 策略梯度基本知识 什么是策略梯度? 强化学习案例 策略梯度公式详解 如何使你的损失函数更好 增加一个基准 为每一个action分配不同的权重 策略梯度基本知识 什么是策略梯度? 直接根据状态 ...

  6. SAP ERP系统PP模块计划策略2050详解

    SAP/ERP系统中面向订单生产的计划策略主要有20和50两个策略,这两个策略都是面向订单生产的计划策略,也是离散制造行业应用比较广泛的策略.它们之间最大差异就是在于20策略完全是由订单驱动,而50策 ...

  7. Linux-6.5下 MariaDB-10基于percona-XtraBackup备份工具的原理及配置详解

    理解部分(及原理部分): XtraBackup是percona公司提供的开源工具,以热备Innodb表著称而被广泛采用. XtraBackup对Innodb的备份之所以是热备,无需锁表,是基于Inno ...

  8. mysql zrm 配置_利用MySQL-zrm来备份和恢复MySQL数据库方法详解

    MySQL ZRM 工具是用PERL写的可以全部和增量备份MySQL数据库的一个强大工具. 还可以做快照,不过我现在没有条件做.等以后有可以做了再补上. 其实具体要说的也没啥,我只是做了点测试. 这里 ...

  9. nsga2多目标优化之核心知识点(快速非支配排序、拥挤距离、精英选择策略)详解(python实现)

    文章目录 一.多目标优化算法简介 1.基本知识 二.NSGA2算法 1.基本原理 2.快速非支配排序 2.1快速非支配排序 python实现 3.拥挤距离 3.1 拥挤距离python 实现 4.精英 ...

最新文章

  1. 解决github push错误403 Forbidden while accessing
  2. js弹出一段html,html js 弹出层
  3. TCGAbiolinks包下载TCGA数据
  4. 软件工程概论 课堂练习 第2次作业3【酒店预订】
  5. 如何查找SAP Cloud for Customer UI页面对应的技术模型明细
  6. 手动 clone 安装 Homebrew
  7. STM8L芯片启动时钟分频问题及发现(转)
  8. 前端学习(1260):promise中的常见api对象方法
  9. UI设计师应该知道的,APP设计师的辅助小工具网站集合导航
  10. 60页5G+智慧农业大数据 2022
  11. 2016 CCPC东北赛区 简单三少(proA+proC+proE)
  12. “百花齐放”电商时代,网易七鱼打造专业电商客服
  13. h5画三角形_H5如何在网页中绘制三角形,值得一看
  14. 基于RSA的数字签名设计与实现
  15. 数据结构—— 一元多项式的运算(相加,相减,相乘)【C语言实现】
  16. summernote图片上传
  17. POP3 SMTP邮件服务器搭建详细图解教程1
  18. springboot中使用jetty服务器
  19. 视频去除水印、台标和logo,并重新在生成新的视频
  20. 电脑出现DuiLib资源加载失败的解决办法

热门文章

  1. 关于js的回调函数,同步回调与异步回调
  2. App推广技术如何帮助App推广
  3. 汇编语言实验5:循环结构程序设计
  4. 新概念英语学习方法--摘自net130
  5. 一文读懂NLP之隐马尔科夫模型(HMM)详解加python实现
  6. 三维点云到人体重建(七)
  7. 转:如何选择 Excel 中的数据列,然后将数据粘贴到文本文件中?
  8. (转载)WPARAM与LPARAM
  9. 业务流程图 vs 数据流程图
  10. CNS文章代码学习(一)Immunity 三级淋巴结构