2020-05-21 13:16:09 +08:00

418 lines
15 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en" dir=>
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta name="description" content="前端控制台允许开发者可视化地进行任务增、删、改、查等管理操作,同时也能直观地看到任务的运行数据,包括运行状态、详情和在线日志等。以下为对控制台的详细介绍: 主页 展示了系统整体的概览和集群Worker列表。
任务创建 创建需要被调度执行的任务,入口为主页 -&gt; 任务管理 -&gt; 新建任务。
任务名称:名称,便于记忆与搜索,无特殊用途,请尽量简短(占用数据库字段空间)
任务描述:描述,无特殊作用,请尽量简短(占用数据库字段空间)
任务参数任务处理时能够获取到的参数即各个Processor的process方法入参TaskContext对象的jobParams字段进行一次处理器开发就能理解了
定时信息:由下拉框和输入框组成
API -&gt; 不需要填写任何参数(填了也不起作用) CRON -&gt; 填写 CRON 表达式(可以找个在线生成网站生成) 固定频率 -&gt; 填写整数,单位毫秒 固定延迟 -&gt; 填写整数,单位毫秒 执行配置由执行类型单机、广播和MapReduce、处理器类型和处理器参数组成后两项相互关联。
内置Java处理器 -&gt; 填写该处理器的全限定类名eg, com.github.kfcfans.oms.processors.demo.MapReduceProcessorDemo Java容器 -&gt; 填写容器ID#处理器全限定类名eg1#com.github.kfcfans.oms.container.DemoProcessor SHELL -&gt; 填写需要处理的脚本直接复制文件内容或脚本下载连接http://xxx PYTHON -&gt; 填写完整的python脚本或下载连接http://xxx 运行配置
最大实例数:该任务同时执行的数量(任务和实例就像是类和对象的关系,任务被调度执行后被称为实例) 单机线程并发数该实例执行过程中每个Worker使用的线程数量MapReduce任务生效其余无论填什么都只会使用1个线程或3个线程&hellip; 运行时间限制限定任务的最大运行时间超时则视为失败单位毫秒0代表不限制超时时间。 重试配置:
任务重试次数实例级别失败了整个任务实例重试会更换TaskTracker本次任务实例的Master节点代价较大大型Map/MapReduce慎用。 子任务重试次数Task级别每个子Task失败后单独重试会更换ProcessorTracker本次任务实际执行的Worker节点代价较小推荐使用。 注对于单机任务来说假如任务重试次数和子任务重试次数都配置了1且都执行失败实际执行次数会变成4次推荐任务实例重试配置为0子任务重试次数根据实际情况配置。 机器配置用来标明允许执行任务的机器状态避开那些摇摇欲坠的机器0代表无任何限制。">
<meta name="theme-color" content="#FFFFFF"><meta property="og:title" content="任务管理与在线运维" />
<meta property="og:description" content="前端控制台允许开发者可视化地进行任务增、删、改、查等管理操作,同时也能直观地看到任务的运行数据,包括运行状态、详情和在线日志等。以下为对控制台的详细介绍: 主页 展示了系统整体的概览和集群Worker列表。
任务创建 创建需要被调度执行的任务,入口为主页 -&gt; 任务管理 -&gt; 新建任务。
任务名称:名称,便于记忆与搜索,无特殊用途,请尽量简短(占用数据库字段空间)
任务描述:描述,无特殊作用,请尽量简短(占用数据库字段空间)
任务参数任务处理时能够获取到的参数即各个Processor的process方法入参TaskContext对象的jobParams字段进行一次处理器开发就能理解了
定时信息:由下拉框和输入框组成
API -&gt; 不需要填写任何参数(填了也不起作用) CRON -&gt; 填写 CRON 表达式(可以找个在线生成网站生成) 固定频率 -&gt; 填写整数,单位毫秒 固定延迟 -&gt; 填写整数,单位毫秒 执行配置由执行类型单机、广播和MapReduce、处理器类型和处理器参数组成后两项相互关联。
内置Java处理器 -&gt; 填写该处理器的全限定类名eg, com.github.kfcfans.oms.processors.demo.MapReduceProcessorDemo Java容器 -&gt; 填写容器ID#处理器全限定类名eg1#com.github.kfcfans.oms.container.DemoProcessor SHELL -&gt; 填写需要处理的脚本直接复制文件内容或脚本下载连接http://xxx PYTHON -&gt; 填写完整的python脚本或下载连接http://xxx 运行配置
最大实例数:该任务同时执行的数量(任务和实例就像是类和对象的关系,任务被调度执行后被称为实例) 单机线程并发数该实例执行过程中每个Worker使用的线程数量MapReduce任务生效其余无论填什么都只会使用1个线程或3个线程&hellip; 运行时间限制限定任务的最大运行时间超时则视为失败单位毫秒0代表不限制超时时间。 重试配置:
任务重试次数实例级别失败了整个任务实例重试会更换TaskTracker本次任务实例的Master节点代价较大大型Map/MapReduce慎用。 子任务重试次数Task级别每个子Task失败后单独重试会更换ProcessorTracker本次任务实际执行的Worker节点代价较小推荐使用。 注对于单机任务来说假如任务重试次数和子任务重试次数都配置了1且都执行失败实际执行次数会变成4次推荐任务实例重试配置为0子任务重试次数根据实际情况配置。 机器配置用来标明允许执行任务的机器状态避开那些摇摇欲坠的机器0代表无任何限制。" />
<meta property="og:type" content="article" />
<meta property="og:url" content="https://kfcfans.gitee.io/ohmyscheduler/docs/startup/4-console-guide/" />
<title>任务管理与在线运维 | OhMyScheduler</title>
<link rel="manifest" href="/ohmyscheduler/manifest.json">
<link rel="icon" href="/ohmyscheduler/favicon.png" type="image/x-icon">
<link rel="stylesheet" href="/ohmyscheduler/book.min.e161f1fe2b283b6a43c29a52fde96e2387fade573e78efa6701d44c8499da76b.css" integrity="sha256-4WHx/isoO2pDwppS/eluI4f63lc&#43;eO&#43;mcB1EyEmdp2s=">
<script defer src="/ohmyscheduler/en.search.min.e2f9b2f3cf3fad006da31fc1558075ea0493c82e60c3b707d1745af9a528b273.js" integrity="sha256-4vmy888/rQBtox/BVYB16gSTyC5gw7cH0XRa&#43;aUosnM="></script>
<!--
Made with Book Theme
https://github.com/alex-shpak/hugo-book
-->
</head>
<body dir=>
<input type="checkbox" class="hidden" id="menu-control" />
<main class="container flex">
<aside class="book-menu">
<nav>
<h2 class="book-brand">
<a href="/ohmyscheduler"><span>OhMyScheduler</span>
</a>
</h2>
<div class="book-search">
<input type="text" id="book-search-input" placeholder="Search" aria-label="Search" maxlength="64" data-hotkeys="s/" />
<div class="book-search-spinner hidden"></div>
<ul id="book-search-results"></ul>
</div>
<ul>
<li>
<span>快速开始</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/startup/1-server-startup/" class="">调度中心Server部署</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/2-worker-startup/" class="">执行器Worker初始化</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/3-processor-develop/" class="">处理器开发</a>
</li>
<li>
<a href="/ohmyscheduler/docs/startup/4-console-guide/" class="active">任务管理与在线运维</a>
</li>
</ul>
</li>
<li>
<span>高级特性</span>
<ul>
<li>
<a href="/ohmyscheduler/docs/super/container/" class="">容器</a>
</li>
<li>
<a href="/ohmyscheduler/docs/super/openapi/" class="">OpenAPI</a>
</li>
</ul>
</li>
<li>
<span>更新日志</span>
<ul>
</ul>
</li>
</ul>
</nav>
<script>(function(){var menu=document.querySelector("aside.book-menu nav");addEventListener("beforeunload",function(event){localStorage.setItem("menu.scrollTop",menu.scrollTop);});menu.scrollTop=localStorage.getItem("menu.scrollTop");})();</script>
</aside>
<div class="book-page">
<header class="book-header">
<div class="flex align-center justify-between">
<label for="menu-control">
<img src="/ohmyscheduler/svg/menu.svg" class="book-icon" alt="Menu" />
</label>
<strong>任务管理与在线运维</strong>
<label for="toc-control">
<img src="/ohmyscheduler/svg/toc.svg" class="book-icon" alt="Table of Contents" />
</label>
</div>
<input type="checkbox" class="hidden" id="toc-control" />
<aside class="hidden clearfix">
<nav id="TableOfContents">
<ul>
<li><a href="#主页">主页</a></li>
<li><a href="#任务创建">任务创建</a></li>
<li><a href="#任务管理">任务管理</a></li>
<li><a href="#运行状态">运行状态</a></li>
<li><a href="#在线日志">在线日志</a></li>
</ul>
</nav>
</aside>
</header>
<article class="markdown"><blockquote class="book-hint info">
前端控制台允许开发者可视化地进行任务增、删、改、查等管理操作,同时也能直观地看到任务的运行数据,包括运行状态、详情和在线日志等。以下为对控制台的详细介绍:
</blockquote>
<h2 id="主页">主页</h2>
<p>展示了系统整体的概览和集群Worker列表。</p>
<p><img src="/ohmyscheduler/oms-console-main.png" alt="main" /></p>
<h2 id="任务创建">任务创建</h2>
<p>创建需要被调度执行的任务,入口为<strong>主页 -&gt; 任务管理 -&gt; 新建任务</strong></p>
<p><img src="/ohmyscheduler/oms-console-jobCreator.png" alt="jobcreator" /></p>
<ul>
<li>
<p>任务名称:名称,便于记忆与搜索,无特殊用途,请尽量简短(占用数据库字段空间)</p>
</li>
<li>
<p>任务描述:描述,无特殊作用,请尽量简短(占用数据库字段空间)</p>
</li>
<li>
<p>任务参数任务处理时能够获取到的参数即各个Processor的process方法入参<code>TaskContext</code>对象的jobParams字段进行一次处理器开发就能理解了</p>
</li>
<li>
<p>定时信息:由下拉框和输入框组成</p>
<ul>
<li>API -&gt; 不需要填写任何参数(填了也不起作用)</li>
<li>CRON -&gt; 填写 CRON 表达式(可以找个<a href="https://www.bejson.com/othertools/cron/">在线生成网站生成</a></li>
<li>固定频率 -&gt; 填写整数,单位毫秒</li>
<li>固定延迟 -&gt; 填写整数,单位毫秒</li>
</ul>
</li>
<li>
<p>执行配置由执行类型单机、广播和MapReduce、处理器类型和处理器参数组成后两项相互关联。</p>
<ul>
<li>内置Java处理器 -&gt; 填写该处理器的全限定类名eg, <code>com.github.kfcfans.oms.processors.demo.MapReduceProcessorDemo</code></li>
<li>Java容器 -&gt; 填写<strong>容器ID#处理器全限定类名</strong>eg<code>1#com.github.kfcfans.oms.container.DemoProcessor</code></li>
<li>SHELL -&gt; 填写需要处理的脚本直接复制文件内容或脚本下载连接http://xxx</li>
<li>PYTHON -&gt; 填写完整的python脚本或下载连接http://xxx</li>
</ul>
</li>
<li>
<p>运行配置</p>
<ul>
<li>最大实例数:该任务同时执行的数量(任务和实例就像是类和对象的关系,任务被调度执行后被称为实例)</li>
<li>单机线程并发数该实例执行过程中每个Worker使用的线程数量MapReduce任务生效其余无论填什么都只会使用1个线程或3个线程&hellip;</li>
<li>运行时间限制:限定任务的最大运行时间,超时则视为失败,单位<strong>毫秒</strong>0代表不限制超时时间。</li>
</ul>
</li>
<li>
<p>重试配置:</p>
<ul>
<li>任务重试次数实例级别失败了整个任务实例重试会更换TaskTracker本次任务实例的Master节点代价较大大型Map/MapReduce慎用。</li>
<li>子任务重试次数Task级别每个子Task失败后单独重试会更换ProcessorTracker本次任务实际执行的Worker节点代价较小推荐使用。</li>
<li>对于单机任务来说假如任务重试次数和子任务重试次数都配置了1且都执行失败实际执行次数会变成4次推荐任务实例重试配置为0子任务重试次数根据实际情况配置。</li>
</ul>
</li>
<li>
<p>机器配置用来标明允许执行任务的机器状态避开那些摇摇欲坠的机器0代表无任何限制。</p>
<ul>
<li>最低CPU核心数填写浮点数CPU可用核心数小于该值的Worker将不会执行该任务。</li>
<li>最低内存GB填写浮点数可用内存小于该值的Worker将不会执行该任务。</li>
<li>最低磁盘GB填写浮点数可用磁盘空间小于该值的Worker将不会执行该任务。</li>
</ul>
</li>
<li>
<p>集群配置</p>
<ul>
<li>执行机器地址指定集群中的某几台机器执行任务debug的好帮手多值英文逗号分割<code>192.168.1.1:27777,192.168.1.2:27777</code></li>
<li>最大执行机器数量:限定调动执行的机器数量</li>
</ul>
</li>
<li>
<p>报警配置:选择任务执行失败后报警通知的对象,需要事先录入。</p>
</li>
</ul>
<h2 id="任务管理">任务管理</h2>
<p>直观地展示当前系统所管理的所有任务信息,并提供相应的运维方法。</p>
<p><img src="/ohmyscheduler/oms-console-jobManager.png" alt="jobManager" /></p>
<h2 id="运行状态">运行状态</h2>
<p>直观地展示当前系统中运行任务实例的状态,点击详情即可获取详细的信息,点击日志可以查看通过<code>omsLogger</code>上报的日志,点击停止则可以强制终止该任务。</p>
<p><img src="/ohmyscheduler/oms-console-runningStatus.png" alt="status" /></p>
<h2 id="在线日志">在线日志</h2>
<p>在线查看Worker执行过程中上报的日志极大降低debug成本提升开发效率</p>
<p><img src="/ohmyscheduler/oms-console-onlineLog.png" alt="在线日志" /></p>
</article>
<footer class="book-footer">
<div class="flex flex-wrap justify-between">
</div>
</footer>
<div class="book-comments">
</div>
<label for="menu-control" class="hidden book-menu-overlay"></label>
</div>
<aside class="book-toc">
<nav id="TableOfContents">
<ul>
<li><a href="#主页">主页</a></li>
<li><a href="#任务创建">任务创建</a></li>
<li><a href="#任务管理">任务管理</a></li>
<li><a href="#运行状态">运行状态</a></li>
<li><a href="#在线日志">在线日志</a></li>
</ul>
</nav>
</aside>
</main>
</body>
</html>