🔧
쿠버네티스(Kubernetes) CKA Lightning Lab 7 - Secret이 마운트된 Pod 생성하기
May 15, 2022
7. Secret이 마운트된 Pod 생성하기
[문제 요건]
admin1401
네임스페이스에busybox
이미지를 가지고secret-1401
라는 파드를 생성- 파드 내 컨테이너명은 반드시
secret-admin
여야함 4800
초동안 sleep하는 명령어 실행- 컨테이너에 마운트 되는 시크릿 볼륨은
read-only
여야 하며, - 컨테이너는
/etc/secret-volume
경로에 시크릿 볼륨을 마운트해야한다. - 시크릿 이름은
dotfile-secret
- 채점 기준: 파드가 올바르게 생성되었는가?
[내 풀이]
- kubectl 명령어로 pod의 yaml 파일을 생성해준다.
- Tip:
--dry-run
옵션을 사용해 파드를 생성하지 않고 매니페스트 파일만 생성한다.
- Tip:
root@controlplane:~# k run -n admin1401 --image=busybox secret-1401 --dry-run=client -o yaml --command -- sleep 4800 > pod.yaml
- 생성한 매니페스트 파일(yaml)을 편집한다.
root@controlplane:~# vi pod.yaml
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: secret-1401
name: secret-1401
namespace: admin1401
spec:
containers:
- command:
- sleep
- "4800"
image: busybox
name: secret-1401
dnsPolicy: ClusterFirst
restartPolicy: Always
- 문제 요건에 맞게 pod의 yaml 파일을 수정한다.
apiVersion: v1
kind: Pod
metadata:
creationTimestamp: null
labels:
run: secret-1401
name: secret-1401
namespace: admin1401
spec:
containers:
- command:
- sleep
- "4800"
image: busybox
name: secret-admin
volumeMounts:
- name: secret-volume
readOnly: true
mountPath: "/etc/secret-volume"
dnsPolicy: ClusterFirst
restartPolicy: Always
volumes:
- name: secret-volume
secret:
secretName: dotfile-secret
- 파드의 컨테이너명을
secret-admin
으로 수정한다. - 쿠버네티스 공식 문서의 Secret 문서를 참고하여 Secret Volume과 VolumeMounts 구문을 추가한다.
kubectl create -f <yaml파일명>
명령어를 사용해 파드를 생성한 뒤, 잘 생성되었는지 확인한다.
root@controlplane:~# kubectl create -f pod.yaml
pod/secret-1401 created
root@controlplane:~# kubectl get pods -n admin1401
NAME READY STATUS RESTARTS AGE
secret-1401 1/1 Running 0 12s
[참고 URL]
- kubectl reference: https://kubernetes.io/docs/reference/generated/kubectl/kubectl-commands#run
- Secret: https://kubernetes.io/ko/docs/concepts/configuration/secret/#사용-사례-ssh-키가-있는-파드