我已经执行了"Kubernetes Up and Running"一书中的示例,其中运行了具有工作队列的pod,然后创建了一个k8s作业,其中5个pod用于消耗队列中的所有工作.我已经复制了下面的yaml api对象.
我的期望是,一旦k8s工作完成,那么它的pod将被删除,但kubectl get pods -o wide显示pod仍然存在,即使它报告0/1容器准备好了,他们似乎仍然分配了ip地址,见下面的输出.
kubectl get pods为什么在吊舱中的所有容器完成后不正确?在所有pod消耗掉所有消息之后从kubectl输出.
kubectl get pods -o wide
NAME READY STATUS RESTARTS AGE IP NODE
consumers-bws9f 0/1 Completed 0 6m 10.32.0.35 gke-cluster1-default-pool-3796b2ee-rtcr
consumers-d25cs 0/1 Completed 0 6m 10.32.0.33 gke-cluster1-default-pool-3796b2ee-rtcr
consumers-jcwr8 0/1 Completed 0 6m 10.32.2.26 gke-cluster1-default-pool-3796b2ee-tpml
consumers-l9rkf 0/1 Completed 0 6m 10.32.0.34 gke-cluster1-default-pool-3796b2ee-rtcr
consumers-mbd5c 0/1 Completed 0 6m 10.32.2.27 gke-cluster1-default-pool-3796b2ee-tpml
queue-wlf8v 1/1 Running 0 22m 10.32.0.32 gke-cluster1-default-pool-3796b2ee-rtcr
Run Code Online (Sandbox Code Playgroud)
执行了以下三个k8s api调用,这些调用是从书籍样本中剪切和粘贴的.
运行具有工作队列的pod
apiVersion: extensions/v1beta1
kind: ReplicaSet
metadata:
labels:
app: work-queue
component: queue
chapter: jobs
name: queue
spec:
replicas: 1
template:
metadata:
labels:
app: work-queue
component: queue
chapter: jobs
spec:
containers:
- name: queue
image: "gcr.io/kuar-demo/kuard-amd64:1"
imagePullPolicy: Always
Run Code Online (Sandbox Code Playgroud)
将pod作为服务公开,以便工作人员可以访问它.
apiVersion: v1
kind: Service
metadata:
labels:
app: work-queue
component: queue
chapter: jobs
name: queue
spec:
ports:
- port: 8080
protocol: TCP
targetPort: 8080
selector:
app: work-queue
component: queue
Run Code Online (Sandbox Code Playgroud)
将100个项目发布到队列然后运行具有5个并行执行的pod的作业,直到队列为空.
apiVersion: batch/v1
kind: Job
metadata:
labels:
app: message-queue
component: consumer
chapter: jobs
name: consumers
spec:
parallelism: 5
template:
metadata:
labels:
app: message-queue
component: consumer
chapter: jobs
spec:
containers:
- name: worker
image: "gcr.io/kuar-demo/kuard-amd64:1"
imagePullPolicy: Always
args:
- "--keygen-enable"
- "--keygen-exit-on-complete"
- "--keygen-memq-server=http://queue:8080/memq/server"
- "--keygen-memq-queue=keygen"
restartPolicy: OnFailure
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5320 次 |
| 最近记录: |