一般来讲,默认的runtime即enginekernel已经能够完成大部分工作,但以下几种情况,可以考虑自定义一个runtime:
构建一个可以执行traceroute命令的运行环境
**构建镜像使用的的基础镜像必须要使用官方提供,镜像中自带jdk1.8环境以及worker代码
vim Dockerfile
FROM flowengine/worker-base-jdk8:0.0.1
#以下为自定义部分
RUN yum install -y traceroute
docker build -f Dockerfile -t flowengine/worker-test:v1.1 ./(构建镜像后存储的地址) ####这一步操作前应该先新建一个文件夹,然后把dockerfile放到这个文件夹里,然后再build镜像
填写基本信息,保存退出
打开描述文件,查看信息是否准确
主要信息描述
{
"resourceType": "workerT",
"group": "test",
"key": "traceroute-workerTemplate",
"version": "1.0.0",
"creator": "4pdadmin",
"createTime": 1601020881060,
"modifyTime": 1601187816223,
"desc": "traceroute运行环境",
"name": "traceroute运行环境",
"spec": {
"pasDeployment": {
"spec": {
"replicas": 1, // worker运行实例数
"template": {
"spec": {
"containers": [
{
"image": "worker-test:v1.1", // worker镜像地址
"resources": {
"limits": {
"memory": "1024M", // worker运行内存
"cpu": "1"// worker运行cpu
}
}
}
],
"nodeSelector": {
"prophet.4paradigm.com/offline": true // nodeSelector标签
}
}
}
}
},
"idleTimeMillis": 100 // 最大空闲时间
}
}
在pipeline中使用job 在一个asol的离线编排里创建一个pipeline,并将刚才创建好的job拖入到pipeline中
发布好这个asol后,我们就可以根据这个asol创建一个引擎了
创建好引擎后,进入引擎,启动刚才创建的离线pipeline(这个是运行完成的画面)
3.运行中查看: 可以通过该页面查看job运行的状态和运行环境等信息
运行完成的状态: 由于最大空闲时间设置的为0.1秒,所以运行完成后,运行环境立即被回收了