kubernetes yaml 분석
#apiVersion: 이 오브젝트를 생성하기 위해 사용하고 있는 쿠버네티스 API 버전 설정.
apiVersion: apps/v1
#kind: 어떤 종류의 오브젝트를 생성하는지 설정.
#Deployment: ReplicaSet 을 관리하는 controller.
kind: Deployment
metadata:
creationTimestamp: null
labels:
app: tuba-metric-collector #Deployment의 label
name: tuba-metric-collector #Deployment의 이름
namespace: dev
#spec: 각 컴포넌트에 대한 자세한 설명과 어떤 오브젝트 종류인지에 따른 내용 설정.
spec:
#replicas: 유지하고자 하는 Pod 의 갯수.
replicas: 2
#selector: 관리하고자 하는 Pod 를 선택.
selector:
matchLabels:
app: tuba-metric-collector
strategy: {}
#template: 관리되고자 하는 Pod 에 대해 정의하는 필드.
template:
metadata:
creationTimestamp: null
labels:
app: tuba-metric-collector
spec:
containers:
- image: harbor.vista.astellu.com/tuba-dev/tuba-metric-collector:latest
imagePullPolicy: Always
name: tuba-metric-collector
ports:
- containerPort: 8080
resources: {}
env:
- name: TUBA_SETTING_FILENAME
value: "setting.yml"
- name: TUBA_KAFKA_CONSUMER_TOPIC
value: "tuba-meta-topic"
- name: TUBA_KAFKA_CONSUMER_GROUP
value: "oper2-mc-netapp"
- name: TUBA_KAFKA_CONSUMER_EXPIRYTIME
value: "120000"
imagePullSecrets:
- name: harbor
#status: 쿠버네티스가 자동으로 생성, 자신이 원하는 상태가 되도록 현재 상태를 설정.
status: {}
---
apiVersion: v1
kind: Service
metadata:
name: tuba-metric-collector
namespace: dev
spec:
selector:
app: tuba-metric-collector
ports:
- port: 8080
targetPort: 8080
nodePort: 32008
type: NodePort