CKA03--sidecar
题目
您必须连接到正确的主机。不这样做可能导致零分。
[candidate@base] $ ssh cka000037
Context
您需要将一个传统应用程序集成到 Kubernetes 的日志架构(例如 kubectl logs)中。
实现这个要求的通常方法是添加一个流式传输并置容器。
Task
更新现有的 synergy-leverager Deployment,
将使用 busybox:stable 镜像,且名为 sidecar 的并置容器,添加到现有的 Pod 。
新的并置容器必须运行以下命令:
/bin/sh -c “tail -n+1 -f /var/log/synergy-leverager.log”
使用挂载在 /var/log 的 Volume,使日志文件 synergy-leverager.log 可供并置容器使用。
除了添加所需的卷挂载之外,请勿修改现有容器的规范。
分析:

关键参考
1、kubernetes.io/zh-cn/docs/–概念–集群管理–日志架构–two-files-counter-pod-streaming-sidecar.yaml
2、获取deployment的yaml
kubectl get deployment synergy-leverager -o yaml > sidecar.yaml
3、
在 dnsPolicy: ClusterFirst 上面添加
的下面,添加如下内容
volumeMounts:
- name: varlog
mountPath: /var/log - name: sidecar
image: busybox:stable
args: [/bin/sh, -c, ‘tail -n+1 -f /var/log/synergy-leverager.log’]
volumeMounts: - name: varlog
mountPath: /var/log
2、在 status: 的上面添加如下内容
volumes: - name: varlog
emptyDir: {}
解题步骤
把deployment yaml复制出来
kubectl get deployment synergy-leverager -o yaml > sidecar.yaml
编辑vim sidecar.yaml
dusPolicy: ClusterFirst上面添加
在这里插入图片描述

status: 上面添加

更新kubectl apply -f sidecar.yaml
检验效果
检查pod是否running
kubectl get deployment synergy-leverager
kubectl get pod | grep synergy-leverager
kubectl logs pod name -c sidecar
exit
更多推荐


所有评论(0)