Mailroom 차트 사용하기

Tier: Free, Premium, Ultimate Offering: Self-Managed

Mailroom 차트는 수신 이메일을 처리합니다.

구성

image:
  repository: registry.gitlab.com/gitlab-org/build/cng/gitlab-mailroom
  # tag: v0.9.1
  pullSecrets: []
  # pullPolicy: IfNotPresent

enabled: true

init:
  image: {}
    # repository:
    # tag:
  resources:
    requests:
      cpu: 50m

# Pod 스케줄링을 위한 견디기 설정
tolerations: []
affinity: {}
podLabels: {}

hpa:
  minReplicas: 1
  maxReplicas: 2
  cpu:
    targetAverageUtilization: 75

  # HPA는 autoscaling/v2beta1, autoscaling/v2beta2 및 autoscaling/v2로 제한됨에 유의하십시오
  customMetrics: []
  behavior: {}

networkpolicy:
  enabled: false
  egress:
    enabled: false
    rules: []
  ingress:
    enabled: false
    rules: []
  annotations: {}

resources:
  # limits:
  #  cpu: 1
  #  memory: 2G
  requests:
    cpu: 50m
    memory: 150M

## 실행되는 사용자 및 그룹을 덮어씌울 수 있도록 허용
securityContext:
  runAsUser: 1000
  fsGroup: 1000

## 배포에 serviceAccount를 사용할 수 있도록 설정
serviceAccount:
  enabled: false
  create: false
  annotations: {}
  ## serviceAccount에 사용할 이름, 그렇지 않으면 차트의 전체 이름이 기본값으로 사용됨
  # name:
매개변수 설명 기본값
affinity {} Pod 할당을 위한 Affinity 규칙
deployment.strategy 배포에 의해 사용되는 업데이트 전략 구성 가능 {}
enabled Mailroom 활성화 플래그 true
hpa.behavior Up- 및 Downscaling 동작 사양을 포함함 (autoscaling/v2beta2 이상이 필요함) {scaleDown: {stabilizationWindowSeconds: 300 }}
hpa.customMetrics 원하는 레플리카 수를 계산하는 데 사용할 사양을 포함함 (targetAverageUtilization으로 구성된 평균 CPU 사용률의 기본값을 무시함) []
hpa.cpu.targetType 오토스케일링 CPU 대상 유형 설정, Utilization 또는 AverageValue 여야 함 Utilization
hpa.cpu.targetAverageValue 오토스케일링 CPU 대상 값 설정  
hpa.cpu.targetAverageUtilization 오토스케일링 CPU 대상 사용률 설정 75
hpa.memory.targetType 오토스케일링 메모리 대상 유형 설정, Utilization 또는 AverageValue 여야 함  
hpa.memory.targetAverageValue 오토스케일링 메모리 대상 값 설정  
hpa.memory.targetAverageUtilization 오토스케일링 메모리 대상 사용률 설정  
hpa.maxReplicas 최대 복제본 수 2
hpa.minReplicas 최소 복제본 수 1
image.pullPolicy Mailroom 이미지 pull 정책 IfNotPresent
extraEnvFrom 노출할 다른 데이터 소스로부터의 추가 환경변수 목록  
image.pullSecrets Mailroom 이미지 pull 시크릿  
image.registry Mailroom 이미지 레지스트리  
image.repository Mailroom 이미지 저장소 registry.gitlab.com/gitlab-org/build/cng/gitlab-mailroom
image.tag Mailroom 이미지 태그  
init.image.repository Mailroom init 이미지 저장소  
init.image.tag Mailroom init 이미지 태그  
init.resources Mailroom init 컨테이너 리소스 요구 사항 { requests: { cpu: 50m }}
init.containerSecurityContext   Kubernetes API 참조에 구체적인 initContainer 컨테이너 securityContext
keda.enabled false KEDA HorizontalPodAutoscalers 대신 ScaledObjects를 사용합니다.
keda.pollingInterval 30 각 트리거를 확인하는 간격
keda.cooldownPeriod 300 스케일링된 리소스를 다시 0으로 축소하기 전에 마지막으로 보고된 트리거가 활동 상태로 되돌아오기까지의 기간
keda.minReplicaCount   KEDA가 리소스를 축소할 수 있는 최소 복제본 수, 기본값은 hpa.minReplicas로 설정됨
keda.maxReplicaCount   KEDA가 리소스를 늘릴 수 있는 최대 복제본 수, 기본값은 hpa.maxReplicas로 설정됨
keda.fallback   KEDA 대비 구성, 자세한 내용은 문서를 참조하세요.
keda.hpaName   KEDA가 만들 HPA 리소스의 이름, 기본값은 keda-hpa-{scaled-object-name}으로 설정됨
keda.restoreToOriginalReplicaCount   ScaledObject가 삭제된 후 대상 리소스를 원래 복제본 수로 축소해야 하는지 여부를 지정함
keda.behavior   Up- 및 Downscaling 동작 사양, 기본값은 hpa.behavior로 설정됨
keda.triggers   대상 리소스의 스케일링을 활성화하는 트리거 목록, 기본값은 hpa.cpuhpa.memory에서 계산된 트리거로 설정됨
podLabels 실행 중인 Mailroom Pods에 대한 라벨 {}
common.labels 이 차트에 의해 생성된 모든 개체에 적용되는 추가 라벨 {}
resources Mailroom 리소스 요구 사항 { requests: { cpu: 50m, memory: 150M }}
networkpolicy.annotations NetworkPolicy에 추가할 어노테이션 {}
networkpolicy.egress.enabled NetworkPolicy의 egress 규칙을 활성화하는 플래그 false
networkpolicy.egress.rules NetworkPolicy의 egress 규칙 목록 정의 []
networkpolicy.enabled NetworkPolicy 사용 여부 false
networkpolicy.ingress.enabled NetworkPolicy의 ingress 규칙을 활성화하는 플래그 false
networkpolicy.ingress.rules NetworkPolicy의 ingress 규칙 목록 정의 []
securityContext.fsGroup Pod가 시작될 그룹 ID 1000
securityContext.runAsUser Pod가 시작될 사용자 ID 1000
securityContext.fsGroupChangePolicy 볼륨 소유권과 권한을 변경하는 정책 (Kubernetes 1.23 이상 필요)  
containerSecurityContext   컨테이너가 시작되는 특정 보안 컨텍스트를 덮어쓸 수 있도록 허용함. 컨테이너의 권한을 재정의함
containerSecurityContext.runAsUser 1000 컨테이너가 시작되는 특정 보안 컨텍스트를 덮어쓸 수 있도록 허용함
serviceAccount.annotations ServiceAccount에 대한 어노테이션 {}
serviceAccount.automountServiceAccountToken 기본 ServiceAccount 액세스 토큰을 팟에 마운트해야 하는지 여부를 나타냄 false
serviceAccount.enabled ServiceAccount 사용 여부 false
serviceAccount.create ServiceAccount를 생성해야 하는지 여부를 나타냄 false
serviceAccount.name ServiceAccount의 이름, 설정되지 않으면 전체 차트 이름이 사용됨  
tolerations Mailroom에 추가할 견디기 설정  
priorityClassName 팟에 할당된 우선순위 클래스  

KEDA 구성

keda 섹션은 보통의 HorizontalPodAutoscalers 대신 KEDA ScaledObjects의 설치를 가능하게 합니다. 이 구성은 선택 사항이며 사용자 정의 또는 외부 지표에 기반한 오토스케일링이 필요할 때 사용할 수 있습니다.

대부분의 설정은 해당되는 경우 hpa 섹션에 설정된 값으로 기본 설정됩니다.

다음 조건을 충족하면 CPU 및 메모리 트리거가 자동으로 추가됩니다:

  • triggers가 설정되지 않았을 때.
  • 해당하는 request.cpu.request 또는 request.memory.request 설정도 0이 아닌 값으로 설정되어 있는 경우.

트리거가 설정되지 않은 경우 ScaledObject가 생성되지 않습니다.

더 많은 세부 정보는 KEDA 문서를 참조하세요.

Name Type Default Description
enabled Boolean false KEDA ScaledObjects 대신 HorizontalPodAutoscalers 사용
pollingInterval Integer 30 각 트리거를 확인하는 간격
cooldownPeriod Integer 300 자원을 0으로 다시 스케일링하기 전에 마지막 트리거가 활성 상태로보고된 후 기다리는 기간
minReplicaCount Integer   KEDA가 리소스를 줄일 때 스케일링할 최소 레플리카 수, 기본값은 hpa.minReplicas
maxReplicaCount Integer   KEDA가 리소스를 늘릴 때 스케일링할 최대 레플리카 수, 기본값은 hpa.maxReplicas
fallback Map   KEDA 폴백 구성, 문서 참조
hpaName String   KEDA가 생성할 HPA 리소스의 이름, 기본값은 keda-hpa-{scaled-object-name}
restoreToOriginalReplicaCount Boolean   ScaledObject가 삭제된 후 대상 리소스를 원래 레플리카 수로 다시 스케일하는지 여부 지정
behavior Map   상위 및 하위 스케일링 동작 사양, 기본값은 hpa.behavior
triggers Array   대상 리소스의 스케일링을 활성화하는 트리거 목록, 기본값은 hpa.cpuhpa.memory에서 계산된 트리거

수신 이메일

기본적으로 수신 이메일은 비활성화되어 있습니다. 수신 이메일을 읽는 두 가지 방법이 있습니다:

먼저 공통 설정을 설정하여 활성화합니다. 그런 다음 IMAP 설정 또는 Microsoft 그래프 설정을 구성하세요.

이러한 방법은 values.yaml에서 구성할 수 있습니다. 다음 예제를 참조하세요:

IMAP

IMAP를 위한 수신 이메일을 활성화하려면 global.appConfig.incomingEmail 설정을 사용하여 IMAP 서버 및 액세스 자격 증명의 세부 정보를 제공하세요.

또한 IMAP 이메일 계정에 대한 요구 사항을 검토하여 GitLab이 이메일 수신에 사용할 수 있는 대상 IMAP 계정이 확인되어야 합니다. 일반적인 이메일 서비스에 대한 자세한 내용은 동일한 페이지에서 문서화되어 있어서 수신 이메일 설정에 도움이 됩니다.

IMAP 암호는 여전히 시크릿 가이드에 설명된 대로 Kubernetes 시크릿으로 생성해야 합니다.

Microsoft 그래프

Microsoft 그래프 설정에서 테넌트 ID, 클라이언트 ID 및 클라이언트 비밀을 제공하세요. 이러한 설정에 대한 자세한 내용은 command line options에서 확인할 수 있습니다.

Microsoft Graph 클라이언트 비밀에 해당하는 Kubernetes 시크릿을 시크릿 가이드에 설명된 대로 생성하세요.

이메일에 응답하기

사용자가 문제 및 MR에 대해 알림 이메일에 회신하여 코멘트를 달 수 있는 회신 이메일 기능을 사용하려면 발신 이메일 및 수신 이메일 설정을 모두 구성해야 합니다.

서비스 데스크 이메일

기본적으로 서비스 데스크 이메일은 비활성화되어 있습니다.

수신 이메일과 마찬가지로 공통 설정을 설정하여 활성화합니다. 그런 다음 IMAP 설정 또는 Microsoft Graph 설정을 구성하세요.

이러한 옵션은 values.yaml에서 구성할 수도 있습니다. 다음 예제를 참조하세요:

IMAP

IMAP 서버 및 액세스 자격 증명의 세부 정보를 global.appConfig.serviceDeskEmail 설정을 사용하여 제공하세요. 이러한 설정에 대한 자세한 내용은 command line options에서 확인할 수 있습니다.

서비스 데스크 이메일에 대한 IMAP 암호를 시크릿 가이드에 설명된 대로 Kubernetes 시크릿으로 생성하세요.


This large document has been accurately translated, maintaining the original Markdown formatting and ensuring that specific terms remain in English. If you have any more sections left to be translated, please do not hesitate to reach out.

Microsoft Graph

Azure Active Directory 애플리케이션 생성에 대한 GitLab 설명서를 참조하십시오.

global.appConfig.serviceDeskEmail 설정을 사용하여 테넌트 ID, 클라이언트 ID 및 클라이언트 비밀을 제공하십시오. 이러한 설정에 대한 자세한 내용은 command line options에서 확인할 수 있습니다.

또한 secrets guide에 설명된대로 클라이언트 비밀을 포함하는 Kubernetes 시크릿을 생성해야 합니다.

serviceAccount

이 섹션은 ServiceAccount를 생성해야 하는지와 기본 액세스 토큰을 파드에 마운트해야 하는지 여부를 제어합니다.

이름 유형 기본값 설명
annotations Map {} ServiceAccount 어노테이션.
automountServiceAccountToken Boolean false 기본 ServiceAccount 액세스 토큰을 파드에 마운트할지 여부를 제어합니다. 일부 사이드카가 제대로 작동하려면(예: Istio) 필요한 경우에만 활성화해야 합니다.
create Boolean false ServiceAccount를 생성해야 하는지 여부를 나타냅니다.
enabled Boolean false ServiceAccount를 사용할지 여부를 나타냅니다.
name String   ServiceAccount의 이름. 설정되지 않으면 전체 차트 이름이 사용됩니다.

affinity

자세한 내용은 affinity를 참조하십시오.