Skip to main content
Astra Control Center
이 제품의 최신 릴리즈를 사용할 수 있습니다.
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

Astra Control Center를 업그레이드합니다

기여자 netapp-mwallis

Astra Control Center를 업그레이드하려면 NetApp Support 사이트에서 설치 번들을 다운로드하고 다음 지침을 완료하십시오. 이 절차를 사용하여 인터넷에 연결되거나 공기가 연결된 환경에서 Astra Control Center를 업그레이드할 수 있습니다.

시작하기 전에

업그레이드하기 전에 환경이 에 맞는지 확인하십시오 "Astra Control Center 구축을 위한 최소 요구 사항". 환경에 다음이 있어야 합니다.

  • 지원되는 Astra Trident 버전

    Details

    실행 중인 Trident 버전 확인:

    kubectl get tridentversion -n trident

    을 참조하십시오 "Astra Trident 문서" 이전 버전에서 업그레이드하는 경우.

    경고 Kubernetes 1.25로 업그레이드하기 전에 * Astra Trident 22.10 * 으로 업그레이드해야 합니다.
  • 지원되는 Kubernetes 배포

    Details

    실행 중인 Kubernetes 버전 확인:

    kubectl get nodes -o wide
  • 충분한 클러스터 리소스

    Details

    사용 가능한 클러스터 리소스 결정:

    kubectl describe node <node name>
  • Astra Control Center 이미지를 푸시 및 업로드하는 데 사용할 수 있는 레지스트리입니다

  • 기본 스토리지 클래스입니다

    Details

    기본 스토리지 클래스 확인:

    kubectl get storageclass
  • 사용 가능한 정상 API 서비스

    Details

    모든 API 서비스가 정상 상태이며 사용 가능한지 확인합니다.

    kubectl get apiservices
  • (OpenShift에만 해당) 사용 가능한 정상 클러스터 운영자

    Details

    모든 클러스터 운영자가 양호한 상태이며 사용 가능한지 확인합니다.

    kubectl get clusteroperators
중요함 이 절차의 일부로 해야 합니다 Astra Control Center를 업그레이드하는 경우 이 업데이트된 연산자를 사용하여 이전 버전의 Astra Control Center로 업그레이드할 수 없습니다.
이 작업에 대해

Astra Control Center 업그레이드 프로세스는 다음과 같은 고급 단계를 안내합니다.

참고 업그레이드를 시작하기 전에 Astra Control Center UI에서 로그아웃하십시오.
중요함 Astra Control Center 운영자를 삭제하지 마십시오(예: kubectl delete -f astra_control_center_operator_deploy.yaml) 포드가 삭제되지 않도록 Astra Control Center 업그레이드 또는 작업 중 언제든지.
팁 스케줄, 백업 및 스냅샷이 실행되고 있지 않은 경우 유지보수 창에서 업그레이드를 수행합니다.

Astra Control Center를 다운로드하고 압축을 풉니다

  1. 로 이동합니다 "Astra Control Center 제품 다운로드 페이지" 를 방문하십시오. 드롭다운 메뉴에서 최신 버전 또는 원하는 다른 버전을 선택할 수 있습니다.

  2. (권장되지만 선택 사항) Astra Control Center용 인증서 및 서명 번들을 다운로드합니다 (astra-control-center-certs-[version].tar.gz)를 클릭하여 번들 서명을 확인합니다.

    자세한 내용을 보려면 를 확장합니다
    tar -vxzf astra-control-center-certs-[version].tar.gz
    openssl dgst -sha256 -verify certs/AstraControlCenter-public.pub -signature certs/astra-control-center-[version].tar.gz.sig astra-control-center-[version].tar.gz

    출력이 표시됩니다 Verified OK 확인 성공 후.

  3. Astra Control Center 번들에서 이미지를 추출합니다.

    tar -vxzf astra-control-center-[version].tar.gz

NetApp Astra kubtl 플러그인을 제거하고 다시 설치합니다

NetApp Astra kubtl 명령줄 플러그인을 사용하여 이미지를 로컬 Docker 저장소로 푸시할 수 있습니다.

  1. 플러그인이 설치되어 있는지 확인합니다.

    kubectl astra
  2. 다음 작업 중 하나를 수행합니다.

    • 플러그인이 설치되어 있는 경우 kubeck 플러그인 도움말을 반환해야 하며 kubbctl-Astra의 기존 버전을 제거할 수 있습니다. delete /usr/local/bin/kubectl-astra.

    • 명령이 오류를 반환하면 플러그인이 설치되지 않은 것이므로 다음 단계를 수행하여 설치할 수 있습니다.

  3. 플러그인 설치:

    1. 사용 가능한 NetApp Astra kubectl 플러그인 바이너리를 나열하고 운영 체제 및 CPU 아키텍처에 필요한 파일 이름을 적어 주십시오.

      참고 kubbeck 플러그인 라이브러리는 tar 번들의 일부이며 폴더에 압축이 풀립니다 kubectl-astra.
    ls kubectl-astra/
    1. 올바른 바이너리를 현재 경로로 이동하고 이름을 로 변경합니다 kubectl-astra:

      cp kubectl-astra/<binary-name> /usr/local/bin/kubectl-astra

이미지를 로컬 레지스트리에 추가합니다

  1. 용기 엔진에 적합한 단계 시퀀스를 완료합니다.

Docker 를 참조하십시오
  1. 타볼의 루트 디렉토리로 변경합니다. 가 표시됩니다 acc.manifest.bundle.yaml 파일 및 다음 디렉토리:

    acc/
    kubectl-astra/
    acc.manifest.bundle.yaml

  2. Astra Control Center 이미지 디렉토리의 패키지 이미지를 로컬 레지스트리에 밀어 넣습니다. 를 실행하기 전에 다음 대체 작업을 수행합니다 push-images 명령:

    • <BUNDLE_FILE>를 Astra Control 번들 파일의 이름으로 바꿉니다 (acc.manifest.bundle.yaml)를 클릭합니다.

    • <MY_FULL_REGISTRY_PATH>를 Docker 저장소의 URL로 바꿉니다. 예를 들어, "https://<docker-registry>".

    • <MY_REGISTRY_USER>를 사용자 이름으로 바꿉니다.

    • <MY_REGISTRY_TOKEN>를 레지스트리에 대한 인증된 토큰으로 바꿉니다.

      kubectl astra packages push-images -m <BUNDLE_FILE> -r <MY_FULL_REGISTRY_PATH> -u <MY_REGISTRY_USER> -p <MY_REGISTRY_TOKEN>
팟맨
  1. 타볼의 루트 디렉토리로 변경합니다. 이 파일과 디렉토리가 표시됩니다.

    acc.manifest.bundle.yaml
    acc/

  2. 레지스트리에 로그인합니다.

    podman login <YOUR_REGISTRY>
  3. 사용하는 Podman 버전에 맞게 사용자 지정된 다음 스크립트 중 하나를 준비하고 실행합니다. <MY_FULL_REGISTRY_PATH>를 모든 하위 디렉토리가 포함된 리포지토리의 URL로 대체합니다.

    Podman 4
    export REGISTRY=<MY_FULL_REGISTRY_PATH>
    export PACKAGENAME=acc
    export PACKAGEVERSION=23.07.0-25
    export DIRECTORYNAME=acc
    for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
    astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
    astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
    podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    done
    Podman 3
    export REGISTRY=<MY_FULL_REGISTRY_PATH>
    export PACKAGENAME=acc
    export PACKAGEVERSION=23.07.0-25
    export DIRECTORYNAME=acc
    for astraImageFile in $(ls ${DIRECTORYNAME}/images/*.tar) ; do
    astraImage=$(podman load --input ${astraImageFile} | sed 's/Loaded image: //')
    astraImageNoPath=$(echo ${astraImage} | sed 's:.*/::')
    podman tag ${astraImageNoPath} ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    podman push ${REGISTRY}/netapp/astra/${PACKAGENAME}/${PACKAGEVERSION}/${astraImageNoPath}
    done
    참고 레지스트리 구성에 따라 스크립트가 만드는 이미지 경로는 다음과 같아야 합니다.
    https://netappdownloads.jfrog.io/docker-astra-control-prod/netapp/astra/acc/23.07.0-25/image:version

업데이트된 Astra Control Center 운영자를 설치합니다

  1. 디렉토리를 변경합니다.

    cd manifests
  2. Astra Control Center 운영자 배포 YAML을 편집합니다 (astra_control_center_operator_deploy.yaml)를 클릭하여 로컬 레지스트리 및 암호를 참조합니다.

    vim astra_control_center_operator_deploy.yaml
    1. 인증이 필요한 레지스트리를 사용하는 경우 의 기본 줄을 바꾸거나 편집합니다 imagePullSecrets: [] 다음 포함:

      imagePullSecrets: [{name: astra-registry-cred}]
    2. 변경 ASTRA_IMAGE_REGISTRY 의 경우 kube-rbac-proxy 이미지를 에서 푸시한 레지스트리 경로로 이미지 이전 단계.

    3. 변경 ASTRA_IMAGE_REGISTRY 의 경우 acc-operator 이미지를 에서 푸시한 레지스트리 경로로 이미지 이전 단계.

    4. 에 다음 값을 추가합니다 env 섹션:

      - name: ACCOP_HELM_UPGRADETIMEOUT
        value: 300m
    샘플 Astra_control_center_operator_deploy.YAML:
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      labels:
        control-plane: controller-manager
      name: acc-operator-controller-manager
      namespace: netapp-acc-operator
    spec:
      replicas: 1
      selector:
        matchLabels:
          control-plane: controller-manager
      strategy:
        type: Recreate
      template:
        metadata:
          labels:
            control-plane: controller-manager
        spec:
          containers:
          - args:
            - --secure-listen-address=0.0.0.0:8443
            - --upstream=http://127.0.0.1:8080/
            - --logtostderr=true
            - --v=10
            image: ASTRA_IMAGE_REGISTRY/kube-rbac-proxy:v4.8.0
            name: kube-rbac-proxy
            ports:
            - containerPort: 8443
              name: https
          - args:
            - --health-probe-bind-address=:8081
            - --metrics-bind-address=127.0.0.1:8080
            - --leader-elect
            env:
            - name: ACCOP_LOG_LEVEL
              value: "2"
            - name: ACCOP_HELM_UPGRADETIMEOUT
              value: 300m
            image: ASTRA_IMAGE_REGISTRY/acc-operator:23.07.25
            imagePullPolicy: IfNotPresent
            livenessProbe:
              httpGet:
                path: /healthz
                port: 8081
              initialDelaySeconds: 15
              periodSeconds: 20
            name: manager
            readinessProbe:
              httpGet:
                path: /readyz
                port: 8081
              initialDelaySeconds: 5
              periodSeconds: 10
            resources:
              limits:
                cpu: 300m
                memory: 750Mi
              requests:
                cpu: 100m
                memory: 75Mi
            securityContext:
              allowPrivilegeEscalation: false
          imagePullSecrets: []
          securityContext:
            runAsUser: 65532
          terminationGracePeriodSeconds: 10
  3. 업데이트된 Astra Control Center 운영자를 설치합니다.

    kubectl apply -f astra_control_center_operator_deploy.yaml
    샘플 반응:
    namespace/netapp-acc-operator unchanged
    customresourcedefinition.apiextensions.k8s.io/astracontrolcenters.astra.netapp.io configured
    role.rbac.authorization.k8s.io/acc-operator-leader-election-role unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-manager-role configured
    clusterrole.rbac.authorization.k8s.io/acc-operator-metrics-reader unchanged
    clusterrole.rbac.authorization.k8s.io/acc-operator-proxy-role unchanged
    rolebinding.rbac.authorization.k8s.io/acc-operator-leader-election-rolebinding unchanged
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-manager-rolebinding configured
    clusterrolebinding.rbac.authorization.k8s.io/acc-operator-proxy-rolebinding unchanged
    configmap/acc-operator-manager-config unchanged
    service/acc-operator-controller-manager-metrics-service unchanged
    deployment.apps/acc-operator-controller-manager configured
  4. Pod가 실행 중인지 확인합니다.

    kubectl get pods -n netapp-acc-operator

Astra Control Center를 업그레이드합니다

  1. Astra Control Center 사용자 지정 리소스(CR) 편집:

    kubectl edit AstraControlCenter -n [netapp-acc or custom namespace]
  2. Astra 버전 번호를 변경합니다 (astraVersion 의 내부 spec)를 업그레이드할 버전:

    spec:
      accountName: "Example"
      astraVersion: "[Version number]"
  3. 이미지 레지스트리 경로가 에서 이미지를 푸시한 레지스트리 경로와 일치하는지 확인합니다 이전 단계. 업데이트 imageRegistry 의 내부 spec 마지막 설치 이후 레지스트리가 변경된 경우

      imageRegistry:
        name: "[your_registry_path]"
  4. 에 다음을 추가합니다 crds 의 내부 구성 spec:

    crds:
      shouldUpgrade: true
  5. 에 다음 행을 추가합니다 additionalValues 의 내부 spec Astra Control Center CR에서 다음을 수행합니다.

    additionalValues:
        nautilus:
          startupProbe:
            periodSeconds: 30
            failureThreshold: 600
        polaris-keycloak:
          livenessProbe:
            initialDelaySeconds: 180
          readinessProbe:
            initialDelaySeconds: 180
  6. 파일 편집기를 저장하고 종료합니다. 변경 사항이 적용되고 업그레이드가 시작됩니다.

  7. (선택 사항) Pod가 종료되어 다시 사용할 수 있는지 확인합니다.

    watch kubectl get pods -n [netapp-acc or custom namespace]
  8. Astra Control 상태 조건이 업그레이드가 완료되어 준비되었음을 나타낼 때까지 기다립니다 (True):

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

    응답:

    NAME    UUID                                      VERSION     ADDRESS         READY
    astra   9aa5fdae-4214-4cb7-9976-5d8b4c0ce27f      23.07.0-25   10.111.111.111  True
    참고 작업 중에 업그레이드 상태를 모니터링하려면 다음 명령을 실행합니다. kubectl get AstraControlCenter -o yaml -n [netapp-acc or custom namespace]
    참고 Astra Control Center 운영자 로그를 검사하려면 다음 명령을 실행하십시오.
    kubectl logs deploy/acc-operator-controller-manager -n netapp-acc-operator -c manager -f

시스템 상태를 확인합니다

  1. Astra Control Center에 로그인합니다.

  2. 버전이 업그레이드되었는지 확인합니다. UI의 * 지원 * 페이지를 참조하십시오.

  3. 모든 관리되는 클러스터와 앱이 여전히 존재하고 보호되고 있는지 확인합니다.