5장. GitOps
5.1. Red Hat OpenShift GitOps 릴리스 정보
Red Hat OpenShift GitOps는 클라우드 네이티브 애플리케이션에 대한 연속 배포를 구현하는 선언적 방법입니다. Red Hat OpenShift GitOps를 사용하면 개발, 스테이징, 프로덕션과 같은 다양한 환경의 다양한 클러스터에 애플리케이션을 배포할 때 애플리케이션의 일관성을 유지할 수 있습니다. Red Hat OpenShift GitOps는 다음 작업을 자동화하는 데 도움이 됩니다.
- 클러스터의 구성, 모니터링, 스토리지 상태가 비슷한지 확인
- 알려진 상태에서 클러스터 복구 또는 재생성
- 여러 OpenShift Container Platform 클러스터에 구성 변경 사항 적용 또는 되돌리기
- 템플릿 구성을 다른 환경과 연결
- 스테이징에서 프로덕션까지 클러스터 전체에서 애플리케이션 승격
Red Hat OpenShift GitOps 개요는 OpenShift GitOps 이해를 참조하십시오.
5.1.1. 호환성 및 지원 매트릭스
이 릴리스의 일부 기능은 현재 기술 프리뷰 단계에 있습니다. 이러한 실험적 기능은 프로덕션용이 아닙니다.
아래 표에서 기능은 다음과 같은 상태로 표시되어 있습니다.
- TP: 기술 프리뷰
- GA: 정식 출시일 (GA)
OpenShift GitOps | 구성 요소 버전 | OpenShift Versions | 지원 상태 | |||||
---|---|---|---|---|---|---|---|---|
버전 | kam | Helm | Kustomize | Argo CD | ApplicationSet | DEX | ||
1.6.0 | 0.0.46 TP | 3.8.1 GA | 4.4.1 GA | 2.4.5 GA | 2.4.5 GA | 2.30.3 GA | 4.8-4.11 | GA |
1.5.0 | 0.0.42 TP | 3.8.0 GA | 4.4.1 GA | 2.3.3 GA | 0.4.1 TP | 2.30.3 GA | 4.8-4.11 | GA |
1.4.0 | 0.0.41 TP | 3.7.1 GA | 4.2.0 GA | 2.2.2 GA | 0.2.0 TP | 2.30.0 GA | 4.7-4.11 | GA |
1.3.0 | 0.0.40 | 3.6.0 | 4.2.0 | 2.1.2 | 0.2.0 | 2.28.0 | 4.7-4.9 | GA |
1.2.0 | 0.0.38 | 3.5.0 | 3.9.4 | 2.0.5 | 0.1.0 | 해당 없음 | 4.8 | GA |
1.1.0 | 0.0.32 | 3.5.0 | 3.9.4 | 2.0.0 | 해당 없음 | 해당 없음 | 4.7 | GA |
OpenShift Container Platform 4.6에서 Red Hat OpenShift GitOps v1.3을 사용하려면 Red Hat OpenShift GitOps를 새로 설치하십시오. OpenShift 4.6의 Red Hat OpenShift GitOps 1.0(TP)의 업그레이드 경로는 없습니다.
5.1.2. 보다 포괄적 수용을 위한 오픈 소스 용어 교체
Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.
5.1.3. Red Hat OpenShift GitOps 1.6.6 릴리스 노트
Red Hat OpenShift GitOps 1.6.6은 이제 OpenShift Container Platform 4.8, 4.9, 4.10 및 4.11에서 사용할 수 있습니다.
5.1.3.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 v0.5.0부터 모든 Argo CD Operator 버전이 정보 공개 취약점에 취약했습니다. 결과적으로 권한이 없는 사용자가 API 오류 메시지를 검사하여 애플리케이션 이름을 열거하고 검색된 애플리케이션 이름을 다른 공격의 시작점으로 사용할 수 있습니다. 예를 들어 공격자는 애플리케이션 이름에 대한 지식을 사용하여 관리자에게 더 높은 권한을 부여하도록 유도할 수 있습니다. 이번 업데이트에서는 CVE-2022-41354 오류가 수정되었습니다. GITOPS-2635, CVE-2022-41354
5.1.4. Red Hat OpenShift GitOps 1.6.7 릴리스 노트
Red Hat OpenShift GitOps 1.6.7은 이제 OpenShift Container Platform 4.8, 4.9, 4.10 및 4.11에서 사용할 수 있습니다.
5.1.4.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 v0.5.0부터 모든 Argo CD Operator 버전이 정보 공개 취약점에 취약했습니다. 결과적으로 권한이 없는 사용자가 API 오류 메시지를 검사하여 애플리케이션 이름을 열거하고 검색된 애플리케이션 이름을 다른 공격의 시작점으로 사용할 수 있습니다. 예를 들어 공격자는 애플리케이션 이름에 대한 지식을 사용하여 관리자에게 더 높은 권한을 부여하도록 유도할 수 있습니다. 이번 업데이트에서는 CVE-2022-41354 오류가 수정되었습니다. GITOPS-2635, CVE-2022-41354
5.1.5. Red Hat OpenShift GitOps 1.6.2 릴리스 노트
Red Hat OpenShift GitOps 1.6.2는 이제 OpenShift Container Platform 4.8, 4.9, 4.10 및 4.11에서 사용할 수 있습니다.
5.1.5.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 프로젝트에 Operator 5개 이상을 설치할 때 누락된 InstallPlan 에 대한 서브스크립션 상태 점검이 성능이 저하 되었습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. GITOPS-2018
- 이번 업데이트 이전에는 Red Hat OpenShift GitOps Operator에서 Argo CD 인스턴스가 더 이상 사용되지 않는 필드를 사용했음을 탐지할 때마다 사용 중단 알림 경고와 함께 클러스터를 스팸했습니다. 이번 업데이트에서는 이 문제를 해결했으며 필드를 감지하는 각 인스턴스에 대해 하나의 경고 이벤트만 표시합니다. GITOPS-2230
- OpenShift Container Platform 4.12에서는 콘솔을 설치하는 것이 선택 사항입니다. 이번 수정을 통해 콘솔이 설치되지 않은 경우 Operator에 오류가 발생하지 않도록 Red Hat OpenShift GitOps Operator가 업데이트되었습니다. GITOPS-2352
5.1.6. Red Hat OpenShift GitOps 1.6.1 릴리스 노트
Red Hat OpenShift GitOps 1.6.1은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.6.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 다수의 애플리케이션이 활성 프로브의 응답하지 않음으로 인해 애플리케이션 컨트롤러가 여러 번 다시 시작되었습니다. 이번 업데이트에서는 애플리케이션 컨트롤러
StatefulSet
오브젝트에서 활성 프로브를 제거하여 문제를 해결합니다. GITOPS-2153 이번 업데이트 이전에는 인증 기관에서 서명하지 않은 인증서로 설정되는 경우 RHSSO 인증서를 검증할 수 없습니다. 이번 업데이트에서는 이 문제를 수정하고 이제 통신할 때 Keycloak의 TLS 인증서를 확인하는 데 사용할 사용자 정의 인증서를 제공할 수 있습니다.
rootCA
를 Argo CD 사용자 정의 리소스.spec.keycloak.rootCA
필드에 추가할 수 있습니다. Operator는 이 변경 사항을 조정하고argocd-cm
ConfigMap
의oidc.config
필드를 PEM 인코딩 루트 인증서로 업데이트합니다. GITOPS-2214참고.spec.keycloak.rootCA
필드를 업데이트한 후 Argo CD 서버 Pod를 다시 시작하십시오.예를 들면 다음과 같습니다.
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: basic spec: sso: provider: keycloak keycloak: rootCA: | ---- BEGIN CERTIFICATE ---- This is a dummy certificate Please place this section with appropriate rootCA ---- END CERTIFICATE ---- server: route: enabled: true
- 이번 업데이트 이전에는 Argo CD에서 관리하는 종료 네임스페이스가 다른 관리 네임스페이스의 역할 및 기타 구성 생성을 차단합니다. 이번 업데이트에서는 이 문제가 해결되었습니다. GITOPS-2277
-
이번 업데이트 이전에는
anyuid
의 SCC가 DexServiceAccount
리소스에 할당되면 Dex Pod가CreateContainerConfigError
로 시작하지 못했습니다. 이번 업데이트에서는 기본 사용자 ID를 Dex 컨테이너에 할당하여 이 문제를 해결합니다. GITOPS-2235
5.1.7. Red Hat OpenShift GitOps 1.6.0 릴리스 노트
Red Hat OpenShift GitOps 1.6.0은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.7.1. 새로운 기능
현재 릴리스에서는 다음과 같은 개선 사항이 추가되었습니다.
-
이전에는 Argo CD
ApplicationSet
컨트롤러가TP(기술 프리뷰) 기능이었습니다. 이번 업데이트를 통해 GA(General Availability) 기능입니다. GITOPS-1958 -
이번 업데이트를 통해 Red Hat OpenShift GitOps의 최신 릴리스는
최신
버전 기반 채널에서 사용할 수 있습니다. 이러한 업그레이드를 가져오려면Subscription
오브젝트 YAML 파일에서channel
매개변수를 업데이트합니다. 값을stable
에서최신
또는gitops-1.6
과 같은 버전 기반 채널로 변경합니다. GITOPS-1791 -
이번 업데이트를 통해 keycloak 구성을 제어하는
spec.sso
필드의 매개변수가.spec.sso.keycloak
로 이동합니다..spec.dex
필드의 매개변수가.spec.sso.dex
에 추가되었습니다..spec.sso.provider
를 사용하여 Dex를 활성화하거나 비활성화합니다..spec.dex
매개변수는 더 이상 사용되지 않으며 keycloak 구성에 대한DISABLE_DEX
및.spec.sso
필드와 함께 버전 1.9에서 제거될 예정입니다. GITOPS-1983 -
이번 업데이트를 통해 Argo CD 알림 컨트롤러는 Argo CD 사용자 정의 리소스 정의에서
.spec.notifications.enabled
매개변수를 사용하여 활성화하거나 비활성화할 수 있는 선택적 워크로드입니다. Argo CD 알림 컨트롤러는 기술 프리뷰 기능입니다. GITOPS-1917
Argo CD 알림 컨트롤러는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.
- 이번 업데이트를 통해 Tekton 파이프라인 실행 및 작업 실행에 대한 리소스 제외가 기본적으로 추가됩니다. Argo CD는 기본적으로 이러한 리소스를 정리합니다. 이러한 리소스 제외는 OpenShift Container Platform에서 생성된 새로운 Argo CD 인스턴스에 추가됩니다. CLI에서 인스턴스가 생성되는 경우 리소스가 추가되지 않습니다. GITOPS-1876
-
이번 업데이트를 통해 Argo CD Operand의 사용자 정의 리소스 정의에서
resourcetracingingMethod 매개변수를 설정하여 Argo CD CD에서 사용하는 추적
방법을 선택할 수 있습니다. GITOPS-1862 -
이번 업데이트를 통해 Red Hat OpenShift GitOps Argo CD 사용자 정의 리소스의
extraConfig
필드를 사용하여argocd-cm
configMap에 항목을 추가할 수 있습니다. 지정된 항목은 검증 없이 라이브config-cm
configMap으로 조정됩니다. GITOPS-1964 - 이번 업데이트를 통해 OpenShift Container Platform 4.11 이상에서는 Red Hat OpenShift GitOps 개발자 화면의 Red Hat OpenShift GitOps 환경 세부 정보 페이지에 각 배포 버전에 대한 링크와 함께 애플리케이션 환경 배포 기록이 표시됩니다. GITOPS-1269
- 이번 업데이트를 통해 Operator에서 템플릿 리소스 또는 "소스"로 사용되는 Argo CD를 사용하여 리소스를 관리할 수 있습니다. GITOPS-982
- 이번 업데이트를 통해 Operator는 Kubernetes 1.24에서 활성화된 Pod 보안 승인을 충족하기 위해 올바른 권한으로 Argo CD 워크로드를 구성합니다. GITOPS-2026
- 이번 업데이트를 통해 Config Management Plugins 2.0이 지원됩니다. Argo CD 사용자 정의 리소스를 사용하여 리포지토리 서버의 사이드바 컨테이너를 지정할 수 있습니다. GITOPS-776
- 이번 업데이트를 통해 Argo CD 구성 요소와 Redis 캐시 간의 모든 통신이 최신 TLS 암호화를 사용하여 보호됩니다. GITOPS-720
- 이번 Red Hat OpenShift GitOps 릴리스에는 IBM Z 및 IBM Power on OpenShift Container Platform 4.10 지원이 추가되었습니다. 제한된 환경에서의 설치는 IBM Z 및 IBM Power에서 지원되지 않습니다.
5.1.7.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 south
:serviceaccount:argocd:gitops-argocd-application-controller
컨트롤러가 네임스페이스의monitoring.coreos.com
API 그룹에 "prometheusrules" 리소스를 생성하지 않았습니다.이번 업데이트에서는 이 문제가 해결되어 Red Hat OpenShift GitOps가
monitoring.coreos.com
API 그룹의 모든 리소스를 관리할 수 있습니다. GITOPS-1638 -
이번 업데이트 이전에는 클러스터 권한을 재조정하는 동안 시크릿이 클러스터 구성 인스턴스에 속하는 경우 삭제되었습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. 이제 시크릿 대신 시크릿의
namespaces
필드가 삭제됩니다. GITOPS-1777 -
이번 업데이트 이전에는 Operator를 통해 Argo CD의 HA 변형을 설치한 경우 Operator에서
podAntiAffinity
규칙 대신podAffinity
규칙을 사용하여 RedisStatefulSet
오브젝트를 생성했습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. 이제 Operator에서podAntiAffinity
규칙과 RedisStatefulSet
를 생성합니다. GITOPS-1645 -
이번 업데이트 이전에는 Argo CD ApplicationSet 에 너무 많은
ssh
Zombie 프로세스가 있었습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. 이는 프로세스를 생성하고 좀비를 ApplicationSet 컨트롤러에 생성하는 간단한 init 데몬인 tini를 추가합니다. 이렇게 하면SIGTERM
신호가 실행 중인 프로세스에 올바르게 전달되어 좀비 프로세스가 되지 않습니다. GITOPS-2108
5.1.7.3. 확인된 문제
Red Hat OpenShift GitOps Operator는 Dex 외에도 OIDC를 통해 RHSSO(KeyCloak)를 사용할 수 있습니다. 그러나 최근 보안 수정 사항이 적용된 경우 일부 시나리오에서는 RHSSO 인증서를 검증할 수 없습니다. GITOPS-2214
이 문제를 해결하려면 ArgoCD 사양에서 OIDC(Keycloak/RHSSO) 엔드포인트에 대한 TLS 검증을 비활성화합니다.
spec: extraConfig: oidc.tls.insecure.skip.verify: "true" ...
5.1.8. Red Hat OpenShift GitOps 1.5.7 릴리스 노트
Red Hat OpenShift GitOps 1.5.7은 이제 OpenShift Container Platform 4.8, 4.9, 4.10 및 4.11에서 사용할 수 있습니다.
5.1.8.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- OpenShift Container Platform 4.12에서는 콘솔을 설치하는 것이 선택 사항입니다. 이번 수정을 통해 콘솔이 설치되지 않은 경우 Operator에 오류가 발생하지 않도록 Red Hat OpenShift GitOps Operator가 업데이트되었습니다. GITOPS-2353
5.1.9. Red Hat OpenShift GitOps 1.5.6 릴리스 노트
Red Hat OpenShift GitOps 1.5.6은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.9.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 다수의 애플리케이션이 활성 프로브의 응답하지 않음으로 인해 애플리케이션 컨트롤러가 여러 번 다시 시작되었습니다. 이번 업데이트에서는 애플리케이션 컨트롤러
StatefulSet
오브젝트에서 활성 프로브를 제거하여 문제를 해결합니다. GITOPS-2153 이번 업데이트 이전에는 인증 기관에서 서명하지 않은 인증서로 설정되는 경우 RHSSO 인증서를 검증할 수 없습니다. 이번 업데이트에서는 이 문제를 수정하고 이제 통신할 때 Keycloak의 TLS 인증서를 확인하는 데 사용할 사용자 정의 인증서를 제공할 수 있습니다.
rootCA
를 Argo CD 사용자 정의 리소스.spec.keycloak.rootCA
필드에 추가할 수 있습니다. Operator는 이 변경 사항을 조정하고argocd-cm
ConfigMap
의oidc.config
필드를 PEM 인코딩 루트 인증서로 업데이트합니다. GITOPS-2214참고.spec.keycloak.rootCA
필드를 업데이트한 후 Argo CD 서버 Pod를 다시 시작하십시오.예를 들면 다음과 같습니다.
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: basic spec: sso: provider: keycloak keycloak: rootCA: | ---- BEGIN CERTIFICATE ---- This is a dummy certificate Please place this section with appropriate rootCA ---- END CERTIFICATE ---- server: route: enabled: true
- 이번 업데이트 이전에는 Argo CD에서 관리하는 종료 네임스페이스가 다른 관리 네임스페이스의 역할 및 기타 구성 생성을 차단합니다. 이번 업데이트에서는 이 문제가 해결되었습니다. GITOPS-2277
-
이번 업데이트 이전에는
anyuid
의 SCC가 DexServiceAccount
리소스에 할당되면 Dex Pod가CreateContainerConfigError
로 시작하지 못했습니다. 이번 업데이트에서는 기본 사용자 ID를 Dex 컨테이너에 할당하여 이 문제를 해결합니다. GITOPS-2235
5.1.10. Red Hat OpenShift GitOps 1.5.5 릴리스 노트
Red Hat OpenShift GitOps 1.5.5는 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.10.1. 새로운 기능
현재 릴리스에서는 다음과 같은 개선 사항이 추가되었습니다.
- 이번 업데이트를 통해 번들된 Argo CD가 2.3.7 버전으로 업데이트되었습니다.
5.1.10.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 클러스터에 더 제한적인 SCC가 있는 경우 ArgoCD 인스턴스의
redis-ha-haproxy
Pod가 실패했습니다. 이번 업데이트에서는 워크로드의 보안 컨텍스트를 업데이트하여 문제를 해결합니다. GITOPS-2034
5.1.10.3. 확인된 문제
Red Hat OpenShift GitOps Operator는 OIDC 및 Dex와 함께 RHSSO(KeyCloak)를 사용할 수 있습니다. 그러나 최근 보안 수정 사항이 적용된 경우 Operator는 일부 시나리오에서 RHSSO 인증서를 검증할 수 없습니다. GITOPS-2214
이 문제를 해결하려면 ArgoCD 사양에서 OIDC(Keycloak/RHSSO) 엔드포인트에 대한 TLS 검증을 비활성화합니다.
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd spec: extraConfig: "admin.enabled": "true" ...
5.1.11. Red Hat OpenShift GitOps 1.5.4 릴리스 노트
Red Hat OpenShift GitOps 1.5.4는 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.11.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 Red Hat OpenShift GitOps에서 이전 버전의 REDIS 5 이미지 태그를 사용하고 있었습니다. 이번 업데이트에서는 문제를 해결하고
rhel8/redis-5
이미지 태그를 업그레이드합니다. GITOPS-2037
5.1.12. Red Hat OpenShift GitOps 1.5.3 릴리스 노트
Red Hat OpenShift GitOps 1.5.3은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.12.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 Argo CD v1.0.0 이상의 패치되지 않은 모든 버전이 교차 사이트 스크립팅 버그에 취약합니다. 결과적으로 권한이 없는 사용자는 UI에 javascript 링크를 삽입할 수 있습니다. 이제 이 문제가 해결되었습니다. CVE-2022-31035
- 이번 업데이트 이전에는 Argo CD v0.11.0 이상의 모든 버전이 Argo CD CLI 또는 UI에서 SSO 로그인을 시작할 때 여러 공격에 취약합니다. 이제 이 문제가 해결되었습니다. CVE-2022-31034
- 이번 업데이트 이전에는 Argo CD v1.0.0 이상의 패치되지 않은 모든 버전이 교차 사이트 스크립팅 버그에 취약합니다. 그 결과 권한이 없는 사용자는 UI에 JavaScript 링크를 삽입할 수 있었습니다. 이제 이 문제가 해결되었습니다. CVE-2022-31016
- 이번 업데이트 이전에는 Argo CD v1.3.0의 패치되지 않은 모든 버전이 symlink-following 버그에 취약합니다. 결과적으로 리포지터리 쓰기 액세스 권한이 있는 인증되지 않은 사용자는 Argo CD의 repo-server에서 중요한 YAML 파일을 유출할 수 있습니다. 이제 이 문제가 해결되었습니다. CVE-2022-31036
5.1.13. Red Hat OpenShift GitOps 1.5.2 릴리스 노트
Red Hat OpenShift GitOps 1.5.2는 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.13.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는
redhat-operator-index
에서 참조하는 이미지가 누락되었습니다. 이제 이 문제가 해결되었습니다. GITOPS-2036
5.1.14. Red Hat OpenShift GitOps 1.5.1 릴리스 노트
Red Hat OpenShift GitOps 1.5.1은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.14.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 Argo CD의 익명 액세스가 활성화된 경우 인증되지 않은 사용자가 JWT 토큰을 작성하고 Argo CD 인스턴스에 대한 전체 액세스 권한을 얻을 수 있었습니다. 이 문제는 이제 해결되었습니다. CVE-2022-29165
- 이번 업데이트 이전에는 인증되지 않은 사용자가 SSO가 활성화된 동안 로그인 화면에 오류 메시지를 표시할 수 있었습니다. 이제 이 문제가 해결되었습니다. CVE-2022-24905
- 이번 업데이트 이전에는 Argo CD v0.7.0 이상의 패치되지 않은 모든 버전이 symlink-following 버그에 취약합니다. 결과적으로 리포지터리 쓰기 액세스 권한이 있는 인증되지 않은 사용자는 Argo CD의 repo-server에서 중요한 파일을 유출할 수 있습니다. 이제 이 문제가 해결되었습니다. CVE-2022-24904
5.1.15. Red Hat OpenShift GitOps 1.5.0 릴리스 노트
Red Hat OpenShift GitOps 1.5.0은 이제 OpenShift Container Platform 4.8 이상에서 사용할 수 있습니다.
5.1.15.1. 새로운 기능
현재 릴리스에서는 다음과 같은 개선 사항이 추가되었습니다.
- 이번 개선된 기능을 통해 Argo CD가 2.3.3 버전으로 업그레이드되었습니다. GITOPS-1708
- 이번 개선된 기능을 통해 Dex를 버전 2.30.3 으로 업그레이드했습니다. GITOPS-1850
- 이번 개선된 기능을 통해 Helm이 버전 3.8.0 으로 업그레이드되었습니다. GITOPS-1709
- 이번 개선된 기능에는 Kustomize가 버전 4.4.1 로 업그레이드되었습니다. GITOPS-1710
- 이번 개선된 기능을 통해 Application Set to version 0.4.1 로 업그레이드했습니다.
- 이번 업데이트를 통해 latest 라는 새 채널이 추가되었습니다. 이 채널은 Red Hat OpenShift GitOps의 최신 릴리스를 제공합니다. GitOps v1.5.0의 경우 Operator가 gitops-1.5,최신 채널 및 기존 stable 채널로 푸시됩니다. GitOps v1.6에서 모든 최신 릴리스는 stable 채널이 아닌 최신 채널로만 푸시됩니다. GITOPS-1791
-
이번 업데이트를 통해 새 CSV는
olm.skipRange: '>=1.0.0 <1.5.0'
주석을 추가합니다. 결과적으로 이전 릴리스 버전을 모두 건너뜁니다. Operator가 v1.5.0으로 직접 업그레이드합니다. GITOPS-1787 이번 업데이트를 통해 Operator는 다음과 같은 향상된 기능을 포함하여 RH-SSO(Red Hat Single Sign-On)를 버전 vtekton.1로 업데이트합니다.
-
kube:admin
인증 정보를 포함하여 OpenShift Container Platform 인증 정보를 사용하여 Argo CD에 로그인할 수 있습니다. - RH-SSO는 OpenShift Container Platform 그룹을 사용하여 RBAC(역할 기반 액세스 제어)에 대한 Argo CD 인스턴스를 지원하고 구성합니다.
RH-SSO는
HTTP_Proxy
환경 변수를 따릅니다. 프록시 뒤에서 실행되는 Argo CD의 SSO로 RH-SSO를 사용할 수 있습니다.
-
이번 업데이트를 통해 Argo CD 피연산자의
.status
필드에 새.host
URL 필드가 추가됩니다. 경로에 지정된 우선 순위를 사용하여 경로 또는 수신을 활성화하면 새 URL 필드에 경로가 표시됩니다. 경로 또는 인그레스에서 URL을 제공하지 않으면.host
필드가 표시되지 않습니다.경로 또는 수신이 구성되어 있지만 해당 컨트롤러가 올바르게 설정되지 않았으며
준비
상태에 있지 않거나 URL을 전파하지 않는 경우 피연산자의.status.host
필드의 값은 URL을 표시하는 대신Pending
으로 표시됩니다. 이는 사용 가능한 대신보류
상태를 설정하여 피연산자의 전반적인 상태에 영향을미칩니다
. GITOPS-654
5.1.15.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 AppProjects 와 관련된 RBAC 규칙에서 역할의 subject 필드에 쉼표를 사용하지 않아 LDAP 계정에 대한 바인딩이 발생하지 않았습니다. 이번 업데이트에서는 이 문제가 해결되어 이제 AppProject 특정 RBAC 규칙에 복잡한 역할 바인딩을 지정할 수 있습니다. GITOPS-1771
-
이번 업데이트 이전에는
DeploymentConfig
리소스가0
으로 조정될 때 Argo CD가 Pod를 실행할 때까지 기다리는 동안 상태 상태 메시지가 있는 상태가 진행 중으로 표시되었습니다. 이번 업데이트에서는 엣지 케이스를 수정하고 상태 점검에서DeploymentConfig
리소스의 올바른 상태를 보고합니다. GITOPS-1738 -
이번 업데이트 이전에는
ArgoCD
CR 사양tls.initialCerts
필드에 인증서가 구성되지 않은 경우argocd-tls-certs-cm
구성 맵의 TLS 인증서가 Red Hat OpenShift GitOps에서 삭제되었습니다. 이 문제는 이제 해결되었습니다. GITOPS-1725 -
이번 업데이트 이전에는
managed-by
레이블이 있는 네임스페이스를 생성할 때 새 네임스페이스에 많은RoleBinding
리소스가 생성되었습니다. 이번 업데이트에서는 이 문제를 해결했으며 이제 Red Hat OpenShift GitOps가 이전 버전에서 생성한 관련이 없는 역할 및Role
Binding -
이번 업데이트 이전에는 패스스루 모드에서 경로의 TLS 인증서에 CA 이름이 없었습니다. 결과적으로 Firefox 94 이상에서는 오류 코드 SEC_ERROR_BAD_DER 를 사용하여 Argo CD UI에 연결하지 못했습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. <
openshift-gitops-ca> 보안을
삭제하고 다시 생성하도록 해야 합니다. 그런 다음 <openshift-gitops-tls> 시크릿을 삭제해야
합니다. Red Hat OpenShift GitOps가 이를 다시 생성한 후 Firefox에서 Argo CD UI에 다시 액세스할 수 있습니다. GITOPS-1548
5.1.15.3. 확인된 문제
-
OpenShift Container Platform 클러스터에서
Route
리소스 대신Ingress
리소스가 사용 중인 경우 Argo CD.status.host
필드가 업데이트되지 않습니다. GITOPS-1920
5.1.16. Red Hat OpenShift GitOps 1.4.13 릴리스 노트
Red Hat OpenShift GitOps 1.4.13은 이제 OpenShift Container Platform 4.7, 4.8, 4.9, 4.10 및 4.11에서 사용할 수 있습니다.
5.1.16.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- OpenShift Container Platform 4.12에서는 콘솔을 설치하는 것이 선택 사항입니다. 이번 수정을 통해 콘솔이 설치되지 않은 경우 Operator에 오류가 발생하지 않도록 Red Hat OpenShift GitOps Operator가 업데이트되었습니다. GITOPS-2354
5.1.17. Red Hat OpenShift GitOps 1.4.12 릴리스 노트
Red Hat OpenShift GitOps 1.4.12는 이제 OpenShift Container Platform 4.7 이상에서 사용할 수 있습니다.
5.1.17.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 다수의 애플리케이션이 활성 프로브의 응답하지 않음으로 인해 애플리케이션 컨트롤러가 여러 번 다시 시작되었습니다. 이번 업데이트에서는 애플리케이션 컨트롤러
StatefulSet
오브젝트에서 활성 프로브를 제거하여 문제를 해결합니다. GITOPS-2153 이번 업데이트 이전에는 인증 기관에서 서명하지 않은 인증서로 설정되는 경우 RHSSO 인증서를 검증할 수 없습니다. 이번 업데이트에서는 이 문제를 수정하고 이제 통신할 때 Keycloak의 TLS 인증서를 확인하는 데 사용할 사용자 정의 인증서를 제공할 수 있습니다.
rootCA
를 Argo CD 사용자 정의 리소스.spec.keycloak.rootCA
필드에 추가할 수 있습니다. Operator는 이 변경 사항을 조정하고argocd-cm
ConfigMap
의oidc.config
필드를 PEM 인코딩 루트 인증서로 업데이트합니다. GITOPS-2214참고.spec.keycloak.rootCA
필드를 업데이트한 후 Argo CD 서버 Pod를 다시 시작하십시오.예를 들면 다음과 같습니다.
apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: basic spec: sso: provider: keycloak keycloak: rootCA: | ---- BEGIN CERTIFICATE ---- This is a dummy certificate Please place this section with appropriate rootCA ---- END CERTIFICATE ---- server: route: enabled: true
- 이번 업데이트 이전에는 Argo CD에서 관리하는 종료 네임스페이스가 다른 관리 네임스페이스의 역할 및 기타 구성 생성을 차단합니다. 이번 업데이트에서는 이 문제가 해결되었습니다. GITOPS-2277
-
이번 업데이트 이전에는
anyuid
의 SCC가 DexServiceAccount
리소스에 할당되면 Dex Pod가CreateContainerConfigError
로 시작하지 못했습니다. 이번 업데이트에서는 기본 사용자 ID를 Dex 컨테이너에 할당하여 이 문제를 해결합니다. GITOPS-2235
5.1.18. Red Hat OpenShift GitOps 1.4.5 릴리스 노트
Red Hat OpenShift GitOps 1.4.5는 이제 OpenShift Container Platform 4.7 이상에서 사용할 수 있습니다.
5.1.18.1. 해결된 문제
Red Hat OpenShift GitOps v1.4.3에서 Red Hat OpenShift GitOps v1.4.5로 직접 업그레이드해야 합니다. 프로덕션 환경에서는 Red Hat OpenShift GitOps v1.4.4를 사용하지 마십시오. Red Hat OpenShift GitOps v1.4.4에 영향을 받는 주요 문제는 Red Hat OpenShift GitOps 1.4.5에서 수정되었습니다.
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 Argo CD Pod가
ErrImagePullBackOff
상태에 있었습니다. 다음과 같은 오류 메시지가 표시되었습니다.
reason: ErrImagePull message: >- rpc error: code = Unknown desc = reading manifest sha256:ff4ad30752cf0d321cd6c2c6fd4490b716607ea2960558347440f2f370a586a8 in registry.redhat.io/openshift-gitops-1/argocd-rhel8: StatusCode: 404, <HTML><HEAD><TITLE>Error</TITLE></HEAD><BODY>
이제 이 문제가 해결되었습니다. GITOPS-1848
5.1.19. Red Hat OpenShift GitOps 1.4.3 릴리스 노트
Red Hat OpenShift GitOps 1.4.3은 이제 OpenShift Container Platform 4.7, 4.8 및 4.9에서 사용할 수 있습니다.
5.1.19.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는 ArgoCD CR 사양
tls.initialCerts
필드에 인증서가 구성되지 않은 한 Red Hat OpenShift GitOps에서argocd-tls-certs-cm
구성 맵의 TLS 인증서가 삭제되었습니다. 이번 업데이트에서는 이 문제가 해결되었습니다. GITOPS-1725
5.1.20. Red Hat OpenShift GitOps 1.4.2 릴리스 노트
Red Hat OpenShift GitOps 1.4.2는 이제 OpenShift Container Platform 4.7, 4.8 및 4.9에서 사용할 수 있습니다.
5.1.20.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
Argo CD의 모든 버전은 Helm 차트에서 임의의 값을 사용할 수 있는 경로 순방향 버그에 취약합니다. 이번 업데이트에서는 Helm 값 파일을 전달할 때
CVE-2022-24348 gitops
오류, 경로 트랜젝션 및 역참조가 수정되었습니다. GITOPS-1756 -
이번 업데이트 이전에는 하나 이상의
Ingress
가 경로에 연결된 경우 Route 리소스가Progressing
Health 상태가 되었습니다. 이번 업데이트에서는 상태 점검을 수정하고 Route 리소스의 올바른 상태를 보고합니다. GITOPS-1751
5.1.21. Red Hat OpenShift GitOps 1.4.1 릴리스 노트
Red Hat OpenShift GitOps 1.4.1은 이제 OpenShift Container Platform 4.7, 4.8 및 4.9에서 사용할 수 있습니다.
5.1.21.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
Red Hat OpenShift GitOps Operator v1.4.0에서는 다음 CRD에 대한
spec
에서 description 필드를 제거하는 회귀 문제가 도입되었습니다.-
argoproj.io_applications.yaml
-
argoproj.io_appprojects.yaml
-
argoproj.io_argocds.yaml
-
이번 업데이트 이전에는 kubectl create
를 사용하여 AppProject
리소스를 생성한 경우 동기화하지 못했습니다. 이번 업데이트에서는 CustomResourceDefinitions에서 누락된 설명 필드를 복원합니다. ArgoCD, AppProject, Application
로 인해 kubectl create
가 실패했습니다. GITOPS-1721
5.1.22. Red Hat OpenShift GitOps 1.4.0 릴리스 노트
Red Hat OpenShift GitOps 1.4.0은 이제 OpenShift Container Platform 4.7, 4.8 및 4.9에서 사용할 수 있습니다.
5.1.22.1. 새로운 기능
현재 릴리스에서는 다음과 같은 개선 사항이 추가되었습니다.
- 이번 개선된 기능을 통해 Red Hat OpenShift GitOps Application Manager (kam)를 버전 0.0.41 로 업그레이드합니다. GITOPS-1669
- 이번 개선된 기능은 Argo CD를 버전 2.2.2 로 업그레이드합니다. GITOPS-1532
- 이번 개선된 기능은 Helm을 버전 3.7.1 로 업그레이드합니다. GITOPS-1530
-
이번 개선된 기능에는
DeploymentConfig
,Route
,OLM Operator
항목의 상태가 Argo CD 대시보드 및 OpenShift Container Platform 웹 콘솔에 추가되었습니다. 이 정보는 애플리케이션의 전반적인 상태를 모니터링하는 데 도움이 됩니다. GITOPS-655, GITOPS-915, GITOPS-916, GITOPS-1110 -
이번 업데이트를 통해 Argo CD 사용자 정의 리소스에
.spec.server.replicas
및.spec.repo.replicas
특성을 설정하여argocd-server
및argocd-repo-server
구성 요소에 대해 원하는 복제본 수를 지정할 수 있습니다.argocd-server
구성 요소에 HPA(수평 Pod 자동 스케일러)를 구성하는 경우 Argo CD 사용자 정의 리소스 속성보다 우선합니다. GITOPS-1245 관리 사용자로
argocd.argoproj.io/managed-by
레이블을 사용하여 Argo CD 액세스 권한을 부여하면 namespace-admin 권한을 가정합니다. 이러한 권한은 관리자가 아닌 사용자가 네트워크 정책과 같은 오브젝트를 수정할 수 있기 때문에 개발 팀과 같은 관리자가 아닌 관리자에게 네임스페이스를 제공하는 관리자에게 문제가 됩니다.이번 업데이트를 통해 관리자는 모든 관리 네임스페이스에 대한 공통 클러스터 역할을 구성할 수 있습니다. Argo CD 애플리케이션 컨트롤러의 역할 바인딩에서 Operator는
CONTROLLER_CLUSTER_ROLE
환경 변수를 참조합니다. Argo CD 서버의 역할 바인딩에서 Operator는SERVER_CLUSTER_ROLE
환경 변수를 참조합니다. 이러한 환경 변수에 사용자 정의 역할이 포함된 경우 Operator는 기본 admin 역할을 생성하지 않습니다. 대신 모든 관리 네임스페이스에 기존 사용자 지정 역할을 사용합니다. GITOPS-1290- 이번 업데이트를 통해 OpenShift Container Platform 개발자 콘솔의 환경 페이지에 성능 저하된 리소스가 표시되고 상태가 Progressing, Missing, Unknown인 리소스를 제외하고 손상되는 아이콘이 표시됩니다. 콘솔에는 동기화되지 않은 리소스를 나타내는 노란색 유효 기호 아이콘이 표시됩니다. GITOPS-1307
5.1.22.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 URL에 경로를 지정하지 않고 Red Hat OpenShift GitOps Application Manager(kam)로의 경로가 액세스되면 사용자에게 유용한 정보가 표시되지 않은 기본 페이지가 표시됩니다. 이번 업데이트에서는 문제가 해결되어 기본 페이지에 kam에 대한 다운로드 링크가 표시되도록 합니다. GITOPS-923
- 이번 업데이트 이전에는 Argo CD 사용자 정의 리소스의 네임스페이스에 리소스 할당량을 설정하면 RH SSO(Red Hat SSO) 인스턴스 설정이 실패할 수 있습니다. 이번 업데이트에서는 RH SSO 배포 포드에 대한 최소 리소스 요청을 설정하여 이 문제를 해결합니다. GITOPS-1297
-
이번 업데이트 이전에는
argocd-repo-server
워크로드의 로그 수준을 변경한 경우 Operator가 이 설정을 조정하지 않았습니다. 해결방법은 Operator가 새 로그 수준으로 다시 생성되도록 배포 리소스를 삭제하는 것이었습니다. 이번 업데이트를 통해 기존argocd-repo-server
워크로드에 대한 로그 수준이 올바르게 조정됩니다. GITOPS-1387 -
이번 업데이트 이전에는 Operator에서
argocd-secret
Secret
.data
필드가 없는 Argo CD 인스턴스를 관리하면 해당 인스턴스의 Operator가 충돌했습니다. 이번 업데이트에서는.data
필드가 누락될 때 Operator가 충돌하지 않도록 문제를 해결합니다. 대신 보안이 다시 생성되고gitops-operator-controller-manager
리소스가 재배포됩니다. GITOPS-1402 -
이번 업데이트 이전에는
gitopsservice
서비스에 내부 오브젝트로 주석이 달렸습니다. 이번 업데이트에서는 주석을 제거하므로 기본 Argo CD 인스턴스를 업데이트하거나 삭제하고 UI를 사용하여 인프라 노드에서 GitOps 워크로드를 실행할 수 있습니다. GITOPS-1429
5.1.22.3. 확인된 문제
다음은 현재 릴리스에서 알려진 문제입니다.
Dex 인증 공급자에서 Keycloak 공급자로 마이그레이션하는 경우 Keycloak에 로그인 문제가 발생할 수 있습니다.
이 문제를 방지하려면 Argo CD 사용자 정의 리소스에서
.spec.dex
섹션을 제거하여 Dex를 제거합니다. Dex가 완전히 제거될 때까지 몇 분 정도 기다립니다. 그런 다음 Argo CD 사용자 정의 리소스에.spec.sso.provider: keycloak
을 추가하여 Keycloak을 설치합니다.해결 방법으로
.spec.sso.provider: keycloak
을 제거하여 Keycloak을 제거합니다. 그런 다음 다시 설치하십시오. GITOPS-1450, GITOPS-1331
5.1.23. Red Hat OpenShift GitOps 1.3.7 릴리스 노트
Red Hat OpenShift GitOps 1.3.7은 이제 OpenShift Container Platform 4.7 이상에서 사용할 수 있습니다.
5.1.23.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이번 업데이트 이전에는 OpenSSL에서 취약점이 발견되었습니다. 이번 업데이트에서는 보안 취약점을 방지하기 위해 OpenSSL의 기본 이미지를 최신 버전으로 업데이트하여 문제를 해결합니다. (CVE-2022-0778).
현재 Red Hat OpenShift GitOps 1.3 릴리스를 설치하고 제품 라이프 사이클 동안 추가 업데이트를 받으려면 GitOps-1.3 채널로 전환합니다.
5.1.24. Red Hat OpenShift GitOps 1.3.6 릴리스 노트
Red Hat OpenShift GitOps 1.3.6은 이제 OpenShift Container Platform 4.7 이상에서 사용할 수 있습니다.
5.1.24.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- Red Hat OpenShift GitOps에서 부적절한 액세스 제어는 관리자 권한 상승 (CVE-2022-1025) 을 허용합니다. 이번 업데이트에서는 이 문제가 해결되었습니다.
- 경로 문제 취약점으로 인해 아웃 오브 바운드 파일 (CVE-2022-24731) 이 유출될 수 있습니다. 이번 업데이트에서는 이 문제가 해결되었습니다.
- 경로 문제 취약점 및 부적절한 액세스 제어로 인해 아웃 오브 바운드 파일 (CVE-2022-24730) 이 유출될 수 있습니다. 이번 업데이트에서는 이 문제가 해결되었습니다.
5.1.25. Red Hat OpenShift GitOps 1.3.2 릴리스 노트
Red Hat OpenShift GitOps 1.3.2는 이제 OpenShift Container Platform 4.6, 4.7, 4.8 및 4.9에서 사용할 수 있습니다.
5.1.25.1. 새로운 기능
다음 섹션에서는 수정 및 안정성 개선 사항 외에 Red Hat OpenShift GitOps 1.3.2의 새로운 기능도 소개합니다.
- Argo CD를 버전 2.1.8로 업그레이드
- 버전 2.30.0으로 업그레이드 Dex
5.1.25.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이번 업데이트 이전에는
연결 해제
로 필터링하면 Red Hat OpenShift GitOps Operator가 CSV 파일에 관련 주석이 설정되지 않았기 때문에 인프라 기능 섹션의 OperatorHub UI에서 Red Hat OpenShift GitOps Operator가 검색 결과에 표시되지 않았습니다. 이번 업데이트를 통해 Red Hat OpenShift GitOps Operator에 인프라 기능으로연결되지 않은 Cluster
주석이 추가되었습니다. GITOPS-1539 네임스페이스 범위의 Argo CD 인스턴스를 사용하는 경우 예를 들어 클러스터에서 모든 Namepsaces 로 지정되지
않은 Argo CD 인스턴스인 Red Hat OpenShift GitOps는 관리 네임스페이스 목록을 동적으로 유지합니다. 이러한 네임스페이스에는argocd.argoproj.io/managed-by
레이블이 포함됩니다. 이 네임스페이스 목록은 Argo CD설정 클러스터 "클러스터" NAMESPACES 의 캐시에 저장됩니다. 이번 업데이트 이전에는 이러한 네임스페이스 중 하나를 삭제한 경우 Operator에서 해당 작업을 무시하고 네임스페이스가 목록에 남아 있었습니다. 이로 인해 클러스터 구성에서 CONNECTION STATE 가 중단되고 모든 동기화 시도에 오류가 발생했습니다. 예를 들면 다음과 같습니다. Argo service account does not have <random_verb> on <random_resource_type> in namespace <the_namespace_you_deleted>.
이 버그가 수정되었습니다. GITOPS-1521
- 이번 업데이트를 통해 Red Hat OpenShift GitOps Operator에 Deep Insights 기능 수준이 주석이 추가되었습니다. GITOPS-1519
-
이전에는 Argo CD Operator가
resource.exclusion
필드를 자체적으로 관리했지만resource.inclusion
필드를 무시했습니다. 이로 인해Argo CD
CR에 구성된resource.inclusion
필드가argocd-cm
구성 맵에 생성되지 않았습니다. 이 문제는 이번 릴리스에서 해결되었습니다. GITOPS-1518
5.1.26. Red Hat OpenShift GitOps 1.3.1 릴리스 노트
이제 OpenShift Container Platform 4.6, 4.7, 4.8 및 4.9에서 Red Hat OpenShift GitOps 1.3.1을 사용할 수 있습니다.
5.1.26.1. 해결된 문제
- v1.3.0으로 업그레이드하는 경우 Operator는 순서가 지정된 환경 변수 슬라이스를 반환하지 않습니다. 결과적으로 조정기가 실패하여 프록시 뒤에서 실행되는 OpenShift Container Platform 클러스터에서 Argo CD Pod가 자주 복제됩니다. 이번 업데이트에서는 Argo CD Pod가 다시 생성되지 않도록 문제가 해결되었습니다. GITOPS-1489
5.1.27. Red Hat OpenShift GitOps 1.3 릴리스 노트
이제 OpenShift Container Platform 4.7, 4.8, 4.9에서 Red Hat OpenShift GitOps 1.3을 사용할 수 있습니다.
5.1.27.1. 새로운 기능
다음 섹션에서는 수정 및 안정성 개선 사항 외에 Red Hat OpenShift GitOps 1.3.0의 새로운 기능도 소개합니다.
-
v1.3.0을 새로 설치하는 경우 Dex가 자동으로 구성됩니다. OpenShift 또는
kubeadmin
인증 정보를 사용하여openshift-gitops
네임스페이스에서 기본 Argo CD 인스턴스에 로그인할 수 있습니다. 관리자는 Operator를 설치한 후openshift-gitops
네임스페이스에서 Dex 배포를 제거한 후 Dex 설치를 비활성화할 수 있습니다. - Operator에서 설치한 기본 Argo CD 인스턴스와 함께 컨트롤러는 이제 간단한 구성 토글을 설정하여 클러스터의 인프라 노드에서 실행할 수 있습니다.
- Argo CD의 내부 통신은 이제 TLS 및 OpenShift 클러스터 인증서를 사용하여 보안을 설정할 수 있습니다. Argo CD 경로는 이제 cert-manager와 같은 외부 인증서 관리자를 사용하는 것 외에도 OpenShift 클러스터 인증서를 활용할 수 있습니다.
- 콘솔 4.9의 개발자 관점에서 향상된 환경 세부 정보 보기를 사용하여 GitOps 환경에 대한 정보를 얻습니다.
-
OLM을 사용하여 설치된
DeploymentConfig
리소스,경로
리소스 및 Operator의 Argo CD에서 사용자 정의 상태 점검에 액세스할 수 있습니다. 이제 GitOps Operator가 최신 Operator-SDK에서 권장하는 명명 규칙을 따릅니다.
-
gitops-operator-
접두사가 모든 리소스에 추가되었습니다. -
서비스 계정의 이름이
gitops-operator-controller-manager
로 변경되었습니다.
-
5.1.27.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이전 버전에서는 Argo CD의 새 인스턴스에서 관리하도록 새 네임스페이스를 설정하는 경우 Operator에서 새 네임스페이스를 관리하기 위해 생성하는 새 역할 및 바인딩 으로 인해 즉시 동기화되지 않았습니다. 이 동작은 수정되었습니다. GITOPS-1384
5.1.27.3. 확인된 문제
Dex 인증 공급자에서 Keycloak 공급자로 마이그레이션하는 동안 Keycloak에 로그인 문제가 발생할 수 있습니다. GITOPS-1450
위의 문제를 방지하려면 Argo CD 사용자 정의 리소스에 있는
.spec.dex
섹션을 제거하여 Dex를 제거하십시오. Dex가 완전히 제거될 때까지 몇 분 동안 기다린 다음 Argo CD 사용자 정의 리소스에.spec.sso.provider: keycloak
을 추가하여 Keycloak을 설치합니다.이 문제를 해결하려면
.spec.sso.provider: keycloak
을 제거한 다음 다시 설치하여 Keycloak을 제거합니다.
5.1.28. Red Hat OpenShift GitOps 1.2.2 릴리스 노트
Red Hat OpenShift GitOps 1.2.2는 이제 OpenShift Container Platform 4.8에서 사용할 수 있습니다.
5.1.28.1. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- Argo CD의 모든 버전은 Helm 차트에서 임의의 값을 사용할 수 있는 경로 순방향 버그에 취약합니다. 이번 업데이트에서는 Helm 값 파일을 전달할 때 CVE-2022-24348 gitops 오류, path traversal 및 역참조가 수정되었습니다. GITOPS-1756
5.1.29. Red Hat OpenShift GitOps 1.2.1 릴리스 노트
이제 OpenShift Container Platform 4.7 및 4.8에서 Red Hat OpenShift GitOps 1.2.1을 사용할 수 있습니다.
5.1.29.1. 지원 매트릭스
이 릴리스의 일부 기능은 현재 기술 프리뷰 단계에 있습니다. 이러한 실험적 기능은 프로덕션용이 아닙니다.
아래 표에서 기능은 다음 상태로 표시됩니다.
- TP: 기술 프리뷰
- GA: 정식 출시일 (GA)
해당 기능은 Red Hat Customer Portal의 지원 범위를 참조하십시오.
기능 | Red Hat OpenShift GitOps 1.2.1 |
---|---|
Argo CD | GA |
Argo CD ApplicationSet | TP |
Red Hat OpenShift GitOps Application Manager (kam) | TP |
5.1.29.2. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이전에는 시작 시 애플리케이션 컨트롤러에서 대규모 메모리 스파이크를 관찰했습니다. 애플리케이션 컨트롤러의
--kubectl-parallelism-limit
플래그는 기본적으로 10으로 설정되어 있지만 Argo CD CR 사양에.spec.controller.kubeParallelismLimit
의 번호를 지정하여 이 값을 재정의할 수 있습니다. GITOPS-1255 -
최신 Triggers API로 인해
kam 부트스트랩
명령을 사용할 때 kustomization.yaml의 중복 항목으로 인해 Kubernetes 빌드가 실패했습니다. Pipelines 및 Tekton 트리거 구성 요소가 이제 이 문제를 해결하기 위해 각각 v0.24.2 및 v0.14.2로 업데이트되었습니다. GITOPS-1273 - 소스 네임스페이스의 Argo CD 인스턴스가 삭제될 때 대상 네임스페이스에서 RBAC 역할 및 바인딩을 유지하면 대상 네임스페이스에서 자동으로 제거됩니다. GITOPS-1228
- 이전 버전에서는 Argo CD 인스턴스를 네임스페이스에 배포할 때 Argo CD 인스턴스가 "managed-by" 라벨이 자체 네임스페이스로 변경되었습니다. 이번 수정을 통해 네임스페이스에 필요한 RBAC 역할 및 바인딩도 생성 및 삭제되는 동안 네임스페이스에 라벨이 지정되지 않았습니다. GITOPS-1247
- 이전에는 repo-server 및 애플리케이션 컨트롤러를 위한 Argo CD 워크로드에 대한 기본 리소스 요청 제한이 매우 제한적이었습니다. 이제 기존 리소스 할당량이 제거되었으며 리포지토리 서버에서 기본 메모리 제한이 1024M으로 증가했습니다. 이 변경 사항은 새 설치에만 영향을 미칩니다. 기존 Argo CD 인스턴스 워크로드는 영향을 받지 않습니다. GITOPS-1274
5.1.30. Red Hat OpenShift GitOps 1.2 릴리스 노트
Red Hat OpenShift GitOps 1.2는 이제 OpenShift Container Platform 4.7 및 4.8에서 사용할 수 있습니다.
5.1.30.1. 지원 매트릭스
이 릴리스의 일부 기능은 현재 기술 프리뷰 단계에 있습니다. 이러한 실험적 기능은 프로덕션용이 아닙니다.
아래 표에서 기능은 다음 상태로 표시됩니다.
- TP: 기술 프리뷰
- GA: 정식 출시일 (GA)
해당 기능은 Red Hat Customer Portal의 지원 범위를 참조하십시오.
기능 | Red Hat OpenShift GitOps 1.2 |
---|---|
Argo CD | GA |
Argo CD ApplicationSet | TP |
Red Hat OpenShift GitOps Application Manager (kam) | TP |
5.1.30.2. 새로운 기능
다음 섹션에서는 수정 및 안정성 개선 사항 외에 Red Hat OpenShift GitOps 1.2의 새로운 기능도 소개합니다.
-
openshift-gitops 네임스페이스에 대한 읽기 또는 쓰기 권한이 없는 경우 이제 GitOps Operator에서
DISABLE_DEFAULT_ARGOCD_INSTANCE
환경 변수를 사용하고 기본 Argo CD 인스턴스가openshift-gitops
네임스페이스에서 시작되지 않도록TRUE
로 설정할 수 있습니다. -
이제 리소스 요청 및 제한이 Argo CD 워크로드에서 구성됩니다.
openshift-gitops
네임스페이스에서 리소스 할당량이 활성화됩니다. 결과적으로 openshift-gitops 네임스페이스에 수동으로 배포된 대역 외 워크로드는 리소스 요청 및 제한을 사용하여 구성해야 하며 리소스 할당량을 늘려야 할 수 있습니다. Argo CD 인증은 이제 Red Hat SSO와 통합되며 클러스터의 OpenShift 4 ID 공급자로 자동으로 구성됩니다. 이 기능은 기본적으로 비활성화되어 있습니다. Red Hat SSO를 활성화하려면 다음과 같이
ArgoCD
CR에 SSO 구성을 추가합니다. 현재keycloak
은 지원되는 유일한 공급자입니다.apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: basic spec: sso: provider: keycloak server: route: enabled: true
라우터 샤딩을 지원하기 위해 경로 레이블을 사용하여 호스트 이름을 정의할 수 있습니다. 이제
server
(argocd server),grafana
,prometheus
경로에서 레이블 설정 지원을 사용할 수 있습니다. 경로에 레이블을 설정하려면ArgoCD
CR의 서버에 대한 경로 구성 아래에labels
를 추가합니다.argocd 서버에 라벨을 설정하는
ArgoCD
CR YAML의 예apiVersion: argoproj.io/v1alpha1 kind: ArgoCD metadata: name: example-argocd labels: example: basic spec: server: route: enabled: true labels: key1: value1 key2: value2
-
GitOps Operator는 레이블을 적용하여 대상 네임스페이스의 리소스를 관리할 수 있도록 Argo CD 인스턴스에 권한을 자동으로 부여합니다. 사용자는
argocd.argoproj.io/managed-by: <source-namespace>
라벨을 사용하여 대상 네임스페이스에 레이블을 지정할 수 있습니다. 여기서source-namespace
는 argocd 인스턴스가 배포된 네임스페이스입니다.
5.1.30.3. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
-
이전 버전에서는 사용자가 openshift-gitops 네임스페이스에서 기본 클러스터 인스턴스에서 관리하는 Argo CD의 추가 인스턴스를 생성한 경우 새 Argo CD 인스턴스를 담당하는 애플리케이션이
OutOfSync
상태로 중단되었습니다. 이 문제는 클러스터 시크릿에 소유자 참조를 추가하여 해결되었습니다. GITOPS-1025
5.1.30.4. 확인된 문제
이는 Red Hat OpenShift GitOps 1.2에서 알려진 문제입니다.
-
소스 네임스페이스에서 Argo CD 인스턴스가 삭제되면 대상 네임스페이스의
argocd.argoproj.io/managed-by
레이블이 제거되지 않습니다. GITOPS-1228 Red Hat OpenShift GitOps 1.2의 openshift-gitops 네임스페이스에서 리소스 할당량이 활성화되었습니다. 이는 수동으로 배포된 대역 외 워크로드 및
openshift-gitops
네임스페이스의 기본 Argo CD 인스턴스에서 배포한 워크로드에 영향을 미칠 수 있습니다. Red Hat OpenShift GitOpsv1.1.2
에서v1.2
로 업그레이드하는 경우 리소스 요청 및 제한을 사용하여 워크로드를 구성해야 합니다. 추가 워크로드가 있는 경우 openshift-gitops 네임스페이스의 리소스 할당량을 늘려야 합니다.openshift-gitops
네임스페이스의 현재 리소스 할당량입니다.리소스 요구 사항 제한 CPU
6688m
13750m
메모리
4544Mi
9070Mi
아래 명령을 사용하여 CPU 제한을 업데이트할 수 있습니다.
$ oc patch resourcequota openshift-gitops-compute-resources -n openshift-gitops --type='json' -p='[{"op": "replace", "path": "/spec/hard/limits.cpu", "value":"9000m"}]'
아래 명령을 사용하여 CPU 요청을 업데이트할 수 있습니다.
$ oc patch resourcequota openshift-gitops-compute-resources -n openshift-gitops --type='json' -p='[{"op": "replace", "path": "/spec/hard/cpu", "value":"7000m"}]
위의 명령의 경로를
cpu
에서memory
로 교체하여 메모리를 업데이트할 수 있습니다.
5.1.31. Red Hat OpenShift GitOps 1.1 릴리스 노트
Red Hat OpenShift GitOps 1.1은 이제 OpenShift 컨테이너 플랫폼 4.7에서 사용할 수 있습니다.
5.1.31.1. 지원 매트릭스
이 릴리스의 일부 기능은 현재 기술 프리뷰 단계에 있습니다. 이러한 실험적 기능은 프로덕션용이 아닙니다.
아래 표에서 기능은 다음 상태로 표시됩니다.
- TP: 기술 프리뷰
- GA: 정식 출시일 (GA)
해당 기능은 Red Hat Customer Portal의 지원 범위를 참조하십시오.
기능 | Red Hat OpenShift GitOps 1.1 |
---|---|
Argo CD | GA |
Argo CD ApplicationSet | TP |
Red Hat OpenShift GitOps Application Manager (kam) | TP |
5.1.31.2. 새로운 기능
다음 섹션에서는 수정 및 안정성 개선 사항 외에 Red Hat OpenShift GitOps 1.1의 새로운 기능도 소개합니다.
-
이제
ApplicationSet
기능이 추가되었습니다(기술 프리뷰).ApplicationSet
기능을 사용하면 Argo CD 애플리케이션을 다수의 클러스터와 monorepos 내에서 관리할 때 자동화와 유연성을 모두 사용할 수 있습니다. 또한 멀티테넌트 Kubernetes 클러스터에서 셀프 서비스를 사용할 수 있습니다. - Argo CD는 이제 클러스터 로깅 스택 및 OpenShift Container Platform 모니터링 및 경고 기능과 통합되었습니다.
- Argo CD 인증이 OpenShift Container Platform과 통합되었습니다.
- Argo CD 애플리케이션 컨트롤러는 이제 수평 크기 조정을 지원합니다.
- Argo CD Redis 서버는 이제 HA(고가용성)를 지원합니다.
5.1.31.3. 해결된 문제
현재 릴리스에서 다음 문제가 해결되었습니다.
- 이전에는 활성 글로벌 프록시 설정을 사용하여 프록시 서버 설정에서 Red Hat OpenShift GitOps가 예상대로 작동하지 않았습니다. 이 문제는 해결되었으며 이제 Red Hat OpenShift GitOps Operator가 Argo CD는 Pod에 FQDN(정규화된 도메인 이름)을 사용하여 구성 요소 간 통신을 활성화하도록 구성되어 있습니다. GITOPS-703
-
Red Hat OpenShift GitOps 백엔드는 Red Hat OpenShift GitOps URL의
?ref=
쿼리 매개 변수를 사용하여 API를 호출합니다. 이전에는 이 매개변수를 URL에서 읽지 않아 백엔드에서 항상 기본 참조를 고려했습니다. 이 문제는 해결되어 Red Hat OpenShift GitOps 백엔드에서 Red Hat OpenShift GitOps URL에서 참조 쿼리 매개 변수를 추출하고 입력 참조가 제공되지 않은 경우에만 기본 참조를 사용합니다. GITOPS-817 -
이전에는 Red Hat OpenShift GitOps 백엔드에서 유효한 GitLab 리포지토리를 찾지 못했습니다. 이는 Red Hat OpenShift GitOps 백엔드가 GitLab 리포지토리의
master
대신main
분기 참조로 확인되었기 때문입니다. 이 문제는 이제 해결되었습니다. GITOPS-768 -
OpenShift Container Platform 웹 콘솔의 개발자 화면에 있는 환경 페이지에 애플리케이션 목록과 환경 수가 표시됩니다. 이 페이지에는 모든 애플리케이션을 나열하는 Argo CD 애플리케이션 페이지로 이동하는 Argo CD 링크도 표시됩니다. Argo CD 애플리케이션 페이지에는 선택한 애플리케이션만 필터링할 수 있는 LABELS (예:
app.kubernetes.io/name=appName
)가 있습니다. GITOPS-544
5.1.31.4. 확인된 문제
이는 Red Hat OpenShift GitOps 1.1에서 알려진 문제입니다.
- Red Hat OpenShift GitOps는 Helm v2 및 ksonnet을 지원하지 않습니다.
- RH SSO(Red Hat SSO) Operator는 연결이 끊긴 클러스터에서 지원되지 않습니다. 결과적으로 연결이 끊긴 클러스터에서 Red Hat OpenShift GitOps Operator 및 RH SSO 통합이 지원되지 않습니다.
- OpenShift Container Platform 웹 콘솔에서 Argo CD 애플리케이션을 삭제하면 사용자 인터페이스에서 Argo CD 애플리케이션이 삭제되지만 배포는 여전히 클러스터에 있습니다. 해결 방법으로 Argo CD 콘솔에서 Argo CD 애플리케이션을 삭제합니다. GITOPS-830
5.1.31.5. 변경 사항 중단
5.1.31.5.1. Red Hat OpenShift GitOps v1.0.1에서 업그레이드
Red Hat OpenShift GitOps v1.0.1
에서 v1.1
으로 업그레이드하는 경우 Red Hat OpenShift GitOps Operator는 openshift-gitops
네임스페이스에 생성된 기본 Argo CD 인스턴스 이름을 argocd-cluster
에서 openshift-gitops
로 변경합니다.
이는 변경 사항이 중단되어 업그레이드 전에 수동으로 다음 단계를 수행해야 합니다.
OpenShift Container Platform 웹 콘솔로 이동하여
openshift-gitops
네임스페이스에 있는argocd-cm.yml
구성 맵 파일의 콘텐츠를 로컬 파일에 복사합니다. 내용은 다음 예와 같을 수 있습니다.argocd 구성 맵 YAML의 예
kind: ConfigMap apiVersion: v1 metadata: selfLink: /api/v1/namespaces/openshift-gitops/configmaps/argocd-cm resourceVersion: '112532' name: argocd-cm uid: f5226fbc-883d-47db-8b53-b5e363f007af creationTimestamp: '2021-04-16T19:24:08Z' managedFields: ... namespace: openshift-gitops labels: app.kubernetes.io/managed-by: argocd-cluster app.kubernetes.io/name: argocd-cm app.kubernetes.io/part-of: argocd data: "" 1 admin.enabled: 'true' statusbadge.enabled: 'false' resource.exclusions: | - apiGroups: - tekton.dev clusters: - '*' kinds: - TaskRun - PipelineRun ga.trackingid: '' repositories: | - type: git url: https://github.com/user-name/argocd-example-apps ga.anonymizeusers: 'false' help.chatUrl: '' url: >- https://argocd-cluster-server-openshift-gitops.apps.dev-svc-4.7-041614.devcluster.openshift.com "" 2 help.chatText: '' kustomize.buildOptions: '' resource.inclusions: '' repository.credentials: '' users.anonymous.enabled: 'false' configManagementPlugins: '' application.instanceLabelKey: ''
-
기본
argocd-cluster
인스턴스를 삭제합니다. -
새
argocd-cm.yml
구성 맵 파일을 편집하여 전체data
섹션을 수동으로 복원합니다. 구성 맵 항목의 URL 값을 새 인스턴스 이름
openshift-gitops
로 바꿉니다. 예를 들어 위 예제에서 URL 값을 다음 URL 값으로 바꿉니다.url: >- https://openshift-gitops-server-openshift-gitops.apps.dev-svc-4.7-041614.devcluster.openshift.com
- Argo CD 클러스터에 로그인하고 이전 구성이 있는지 확인합니다.