투구 소개
2651 단어 devopskubernetesdocker
투구 템플릿
대부분의 경우 Kubernetes 구성을 나타내는 YAML 파일은 애플리케이션을 배포하는 데 필요한 서로 다른 환경 간에 서로 다른 값을 가져야 합니다. Helm은 Kubernetes 구성 파일을 기본값 또는 사용자 지정 값 세트를 기반으로 전체 출력 YAML을 생성하는 데 사용할 수 있는 템플릿으로 정의하는 기능을 제공합니다. 예를 들어 다음 배포가 있다고 가정합니다.
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: 3
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
값을 변경해야 하는 가장 일반적인 경우는 이미지 태그를 변경하는 것입니다. 이 예에서는 개발 또는 테스트 환경에서 많은 복제본이 필요하지 않은 경우를 대비하여 복제본 수를 동적으로 만들 것입니다. 배포를 다음과 같이 변경하겠습니다.
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
replicas: {{ .Values.replicas }}
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:{{ .Values.dockerTag }}
ports:
- containerPort: 80
Helm 패키징 및 배포
Helm은 Kubernetes 구성 YAML 파일을 Chart라는 항목으로 패키징, 버전 지정 및 배포하는 기능을 제공합니다. Helm 차트는 Kubernetes에서 애플리케이션을 오케스트레이션하는 데 필요한 모든 템플릿과 기본값으로 구성됩니다. maven 또는 docker 리포지토리와 유사하게 리포지토리에서 차트를 푸시하거나 리포지토리에서 가져올 수 있습니다.
helm package
명령은 helm 차트 저장소로 푸시할 수 있는 아카이브 파일을 생성합니다. 그런 다음 해당 차트를 풀다운하여 애플리케이션을 배포하는 데 사용할 수 있습니다. 이러한 차트는 또한 애플리케이션의 Kubernetes 구성에서 변경 사항이 있을 때 차트의 새 버전으로 배포할 수 있도록 버전을 지정할 수 있습니다.투구 배포 관리
helm 명령을 통해 Kubernetes 인스턴스에서 차트를 설치, 업그레이드, 롤백 또는 삭제할 수 있습니다. 설치 메타데이터는 helm에 의해 내부적으로 처리되며 차트의 각 업그레이드는 새로운 "릴리스"로 처리됩니다. 즉, helm 명령을 실행하여 Kubernetes 구성을 이전 상태로 되돌리기만 하면 릴리스를 롤백할 수 있습니다. 이는 구성 값을 변경하여 애플리케이션을 업데이트하지만 실제 차트 내용은 변경되지 않은 경우에 특히 유용합니다.
결론
Kubernetes로 컨테이너화된 애플리케이션을 오케스트레이션하는 경우 템플릿, 배포 배포 및 관리와 같은 기능이 빠르게 필요할 것입니다. Helm은 이러한 기능을 쉽게 제공하며 쉽게 따라할 수 있는 예제와 함께 문서화되어 있습니다. Helm의 기능과 기능에 대한 훨씬 더 자세한 정보와 문서가 있습니다https://helm.sh/docs/.
Reference
이 문제에 관하여(투구 소개), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/edlegaultle/introduction-to-helm-50jl텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)