본문 바로가기
SMALL

software engineering22

Helm - Developing Templates https://v2.helm.sh/docs/chart_template_guide/#the-chart-template-developer-s-guide v2 기준 Getting Started A FIRST TEMPLATE ConfigMap을 생성하는 것을 example로 하여 설명. 아래 명령어로 기본 chart 생성 후 $ helm create mychart deployment.yaml이 아닌 configmap.yaml를 생성하여 진행. yaml 파일 네이밍은 모두 소문자로 하는게 룰인 듯. apiVersion: v1 kind: ConfigMap metadata: name: mychart-configmap data: myvalue: "Hello World" Template의 네이밍은 엄격한 룰은 없지만 y.. 2021. 2. 17.
Helm - Developing Templates - Template Functions and Pipelines https://v2.helm.sh/docs/chart_template_guide/#template-functions-and-pipelines v2 기준 Go template language 의 문법에 기초한 Template. 아래와 같이 quote function을 사용 가능. apiVersion: v1 kind: ConfigMap metadata: name: {{ .Release.Name }}-configmap data: myvalue: "Hello World" drink: {{ quote .Values.favorite.drink }} food: {{ quote .Values.favorite.food }} Go의 functions 외에도 Sprig template library의 대부분의 functio.. 2021. 2. 17.
Deployments - Writing a Deployment Spec Writing a Deployment Spec Pod Template .spec.template와 .spec.selector로 배포할 Pod을 선택한다. .spec.template는 Pod의 schema와 apiVersion, kind 필드가 없다는 것 외에 동일. 당연히 labels는 다른 controllers와 겹치지 않게 해야 한다. ? 겹치면 어떻게 되지? 예측 불가능한 동작을 할 수 있다고 했었던 듯. Replicas 기본값 1 Selector .spec.selector는 .spec.template.metadata.labes랑 반드시 매치가 되어야 하고 비워둘 경우 자동으로 매치해주지 않으므로 반드시 명시적으로 선언해야 한다. 그리고 .spec.selector는 immutable하여 생성 이후에.. 2021. 2. 16.
Deployments - Deployment status Deployment status Deployment는 progressing, complete, fail to progress 3가지 lifecycle을 가짐. Progressing Deployment progressing lifecycle에서 아래 tasks를 수행. rs 교체. 새로운 ReplicaSet 생성 새로운 rs에 scale up 이전 rs에 scale down 새로운 Pods가 최소 준비 시간동안 준비되어 이용 가능해짐 Complete Deployment k8s는 Deployment가 아래 상태일 때 complete lifecycle로 본다. 요청한 update가 모두 적용 모든 replicas가 이용 가능 running 중인 old replicas가 없음 kubectl rollout sta.. 2021. 2. 10.