saltstack之定时管理】的更多相关文章

1.设置定时任务 /srv/salt/cron/ntpdate.sls /usr/sbin/ntpdate 10.31.10.3; /sbin/hwclock -w: cron.present: - identifier: SUPERCRON - user: root - minute: '*/15' - hour: 2 在命令行执行如下 salt 'test82.salt.cn' state.sls cron.ntpdate 2.删除定时任务 /srv/salt/cron/updatedel.…
入住博客园4年多了,一直都是看别人的博客,学习别人的知识,为各个默默无私贡献自己技术总结的朋友们顶一个:这几天突然觉得是时候加入该队列中,贡献出自己微弱的力量,努力做到每个月有不同学习总结,知识学习的分享文章.以下要分享的是花了两天时间编写+测试的windows下C#定时管理器框架-Task.MainForm.目的: 随着这五年在几个公司做不同职位的.net研发者,发现各个公司都或多或少会对接一些第三方合作的接口或者数据抓取功能,都是那种各个服务直接没有关联性功能,开发人员也可能不是一个人,使得…
代码地址如下:http://www.demodashi.com/demo/13978.html 使用背景 相信大家在工作过程中,肯定会遇到很多任务定时执行,修改定时任务的时间,执行一次定时任务等等.下面我就通过案例来帮大家解决这些问题! 下面的案例是结合SpringMVC Web工程来说的. 当然任何类型的工程都可以使用Quartz来实现定时任务的管理. 准备工作 开发环境: jdk Intellij IDEA 2018.1 google chrome 运行环境: tomcat8/tomcat9…
一.saltstack的状态管理 状态管理官网: https://www.unixhot.com/docs/saltstack/ref/states/all/index.html 1)状态分析 [root@k8s6 ~]# cat /srv/salt/web/apache.sls apache-install: pkg.installed: - names: - httpd - httpd-devel apache-service: # 名称ID声明 ID必须唯一 service.running…
学习saltstack 服务器批量管理 1.saltstack 简介 SaltStack是一个开源的.新的基础平台管理工具,使用Python语言开发,同时提供Rest API方便二次开发以及和其他运维管理系统进行集成.相对于出道比较早的Puppet,SaltStack先天的优势就是简单.易用,可以非常快速的在团队中推广和使用,而且运行多平台. SaltStack目前拥有四大主要功能 远程执行:就是在管理节点上实现在上百台.上千台机器上同时执行一个命令. 配置管理:也可以称之为状态管理,你可以描述…
Saltstack的简介 SaltStack(http://www.saltstack.com/)是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet(http://puppetlabs.com/)和加强版的func(https://fedorahosted.org/func/) Ansible. SaltStack基于Python语言实现,结合轻量级消息队列(ZeroMQ)与Python第三方模块(Pyzmq.PyCrypto.Pyjinj…
Master(监控端): Minion(被监控端) 监控: /etc/master: #interface:监控端地址 #自动接受被监控端证书 #saltstack文件根目录位置 #启动监控 被监控: #监控端地址 /etc/minion: #启动被监控 #秘钥验证列出 #ping测试 #运行minion命令 #列出模块…
1.添加用户 /srv/salt/top.sls base: 'test82.salt.cn': - user.useradd /srv/salt/user/useradd.sls jim: user.present: - fullname: jim - shell: /bin/bash - password: '$6$hyxchyxc$r2R3uQcnhIl8QSg7WrmojiJqRhD0s6KVYGvXZCswGwW9GDeLF4mhdQJ/Pq8ccWkdzkyYSpxnGqxciMJ5…
/* * jf_timer.h * * Created on: Aug 20, 2016 * Author: lort */ #ifndef JF_OS_JF_TIMER_H_ #define JF_OS_JF_TIMER_H_ #include "jf_types.h" typedef void (*time_fuc_t) (void *param); typedef struct { void *next; uint32 decounter; uint32 reroad; time…
一.创建定时任务 crontab: #脚本脚识 cron.present: #模板:cron 计划任务 功能:present - name: /usr/sbin/ntpdate times.aliyun.com >> /dev/null #需要追回的内容 - user: root #添加到root的计划列表 - minute: '*/5' #每五分钟执行一次上面的-name命令 时间参数如下: 分钟:minute 时钟:hour 日期:daymonth 月:month 周:dayweek #示…
1.启动服务 /srv/salt/service/nfs.sls rpcbind: service.running: - enable: True #开机自动启动 # - enable: False nfs: service.running: - enable: True - require: - service: rpcbind 在命令行执行如下 salt 'test82.salt.cn' state.sls service.nfs 或命令行直接执行如下 salt 'test82.salt.c…
1.installed安装软件包 例: 安装NFS /srv/salt/pkg/nfs.sls nfs: pkg.installed: - pkgs: - nfs-utils 在命令行执行如下 salt 'test82.salt.cn' state.sls pkg.nfs 或直接在命令行执行如下 salt '*' pkg.install nfs-utils 2.removed删除软件包 例: 删除NFS /srv/salt/pkg/nfs.sls nfs: # pkg.installed: pk…
1.安装与启动 yum install salt-master -y 安装服务端 chkconfig salt-master on 自启动 service salt-master start 启动 yum install salt-minion -y 安装客户端 chkconfig salt-minion on 自启动 service salt-minion start 启动 最好修改 /etc/host 和 /etc/sysconfig/network 统一主机名 2.设置防火墙 # ipta…
一,YAML语法 首先先了解一下YAML,默认的SLS文件的renderer是YAML renderer.YAML是一个有很多强大特性的标记性语言.Salt使用了一个YAML的小型子集,映射非常常用的数据结构,像列表和字典.YAML renderer的工作是将YAML数据格式的结构编译成为Python数据结构给Salt使用. YAML语法有三个注意事项,具体如下: 1,使用空白字符为文件缩排表示结构,不过不能使用TAB 2,注释用#号 3,字符串平常不使用引号,如果有需要,可以使用单引号或双引号…
Job管理 本章节参考<SaltStack技术入门与实践>,感谢该书作者: 刘继伟.沈灿.赵舜东 在SaltStack里面执行任何一个操作都会在Master上产生一个jid号.Minion端会在cache目录下的proc目录创建一个jid为名称的文件,这个文件里面的内容就是此次操作的记录,当操作处理完成后该文件会自动删除.而Master端会记录每次操作的详细信息,这个记录都是存到在Master端cache目录下jobs下.下面通过实例来了解日常job管理. 目前SaltStack提供两种方式来…
前四章介绍了系统层的设计,从这一章开始进入服务层的设计. 连接断开 在常见的服务器场景中,客户端断开连接的方式为被动关闭.即作为客户端请求完服务器的服务后,选择主动关闭同服务器的连接.在服务器的角度看,服务器是客户端连接套接字read系统调用返回0,触发关闭逻辑,服务器本地是被动关闭连接的. 但是在某些场景中,客户端虽然已经实际断开了与服务器的连接,但是服务器并不能及时检测出此时维护的连接已经断开的情景.在这种情况下,由于被动关闭的缘故,服务器并不会主动释放与该连接有关的资源.这些不能被释放的资…
最近公司为了上一个活动功能,增加了40台服务器,虽然服务器可以通过saltstack 来统一管理(自动化运维工具 SaltStack 搭建),项目可以通过jenkins + saltstack统一发布(利用jenkins+saltstack+sh部署项目到多台服务器),但是在此之前需要把这40台服务器的saltstack配置文件给改掉啊,总不能一台台服务器手动去处理吧(好吧写这篇文章之前捣鼓半天,真的是手动去修改的,坑啊) 因为已经添加好了公钥 所以可以直接免密码登录 #!/bin/sh ip=…
1.有时候在项目中需要定时启动某个任务,对于这个需求,基于JavaEE规范,我们可以使用Listener与TimerTask来实现,代码如下: public class TestTaskListener implements ServletContextListener { //Context()初始化方法 @Override public void contextInitialized(ServletContextEvent sce) { //新建一个定时管理器 new TestTimerMa…
时隔多日,好不容易挤出点时间来写写博文.不容易,请送我几朵红花,点个赞也行. 今天呢,我们主要来扩展下通用工具类==>定时触发器. 顾名思义,所谓的定时触发器,就是告诉程序在过多长时间后,我要执行某个特定的任务. 比如举个小栗子: 电饭煲,相信大家都用过,当我们出去工作或者上学的时候,我们只要设置下煮饭时间,就可以安心的离开. 电饭煲会自动的开始计时工作,等到了你设置的时间后,他就会自动的开始煮饭啊什么的.而你却可以在远在千里的上班. 智能化,对就是这样的效果.我们今天就来写写这个智能的小东西.…
Stalstack 连接管理配置 注:master端,minion端,配置完成.   Saltstack master 测试管理端minion链接状态. salt-key Accepted Keys:Denied Keys: Unaccepted Keys: Stest1 Stest2 Rejected Keys:   Saltstack master 设置允许管理所有minion salt-key -A The following keys are going to be accepted:U…
一.安装golang 1.apt-get安装golang $ sudo apt-get update $ sudo apt-get install -y golang 2.创建Go语言的工作文件夹,并添加到环境变量中 $ sudo mkdir -p /opt/go # 添加环境变量 $ vim ~/.bashrc export GOPATH=$HOME/go # 使配置立刻生效 $ source ~/.bashrc 3.创建测试环境,并测试golang程序 $ vim hello.go pack…
1.Quartz.NET介绍 Quartz.NET是一个强大.开源.轻量的作业调度框架,你能够用它来为执行一个作业而创建简单的或复杂的作业调度.它有很多特征,如:数据库支持,集群,插件,支持cron-like表达式等等.非常适合在平时的工作中,定时轮询数据库同步,定时邮件通知,定时处理数据等. Quartz.NET允许开发人员根据时间间隔(或天)来调度作业.它实现了作业和触发器的多对多关系,还能把多个作业与不同的触发器关联.整合了 Quartz.NET的应用程序可以重用来自不同事件的作业,还可以…
ssh 免密码 批量管理1.创建用户useradd user1echo “123456”| passwd --stdin user12.创建秘钥ssh-keygen -t dsa然后一直回车 非交互式(批量)创建秘钥 3.上传公钥(其他服务器也需要有同样用户)ssh-cppy-id -i ~/.ssh/id_dsa.pub user1@IP 如果端口改变的话 4.可以直接写脚本执行(非交互式)例:直接在后面加命令 5.ssh 常用选项用法-l 指定登入用户-p 设置端口号(scp时需要大写P)-…
问题背景:搭建一个多节点后端集群,使用saltstack作为底层管理,使用Python封装saltstack接口成逻辑层.通过逻辑层的调用实现对整个集群的运维管理. 问题:随着项目中模块的增多,发现saltstack并不能很好的满足集群管理功能.原因就是saltAPI的返回值不一定正确.简单的来讲,salt每一个接口(以下所有的saltAPI均指salt同步接口)调用时都会产生一个job,当job在5s(默认参数)内没有返回时候,会产生一个fetch-job去查找执行的job,每10s检测一次,…
文章转载自:https://mp.weixin.qq.com/s/PSfgPJc4dKN2pOZd0Y02wA 1.Elasticsearch 保证高可用性的方式 Elasticsearch 保证集群高可用的方式包含但不限于如下三种: 方式一:副本分片.主分片失效后,副本分片会被提升为主分片. 方式二:跨集群复制主从同步.简称:CCR,指的是索引数据从一个 Elasticsearch 集群复制到另一个 Elasticsearch 集群.对于主集群的索引数据的任何修改都会直接复制同步到从索引集群.…
一.  Ansible 介绍Ansible是一个配置管理系统configuration management system, python 语言是运维人员必须会的语言, ansible 是一个基于python 开发的(集合了众多运维工具 puppet.cfengine.chef.func.fabric的优点)自动化运维工具, 其功能实现基于ssh远程连接服务, ansible 可以实现批量系统配置,批量软件部署,批量文件拷贝,批量运行命令等功能, 除了ansible之外,还有saltstack…
一.  Ansible 介绍Ansible是一个配置管理系统configuration management system, python 语言是运维人员必须会的语言, ansible 是一个基于python 开发的自动化运维工具, 其功能实现基于ssh远程连接服务, ansible 可以实现批量系统配置,批量软件部署,批量文件拷贝,批量运行命令等功能, 除了ansible之外,还有saltstack 等批量管理软件. Ansible能做什么? ansible可以帮助运维人员完成一些批量任务,或…
1. Oozie简介 Yahoo开发工作流引擎Oozie(驭象者),用于管理Hadoop任务(支持MapReduce.Spark.Pig.Hive),把这些任务以DAG(有向无环图)方式串接起来.Oozie任务流包括:coordinator.workflow:workflow描述任务执行顺序的DAG,而coordinator则用于定时任务触发,相当于workflow的定时管理器,其触发条件包括两类: 数据文件生成 时间条件 Oozie定义了一种基于XML的hPDL (Hadoop Process…
Android是一个基于Linux的开源操作系统.x86(x86是一系列的基于intel 8086 CPU的计算机微处理器指令集架构)是linux内核部署最常见的系统.然而,所有的Android设备都是运行在ARM处理器(ARM 源自进阶精简指令集机器,源自ARM架构)上,除了英特尔的Xolo设备(http://xolo.in/xolo-x900-features).Xolo来源自凌动1.6GHz x86处理器.Android设备或者嵌入设备或者基于linux的ARM设备的启动过程与桌面版本相比…
    IP端口-协议等基本概念 互联网上的计算机,都会有一个唯一的32位的地址,IP地址. 我们访问服务器.就必须通过这个IP地址. 局域网也有预留的IP地址 192/10/172开头.局域网的 IP地址也是唯一的. NAT模式,电脑属主机的IP在局域网是唯一的 ,选择了NAT模式创建虚拟机,虚拟机就是一个新的局域网(私有网络). 老师的机器IP 192.168.33.128 端口的简单概念 192.168.33.128代表一台主机,但是主机上可能会有很多服务. 一台主机上的不同服务功能,就是…