티스토리 뷰
반응형
문제 1 현재 운영중인 eshop-cart-app Pod의 로그를 Kubernetes built-in logging 아키텍처(예:kubectl logs)에 통합하는 로그 스트리밍 사이드카 컨테이너를 운영하시오
- busybox 이미지를 사용하여 price라는 이름의 사이드카 컨테이너를 기존 eshop-cart-app에 추가합니다.
- 새 price 컨테이너는 다음과 같은 command를 실행해야 합니다.
- /var/log에 마운트 된 볼륨을 사용하여 사이트카 컨테이너에서 로그 파일 cart-app.log를 사용합니다.
- eshop-cart-app Pod 와 cart-app 컨테이너를 수정하지 마시오.
// eshop-cart-app pod 를 yaml 으로 추출
kubectl get pod eshop-cart-app pod -o yaml > 3-3.yaml
// 저장되는지 확인
vi 3-3.yaml
apiVersion: v1
kind: Pod
metadata:
name: eshop-cart-app
spec:
containers:
-command:
- /bin/sh
- -c
- 'i=1;while :;do echo -e "$i: Price: $((RANDOM % 10000 + 1))" >> /var/log/cart-app.log;
i=$((i+1); sleep 2; done'
image: busybox
name: cart-app
vlumeMounts:
- mountPath: /var/log
name: varlog
volumes:
- emptyDir: {}
name: varlog
// 추가 내용
apiVersion: v1
kind: Pod
metadata:
name: eshop-cart-app
spec:
containers:
-command:
- /bin/sh
- -c
- 'i=1;while :;do echo -e "$i: Price: $((RANDOM % 10000 + 1))" >> /var/log/cart-app.log;
i=$((i+1); sleep 2; done'
image: busybox
name: cart-app
vlumeMounts:
- mountPath: /var/log
name: varlog
// 추가
- name: price
image: busybox
args: [/bin/sh, -c, 'tail -n+1 -F /var/log/cart-app.log']
volumeMounts:
- name: varlog
mountPath: /var/log
volumes:
- emptyDir: {}
name: varlog
// 적용하기
kubectl apply -f 3-3.yaml
// 적용된 내용확인
kubectl get pods
kubectl logs eshop-cart-app -c price
반응형
'cka' 카테고리의 다른 글
kubernetes [CKA] - Deployment (0) | 2023.08.29 |
---|---|
kubernetes [CKA] - Deployment(기본 개념) (0) | 2023.08.29 |
kubernetes [CKA] - sidecar-container(기본 개념) (0) | 2023.08.21 |
kubernetes [CKA] - multi container pod 연습 문제 (0) | 2023.08.21 |
kubernetes [CKA] - Multi Containers(기본 개념) (0) | 2023.08.21 |