我已经为自定义计划程序运行了服务帐户和pod。因此,我的自定义计划程序名称是什么?它将是pod名称或服务名称或其他任何名称。
答案 0 :(得分:0)
通常,您在编写调度程序本身时定义调度程序名称。然后,为调度程序创建一个docker容器,并在kubernetes中将该调度程序作为部署运行。
现在,调度程序将调度您的Pod(基于您的调度方式)。
您应该观看以下有关如何编写和使用自定义计划程序的Kelsey Hightower演讲
这是玩具调度程序的源代码,可以参考
希望这给您一个简短的想法。
编辑:
kelsey hightower的调度程序(上述链接)必须通过以下方式进行部署:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
app: scheduler
name: scheduler
spec:
replicas: 1
template:
metadata:
labels:
app: scheduler
name: scheduler
spec:
containers:
- name: scheduler
image: kelseyhightower/scheduler:0.4.0
- name: kubectl
image: kelseyhightower/kubectl:1.3.4
args:
- "proxy"
然后,每当使用该调度程序部署新Pod时,都需要在yaml文件中提供“ schedulerName”:
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
labels:
app: nginx
name: nginx
spec:
replicas: 1
template:
metadata:
labels:
app: nginx
name: nginx
spec:
schedulerName: hightower
containers:
- name: nginx
image: "nginx:1.11.1-alpine"
resources:
requests:
cpu: "500m"
memory: "128M"
schedulerName
应该是您的代码中定义的调度程序的名称。