릴리스 노트 및 알려진 문제
Red Hat OpenShift Dev Spaces 3.14 릴리스 노트 및 알려진 문제
초록
보다 포괄적 수용을 위한 오픈 소스 용어 교체
Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.
1장. Red Hat OpenShift Dev Spaces 정보
Red Hat OpenShift Dev Spaces는 엔터프라이즈급 설정으로 Red Hat OpenShift에 웹 기반 개발 환경을 제공합니다.
- 클라우드 개발 환경(CDE) 서버
- Microsoft Visual Studio Code와 같은 IDE - 오픈 소스 및 CryostatBrains IntelliJ IDEA 커뮤니티 (기술 프리뷰)
- 널리 사용되는 프로그래밍 언어, 프레임워크 및 Red Hat 기술이 있는 컨테이너화된 환경
Red Hat OpenShift Dev Spaces는 컨테이너 기반 개발에 적합합니다.
Red Hat OpenShift Dev Spaces 3.14는 Eclipse Che 7.86을 기반으로 합니다.
1.1. 지원되는 플랫폼
OpenShift Dev Spaces는 다음 CPU 아키텍처의 OpenShift 4.12-4.15에서 실행됩니다.
-
AMD64 및 Intel 64 (
x86_64
) -
IBM Power (
ppc64le
) 및 IBM Z (s390x
)
1.2. 지원 정책
Red Hat OpenShift Dev Spaces 3.14의 경우 Red Hat은 제품의 배포, 구성 및 사용을 지원합니다.
1.3. Red Hat OpenShift Dev Spaces와 Eclipse Che의 차이점
Red Hat OpenShift Dev Spaces와 이를 기반으로 하는 업스트림 프로젝트에는 몇 가지 차이점이 있습니다. Eclipse Che:
- OpenShift Dev Spaces는 Red Hat OpenShift에서만 지원됩니다.
- OpenShift Dev Spaces는 Red Hat Enterprise Linux를 기반으로 하며 최신 보안 수정 사항을 포함하도록 정기적으로 업데이트됩니다.
- OpenShift Dev Spaces는 Quarkus, Lombok, NodeJS, Python, DotNet, Golang, C/C++, PHP와 같은 언어 및 기술을 사용하기 위한 devfile을 제공합니다. devspaces-devfileregistry 컨테이너 이미지 소스에서 최신 샘플 프로젝트를 찾을 수 있습니다.
- OpenShift Dev Spaces는 사용자 로그인 및 관리에 OpenShift OAuth를 사용합니다.
Red Hat은 OpenShift Dev Spaces에 대한 엔터프라이즈급 지원을 보장하기 위해 라이센스 및 패키징을 제공합니다.
2장. 새로운 기능 및 개선 사항
2.1. 사용자 대시보드의 'Git Repo Options' 패널에서 노출된 URL 매개변수
이제 Git 분기, 원격 및 devfile URL 매개변수의 경로가 사용자 대시보드의 'Git Repo Options' 패널에 노출됩니다.
추가 리소스
2.2. yaml
확장 없이 원시 devfile URL 지원
이번 릴리스에서는 다음 경우와 같이 유효한 devfile 을 제공하는 모든 URL에서 작업 공간을 생성할 수 있습니다.
추가 리소스
2.3. $HOME 지속성이 활성화된 경우 영구홈을 초기화하기 위한 initContainer 추가
이번 릴리스에서는 $HOME 지속성이 활성화된 경우 entrypoint
스크립트를 실행하고 영구홈을 초기화하는 initContainer
가 있습니다. 이렇게 하면 경쟁 조건이 발생하지 않습니다.
이전에는 툴링 컨테이너의 진입점에서 영구 사용자 홈 설정이 발생했습니다. 특히 진입점
을 사용하여 stow
를 실행하여 홈 디렉토리에 대한 심볼릭 링크를 PVC에 저장했습니다. postStart 이벤트가 파일 또는 홈 디렉터리에 있는 편집 파일에 의존하는 경우 stow
실행이 완료되기 전에 실행 중인 시작 후 이벤트로 인해 발생하는 경합 조건이 발생할 위험이 있습니다. 이를 방지하려면 entrypoint
스크립트를 postStart 이벤트가 실행되기 전에 완료해야 합니다.
이 개선 사항에 대한 자세한 내용은 데모 비디오에서 확인할 수 있습니다.
추가 리소스
3장. 버그 수정
3.1. 작업 영역을 다시 시작할 때 확장 보안이 손실됨
Visual Studio Code의 확장 보안 - 오픈 소스("Code - OSS")는 작업 영역을 다시 시작한 후 더 이상 손실되지 않지만 브라우저의 로컬 스토리지에 암호화되고 유지됩니다. 이를 통해 Visual Studio Code Secrets Storage API 를 사용하는 Ansible 과 같은 확장 기능을 통해 동일한 브라우저에서 작업 영역을 다시 시작할 때까지 데이터를 유지할 수 있습니다.
추가 리소스
3.2. 연결이 끊긴 클러스터에서 자체 서명된 인증서를 사용하는 경우 상위 devfile을 확인할 수 없음
이전에는 Air-gapped 클러스터에서 자체 서명된 인증서를 사용할 때 URI로 상위 devfile을 참조하는 작업 공간을 시작하면 x509: certificate signed by unknown authority
오류가 발생했습니다. 이 릴리스에서 결함이 수정되어 연결이 끊긴 클러스터에서 상위 devfile을 참조할 수 있습니다.
추가 리소스
PROJECTS_ROOT 환경 변수가 작업 공간 시작 시 잘못 설정됨
이전에는 작업 영역을 시작한 후 PROJECTS_ROOT 환경 변수가 /projects/projects
로 잘못 설정되었습니다. 이 릴리스에서 결함이 수정되었으며 환경 변수가 /projects
디렉터리를 올바르게 가리킵니다.
추가 리소스
3.3. 작업 공간 상태가 예기치 않게 '시작'으로 변경되었습니다.
이전에는 작업 영역을 시작하는 동안 상태가 예기치 않게 '시작'으로 변경될 수 있었습니다.
이 릴리스에서 결함이 수정되었으며 작업 공간을 시작하는 동안 상태 변경(실패 제외) 및 'Terminating'이 무시됩니다.
추가 리소스
3.4. 대시보드 Pod는 exitCode: 137을 사용하여 자주 다시 시작
이전 버전에서는 이 릴리스에서 수정된 메모리 누수로 인해 dashboard pod가 exitCode: 137
로 자주 다시 시작되었을 수 있었습니다.
추가 리소스
3.5. Pod가 삭제되고 다시 시작될 때 대시보드 URL을 몇 초 동안 사용할 수 없습니다
이전 버전에서는 Pod를 다시 시작할 때 Operator를 업데이트하는 동안 짧은 기간 동안 대시보드 URL을 사용할 수 없었습니다. 적절한 LivenessProbe 및 'ReadinessProbe
를 게이트웨이에 추가하여 이 릴리스에서 문제가 해결되었습니다.
추가 리소스
3.6. OAuth 애플리케이션을 취소한 후에도 '사용자 환경 설정' 대시보드에서 '인증' 표시기가 여전히 활성화되어 있습니다.
이 릴리스에서 대시보드의 OAuth 취소가 수정된 후 '인증' 지표의 잘못된 상태와 관련된 결함입니다.
추가 리소스
3.7. DevWorkspace에 controller.devfile.io/creator
레이블이 없는 경우 대시보드 페이지가 비어 있습니다.
이전에는 DevWorkspace 오브젝트에 controller.devfile.io/creator
레이블이 없는 경우 사용자 대시보드에 빈 페이지가 표시되었습니다. 이 릴리스에서 결함이 수정되었습니다.
추가 리소스
3.8. 'Restart Workspace from Local Devfile' 명령을 사용하여 작업 영역을 다시 시작한 후 프로젝트는 복제되지 않습니다.
이번 릴리스 이전에는 'Restart Workspace from Local Devfile' 명령으로 작업 공간을 다시 시작한 경우 작업 영역에서 devfile에 추가된 추가 프로젝트가 복제되지 않았습니다. 이번 릴리스에서는 이 문제가 해결되었습니다.
추가 리소스
3.9. 작업 공간 작업 메뉴가 열려 있음
이번 릴리스 이전에는 'Open' 및 'Stop Workspace'와 같은 작업 메뉴 항목이 사용자 대시보드에서 열린 상태로 유지되었습니다. 이번 릴리스에서는 이 문제가 해결되었습니다.
추가 리소스
3.10. 대시보드에서 df
및 override.devfileFilename
URL 매개변수로 작업 영역을 시작할 때 오류 발생
이 릴리스에서 df
.devfileFilename
매개변수를 사용하여 작업 영역을 시작하는 동안 오류와 관련된 결함이 수정되었습니다.
추가 리소스
3.11. 툴링 컨테이너 $PATH가 재정의됨
이번 릴리스 이전에는 process.env.PATH
가 userShellEnv.PATH
환경 변수로 재정의되었습니다. 이번 릴리스에서는 process.env.PATH
및 userShellEnv.PATH
환경 변수의 값이 병합됩니다.
추가 리소스
4장. 기술 프리뷰
기술 프리뷰 기능을 통해 향후 제품 개선 사항에 빠르게 액세스하고 개발 과정에서 기능 테스트와 피드백을 제공할 수 있습니다. 그러나 이러한 기능은 Red Hat 서브스크립션 수준 계약에서 완전히 지원되지 않으며 기능적으로 완전하지 않을 수 있으며 프로덕션 용도로는 사용되지 않습니다. Red Hat은 기술 프리뷰 기능을 점차적으로 사용 가능하게 하고 있으며 이러한 기능 사용 시 발생할 수 있는 문제를 해결하기 위해 노력합니다. 기술 프리뷰 지원 범위를 참조하십시오.
없음.
5장. 더 이상 사용되지 않는 기능
없음.
6장. 제거된 기능
6.1. devfile v1 지원 종료
이번 릴리스에서는 devfile v1이 더 이상 지원되지 않습니다. 지원되는 devfile 버전에 대한 Devfile.io 문서를 확인합니다.
추가 리소스
7장. 확인된 문제
7.1. Ansible Lightspeed가 Ansible 서버에 연결되지 않음
Ansible Lightspeed 및 Ansible 서버 연결에 알려진 문제가 있습니다. OpenShift Dev Spaces 환경이 *.openshiftapps.com 도메인에 없는 경우 Ansible Lightspeed에서 Ansible 서버에 연결할 수 없습니다.
사용 가능한 해결방법이 없습니다.
추가 리소스
7.2. FIPS 컴플라이언스 업데이트
FIPS 컴플라이언스에 알려진 문제로 인해 특정 암호화 모듈이 FIPS 검증되지 않습니다. 다음은 OpenShift Dev Spaces에서 FIPS를 사용하는 데 필요한 요구 사항 및 제한 사항 목록입니다.
필수 클러스터 및 Operator 업데이트
필요에 따라 Red Hat OpenShift Container Platform 설치를 4.11, 4.12 또는 4.13의 최신 z-stream 업데이트로 업데이트합니다. FIPS가 아직 활성화되지 않은 경우 설치 제거하고 다시 설치해야 합니다.
클러스터가 가동되어 실행되면 OpenShift Dev Spaces 3.7.1 (3.7-264)을 설치하고 최신 DevWorkspace Operator 번들 0.21.2 (0.21-7) 이상이 설치되어 업데이트되었는지 확인합니다. https://catalog.redhat.com/software/containers/devworkspace/devworkspace-operator-bundle/60ec9f48744684587e2186a3에서 참조하십시오.
UDI 이미지의 Golang 컴파일러
UDI(Universal Developer Image) 컨테이너에는 CGO_ENABLED=1
플래그 없이 빌드된 golang 컴파일러가 포함되어 있습니다. check-payload scanner( https://github.com/openshift/check-payload )는 오류가 발생하지만 이 컴파일러를 사용하여 빌드한 모든 항목이 올바른 플래그
을 사용하지 않는 경우 안전하게 무시할 수 있습니다.
CGO_ENABLED=1
을 설정하고 extldflags -static
또는 -openssl
결과 바이너리는 스캔할 수 있으며 오류 없이 전달되어야 합니다.
정적으로 연결된 바이너리
다음 두 컨테이너에서 암호화와 관련이 없는 정적으로 연결된 바이너리를 찾을 수 있습니다.
- code-rhel8
- idea-rhel8.
암호화와 관련이 없으므로 FIPS 컴플라이언스에 영향을 미치지 않습니다.
FIPS에 대한 Helm 지원
UDI 컨테이너에는 FIPS 지원으로 컴파일되지 않은 helm
바이너리가 포함되어 있습니다. FIPS 환경에 있는 경우 helm
를 사용하지 않습니다.
추가 리소스
7.3. 디버거가 .NET 샘플에서 작동하지 않음
현재 Microsoft Visual Studio Code의 디버거 - 오픈 소스가 .NET 샘플에서 작동하지 않습니다.
해결방법
다음 소스의 다른 이미지를 사용합니다.
추가 리소스
8장. 자주하는 질문
- OpenShift Dev Spaces에서 OpenShift 클러스터에 애플리케이션을 배포할 수 있습니까?
-
사용자는
oc login
을 사용하여 실행 중인 작업 영역에서 OpenShift 클러스터에 로그인해야 합니다. - 최상의 성능을 위해 OpenShift Dev Spaces와 함께 사용되는 영구 볼륨에 사용할 권장 스토리지는 무엇입니까?
- 블록 스토리지를 사용합니다.
- 동일한 클러스터에 둘 이상의 OpenShift Dev Spaces 인스턴스를 배포할 수 있습니까?
- 클러스터당 하나의 OpenShift Dev Spaces 인스턴스만 배포할 수 있습니다.
- OpenShift Dev Spaces를 오프라인으로 설치할 수 있습니까(즉, 인터넷과 연결이 끊어진 경우)
- OpenShift 의 제한된 환경에 Red Hat OpenShift Dev Spaces 설치를 참조하십시오.
- OpenShift Dev Spaces에서 기본이 아닌 인증서를 사용할 수 있습니까?
- 자체 서명 또는 공용 인증서를 사용할 수 있습니다. 신뢰할 수 없는 TLS 인증서 가져오기 를 참조하십시오.
- 여러 작업 공간을 동시에 실행할 수 있습니까?
- 사용자가 여러 작업 공간을 동시에 실행할 수 있도록 활성화를 참조하십시오.