Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

설치 후 Astra Control Center를 구성합니다

기여자

환경에 따라 Astra Control Center를 설치한 후 추가 구성이 필요할 수 있습니다.

리소스 제한을 제거합니다

일부 환경에서는 ResourceQuotas 및 LimitRanges 개체를 사용하여 네임스페이스의 리소스가 클러스터에서 사용 가능한 모든 CPU 및 메모리를 사용하지 못하도록 합니다. Astra Control Center는 최대 제한을 설정하지 않으므로 해당 리소스를 준수하지 않습니다. 이러한 방식으로 환경을 구성한 경우 Astra Control Center를 설치할 네임스페이스에서 해당 리소스를 제거해야 합니다.

다음 단계를 사용하여 할당량 및 제한을 검색하고 제거할 수 있습니다. 이 예제에서 명령 출력은 명령 직후에 표시됩니다.

단계
  1. 에서 리소스 할당량을 가져옵니다 netapp-acc (또는 사용자 지정 이름) 네임스페이스:

    kubectl get quota -n [netapp-acc or custom namespace]

    응답:

    NAME          AGE   REQUEST                                        LIMIT
    pods-high     16s   requests.cpu: 0/20, requests.memory: 0/100Gi   limits.cpu: 0/200, limits.memory: 0/1000Gi
    pods-low      15s   requests.cpu: 0/1, requests.memory: 0/1Gi      limits.cpu: 0/2, limits.memory: 0/2Gi
    pods-medium   16s   requests.cpu: 0/10, requests.memory: 0/20Gi    limits.cpu: 0/20, limits.memory: 0/200Gi
  2. 이름으로 모든 리소스 할당량 삭제:

    kubectl delete resourcequota pods-high -n [netapp-acc or custom namespace]
    kubectl delete resourcequota pods-low -n [netapp-acc or custom namespace]
    kubectl delete resourcequota pods-medium -n [netapp-acc or custom namespace]
  3. 에서 제한 범위를 가져옵니다 netapp-acc (또는 사용자 지정 이름) 네임스페이스:

    kubectl get limits -n [netapp-acc or custom namespace]

    응답:

    NAME              CREATED AT
    cpu-limit-range   2022-06-27T19:01:23Z
  4. 이름별로 제한 범위를 삭제합니다.

    kubectl delete limitrange cpu-limit-range -n [netapp-acc or custom namespace]

사용자 지정 TLS 인증서를 추가합니다

Astra Control Center는 자체 서명된 TLS 인증서를 수신 컨트롤러 트래픽(특정 구성에만 해당)과 웹 브라우저를 통한 웹 UI 인증에 사용합니다. 프로덕션 사용을 위해 기존의 자체 서명된 TLS 인증서를 제거하고 인증 기관(CA)에서 서명한 TLS 인증서로 교체해야 합니다.

참고

자체 서명된 기본 인증서는 다음 두 가지 연결 유형에 사용됩니다.

  • Astra Control Center 웹 UI에 대한 HTTPS 연결

  • 수신 컨트롤러 트래픽(에만 해당 ingressType: "AccTraefik" 속성이 에 설정되었습니다 astra_control_center.yaml Astra Control Center 설치 중 파일)

기본 TLS 인증서를 교체하면 이러한 연결에 인증에 사용되는 인증서가 대체됩니다.

시작하기 전에
  • Astra Control Center가 설치된 Kubernetes 클러스터

  • 클러스터의 명령 셸에 대한 관리 액세스로 "kubbtl" 명령을 실행합니다

  • CA의 개인 키 및 인증서 파일

자체 서명된 인증서를 제거합니다

기존의 자체 서명된 TLS 인증서를 제거합니다.

  1. SSH를 사용하여 관리 사용자로 Astra Control Center를 호스팅하는 Kubernetes 클러스터에 로그인합니다.

  2. '<ACC-deployment-namespace>'를 Astra Control Center 배포 네임스페이스로 대체하여 현재 인증서와 연결된 TLS 암호를 찾습니다.

    kubectl get certificate -n <ACC-deployment-namespace>
  3. 다음 명령을 사용하여 현재 설치된 암호 및 인증서를 삭제합니다.

    kubectl delete cert cert-manager-certificates -n <ACC-deployment-namespace>
    kubectl delete secret secure-testing-cert -n <ACC-deployment-namespace>

명령줄을 사용하여 새 인증서를 추가합니다

CA에서 서명한 새 TLS 인증서를 추가합니다.

  1. 다음 명령을 사용하여 CA의 개인 키 및 인증서 파일로 새 TLS 암호를 만들고 대괄호 <>의 인수를 적절한 정보로 바꿉니다.

    kubectl create secret tls <secret-name> --key <private-key-filename> --cert <certificate-filename> -n <ACC-deployment-namespace>
  2. 다음 명령 및 예제를 사용하여 클러스터 CRD(Custom Resource Definition) 파일을 편집하고 'pec.selfSigned` 값을 'pec.ca.secretName` 으로 변경하여 앞에서 생성한 TLS 암호를 참조합니다.

    kubectl edit clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>

    CRD:

    #spec:
    #  selfSigned: {}
    
    spec:
      ca:
        secretName: <secret-name>
  3. 다음 명령 및 예제 출력을 사용하여 변경 사항이 올바르고 클러스터가 인증서를 검증할 준비가 되었는지 확인하고 "<ACC-deployment-namespace>"를 Astra Control Center 배포 네임스페이스로 대체합니다.

    kubectl describe clusterissuers.cert-manager.io/cert-manager-certificates -n <ACC-deployment-namespace>

    응답:

    Status:
      Conditions:
        Last Transition Time:  2021-07-01T23:50:27Z
        Message:               Signing CA verified
        Reason:                KeyPairVerified
        Status:                True
        Type:                  Ready
    Events:                    <none>
  4. 다음 예를 사용하여 대괄호 <>의 자리 표시자 값을 적절한 정보로 대체하여 "certificate.yAML" 파일을 작성합니다.

    참고 이 예에서는 를 사용합니다 dnsNames Astra Control Center DNS 주소를 지정하는 속성입니다. Astra Control Center는 DNS 주소를 지정하는 CN(Common Name) 속성을 사용할 수 없습니다.
    apiVersion: cert-manager.io/v1
    kind: Certificate
    metadata:
      name: <certificate-name>
      namespace: <ACC-deployment-namespace>
    spec:
      secretName: <certificate-secret-name>
      duration: 2160h # 90d
      renewBefore: 360h # 15d
      dnsNames:
      - <astra.dnsname.example.com> #Replace with the correct Astra Control Center DNS address
      issuerRef:
        kind: ClusterIssuer
        name: cert-manager-certificates
  5. 다음 명령을 사용하여 인증서를 생성합니다.

    kubectl apply -f certificate.yaml
  6. 다음 명령 및 예제 출력을 사용하여 인증서가 올바르게 만들어졌는지, 그리고 생성 중에 지정한 인수(예: 이름, 기간, 갱신 기한 및 DNS 이름)를 사용하여 확인합니다.

    kubectl describe certificate -n <ACC-deployment-namespace>

    응답:

    Spec:
      Dns Names:
        astra.example.com
      Duration:  125h0m0s
      Issuer Ref:
        Kind:        ClusterIssuer
        Name:        cert-manager-certificates
      Renew Before:  61h0m0s
      Secret Name:   <certificate-secret-name>
    Status:
      Conditions:
        Last Transition Time:  2021-07-02T00:45:41Z
        Message:               Certificate is up to date and has not expired
        Reason:                Ready
        Status:                True
        Type:                  Ready
      Not After:               2021-07-07T05:45:41Z
      Not Before:              2021-07-02T00:45:41Z
      Renewal Time:            2021-07-04T16:45:41Z
      Revision:                1
    Events:                    <none>
  7. TLS 편집 다음 명령 및 예제를 사용하여 새 인증서 암호 이름을 가리키도록 CRD를 저장합니다. 대괄호 <>의 개체 틀 값을 적절한 정보로 바꿉니다

    kubectl edit tlsstores.traefik.io -n <ACC-deployment-namespace>

    CRD:

    ...
    spec:
      defaultCertificate:
        secretName: <certificate-secret-name>
  8. 다음 명령 및 예제를 사용하여 새 인증서 암호를 가리키도록 수신 CRD TLS 옵션을 편집합니다. 대괄호 <>의 개체 틀 값을 적절한 정보로 바꿉니다.

    kubectl edit ingressroutes.traefik.io -n <ACC-deployment-namespace>

    CRD:

    ...
     tls:
        secretName: <certificate-secret-name>
  9. 웹 브라우저를 사용하여 Astra Control Center의 배포 IP 주소로 이동합니다.

  10. 인증서 세부 정보가 설치한 인증서의 세부 정보와 일치하는지 확인합니다.

  11. 인증서를 내보내고 결과를 웹 브라우저의 인증서 관리자로 가져옵니다.