Repository for dip
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

3.8 KiB

Rancher 배포

1. 배포시 주의 사항

2.custom-values.yaml 설명

  • custom-values.yaml에 정의된 값에 대한 설명이다.

1) 오프라인 설정

  • private 환경 배포시 사용한다.
Name 설명 기본값
systemDefaultRegistry 오프라인 설치 시에 설정.
paasup 설치시에는 "paasup.io"로 설정
""
rancherImage 오프라인 설치 시에 설정.
paasup 설치시에는 "paasup.io/rancher/rancher"로 설정
""

2) Pod 설정

Name 설명 기본값
extraEnv rancher pod의 replicas 설정. "1"
replicas rancher pod의 replicas 설정. "1"
tolerations rancher pod의 toleration 설정. []
nodeSelector rancher pod의 nodeSelector 설정. {}
resources.request.cpu rancher pod의 cpu requst 설정. "100m"
resources.request.memory rancher pod의 memory requst 설정. "300Mi"
resources.limits.cpu rancher pod의 cpu limits 설정. "300m"
resources.limits.memory rancher pod의 memory limits 설정. 500Mi

3) Timezone 설정

  • pod의 기본 timezone 설정을 위해 추가.
  • 기본값으로 KST를 사용하기 위하여 Asia/Seolul로 설정하였다.
extraEnv:
- name: TZ
  value: Asia/Seoul

4) Ingress 설정

4.1) tls 시크릿 직접 생성

  • Rancher에서 ingress 사용을 위해서는 다음과 같이 설정할 수 있다.

    # ingress 배포 전 인증서 secret 배포 필요(secret 이름은 platform)
    hostname: rancher.example.org
    ingress:
      enable: true
      tls:
        source: secret
        secretName: rancher-tls-ingress
      extraAnnotations:    
        konghq.com/connect-timeout: "30000"
        konghq.com/read-timeout: "1800000"
        konghq.com/write-timeout: "1800000"
    
    # 사설인증서 사용시 true 설정
    ## privateCA를 true로 설정
    privateCA: true
    
  • ingress 사용을 위해서는 인증서를 secret으로 제공해야한다. 로컬 파일을 이용해 secret을 생성하는 방법은 다음과 같다.

    kubectl create secret tls rancher-tls-ingress --cert=<path-to-cert-file> --key=<path-to-key-file> -n <namespace>
    
  • 사설 인증서 사용시에는 ca를 secret으로 생성해야 한다. 로컬 파일을 이용해 secret을 생성하는 방법은 다음과 같다. secret의 이름은 tls-ca로 생성해야 한다.

    kubectl create secret generic tls-ca --from-file=${CERT_FILE} -n ${NAMESPACE}
    

4.2) cert-manager를 이용한 자동 생성

  • cert manager를 통해 인증서 자동 생성 시 custom-values.yaml 수정한다.
# ingress 배포 전 인증서 secret 배포 필요(secret 이름은 platform)
hostname: rancher.example.org
ingress:
  enable: true
  tls:
    source: secret
    secretName: rancher-tls-secret
  extraAnnotations:    
    konghq.com/connect-timeout: "30000"
    konghq.com/read-timeout: "1800000"
    konghq.com/write-timeout: "1800000"


# 사설인증서 사용시 추가 설정
## privateCA를 true로 설정
privateCA: true
## 사설인증서 사용을 위한 전처리 작업을 true로 설정
preinstallHook: true