일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- JPA
- map
- builder-pattern
- IntelliJ
- superBuilder
- 뷰
- DevOps
- ORM
- 프로그래머스
- Oracle
- CKA
- vuejs
- Vue
- java
- docker
- 해시맵
- hibernate
- Di
- CI
- programmers
- 알고리즘
- 자바
- cd
- SpringMVC
- k8s
- Kubernetes
- CI/CD
- Spring
- 코딩테스트연습
- dabase
Archives
- Today
- Total
문홍의 공부장
[k8s tutorials] Projected Volume 사용하기 Configure a Pod to Use a Projected Volume for Storage 본문
개발/DevOps
[k8s tutorials] Projected Volume 사용하기 Configure a Pod to Use a Projected Volume for Storage
moonong 2022. 2. 13. 15:53반응형
Configure a Pod to Use a Projected Volume for Storage
https://kubernetes.io/docs/tasks/configure-pod-container/configure-projected-volume-storage/
what is Projected volume ?
Projected Volume 은 여러 기존 볼륨 소스를 동일한 디렉토리에 매핑한다.
모든 볼륨 소스는 파드와 동일한 네임스페이스에 존재하여야 하며, 아래 유형의 볼륨을 projected 할 수 있다.
- secret
- configMap
- downwardAPI
- serviceAccountToken volumes
Hands-on
목표:
- Projected Volume 에 Secret 을 마운트 하여 사용
실습
1. Secret 생성
username.txt, password.txt 파일을 각각 생성하고, 해당 파일로 Secret 을 생성한다.
# Create files containing the username and password:
echo -n "admin" > ./username.txt
echo -n "1f2d1e2e67df" > ./password.txt
# Package these files into secrets:
kubectl create secret generic user --from-file=./username.txt
kubectl create secret generic pass --from-file=./password.txt
k get secrets
user, pass 라는 이름으로 Secret 이 생성된 것을 확인할 수 있다.
2. Projected Volume 생성
1 에서 생성한 Secret 을 사용하는 projected volume 을 생성한다.
apiVersion: v1
kind: Pod
metadata:
name: test-projected-volume
spec:
containers:
- name: test-projected-volume
image: busybox
args:
- sleep
- "86400"
volumeMounts: # 컨테이너 안에 마운트 할 경로 설정
- name: all-in-one
mountPath: "/projected-volume"
readOnly: true
volumes:
- name: all-in-one
projected:
sources:
- secret:
name: user
- secret:
name: pass
kubectl apply -f https://k8s.io/examples/pods/storage/projected.yaml
pod/test-projected-volume created
파드가 정상적으로 생성되고, running 되고 있는지 아래 커맨드를 통해 지켜본다.
kubectl get --watch pod test-projected-volume
3. 생성된 Projected Volume 의 내용 확인
다른 터미널을 열어, 생성한 파드 내부로 들어가 secret 볼륨이 정상적으로 마운트 되어 사용되고 있는지 확인한다.
kubectl exec -it test-projected-volume -- /bin/sh
ls /projected-volume/
password.txt username.txt
References.
반응형