Modernization Platform v2.1.0 GA Release

Print

NEW FEATURE


Application, Deploy Group 조회 기능 개선

Application, Deploy Group 메뉴에서 리소스들을 조회하는 기능이 개선되었습니다.

Application 목록 페이지

Project Dashboard > Application 목록 페이지에서 Application Name으로 검색할 수 있는 기능이 추가되었습니다.

Deploy Group 목록 페이지

Project Dashboard > Deploy Group 목록 페이지에서 Deploy Group Name과 Namespace로 검색할 수 있는 기능이 추가되었습니다.

Deploy Groups > Applications

Deploy Group의 Applications 탭에서 Application Name으로 검색 및 페이징 할 수 있는 기능이 추가되었습니다.

Deploy Groups > Resources

Deploy Group의 Resources 탭에 Resource Name으로 검색 및 페이징 할 수 있는 기능이 추가되었습니다.

Deploy Groups > Ingress

Deploy Group의 Ingress 탭에 Ingress Name으로 검색 및 페이징 할 수 있는 기능이 추가되었습니다.

시스템 메뉴의 User 목록 화면에 ID 검색 기능 추가

System Dashboard > Users 화면에서 Login ID로 user를 검색 할 수 있는 기능이 추가되었습니다.

Add-on 설치 화면에 목록 Refresh 기능 추가

Add-on 목록 화면에서 설치 상태를 갱신할 수 있는 버튼이 추가되었습니다.

Ingress 설정 기능 개선

Deploy Group 의 Ingress 탭에서 설정할 수 있는 기능이 개선되었습니다.

Ingress 에서 Service 명 직접 입력 가능

Ingress Path 의 서비스명을 목록 선택 뿐만 아니라 직접 입력할 수 있도록 개선되었습니다.

Application 탭에서 배포하는 Application 을 선택하거나사용자가 별도로 생성한 Service 를 직접 지정할 수 있습니다.

Ingress PathType 설정 지원

Deploy Group에서 Ingress 배포시 Ingress의 PathType을 설정 할 수 있습니다.

Prefix, Exact, ImplementationSpecific이며, Default는 ImplementationSpecific 입니다.

Ingress Class 설정 지원

Deploy Group에서 Ingress 배포시 Ingress Class를 지정할수있습니다. 배포할 dataplane에 Ingress Class가 배포되어야 하며, 선택하지 않으면 dataplane cluster에 default로 설정된 Ingress class가 사용됩니다.

ACM TLS 사용을 위한 기능 지원

ALB Ingress Controller 에서 TLS Offloading 을 위해 ACM 에 등록된 인증서를 사용하는 경우를 지원합니다.

ACM 을 사용하는 경우 TLS configure 옵션을 체크하고 TLS Secret 을 선택하지 않은 상태로 저장해야 합니다.

TLS Secret 대신 Annotation 에서 지정한 ACM Arn 을 사용하게 됩니다.

DeployGroup의 Cluster 삭제시 Prevent Cascade Delete 옵션 추가

DeployGroup에서 Cluster 삭제시 Cluster의 배포된 Resource의 정리 여부를 선택합니다.

  • Enabled (Default) : Deploy Group 이 삭제되거나, Deploy Group 에서 Cluster 가 제거되어도 해당 Cluster 에 배포되어 있는 Resource 와 Namespace 를 삭제하지 않습니다.

  • Disabled : Deploy Group 이 삭제되거나, Deploy Group 에서 Cluster 제거될 때 해당 Cluster 에 배포되어 있는 Resource 와 Namespace 를 삭제합니다.

해당 option의 선택여부에 따라 Deploy Group > Clusters 에서 cluster 삭제시 다른 확인 메세지를 표시합니다.

Application 빌드 수행 시점에 Branch 를 지정할 수 있는 기능 추가

빌드를 수행시킬 때 Git branch 를 지정하여 빌드를 실행시킬 수 있는 기능이 추가되었습니다.

Pipeline 설정 화면에서 Branch 항목의 옵션을 체크하면 빌드 수행 요청 시 Branch 를 입력할 수 있습니다.

Pipeline 설정 화면에서 지정한 Branch 를 기본으로 사용하고, 다른 Branch 를 빌드하고 싶을 경우 Branch 이름을 입력할 수 있습니다.

Application 빌드시 Cache 사용 여부 Option 추가

Application > Build Pipeline에서 빌드시 Cache 사용여부를 결정합니다. Cache를 통해 빌드 수행 속도를 개선시킬수 있지만 빌드에 사용한 resource를 재사용하기 때문에, 사용시 예측하지 못한 오류를 야기할 수 있으며 Concurrent 빌드 및 Storage size 변경에 제한이 발생합니다.

NodeJs의 새로운 버전 제공

Application > Build Pipeline > Build Tool에서 npm 빌드 선택시 선택가능한 Node Version이 추가됩니다. (node15,16,17,18)

이미 완료된 Build Log 조회시 속도 개선

빌드가 완료된 application의 log조회시 stream이 아닌 string으로 받아 속도가 개선되었으며, 사용자에게 Readable한형태로 제공됩니다.

Application, DeployGroup의 사용자 Tag 기능

Application과 DeployGroup에서 사용자 Tag기능을 제공합니다.

[Tag 수정]

Application, DeployGroup resource 의 Basic Info 화면에서 tag를 key/value 형태로 등록할수 있습니다. 동일한 key를 등록하는 경우 overwrite 됩니다.

[Tag 조회]

각 resource의 조회화면에는 Filter를 제공합니다. Tags 선택시 해당 project에 등록된 resource의 tag key를 조회할수있으며, key를 선택해 조회하거나 key:value 형태로 직접 입력하여 조회 할 수 있습니다.

Application 복사 기능

기 생성된 Application을 이용해 새로운 Application 을 생성 할 수 있습니다. 복사기능은 Source Project 또는 Target Project 를 기준으로 복사할수 있습니다.

[Source Project 기준 복사]

복사할 application을 checkbox로 선택한 후, Copy Application 버튼을 통해 Copy페이지로 이동합니다.

[Target Project 기준 복사]

Application > New Application 에서 Copy Exist Application 버튼을 통해 Copy 페이지로 이동합니다.

Copy Application 화면에서는 진입경로에 따라 Source/Target Project 의 정보가 자동으로 입력되며, 선택된 Application 여부에 따라 복사 대상 Application의 정보가 포함됩니다. Source Application을 기준으로 새로 생성할 Application 이름과 Image 를 저장할 Image registry정보를 수정해서 복사 할수있습니다. Create 버튼을 통해 복사가 수행됩니다.

HostAlias 기능 추가

Deployment Group > Application > Configuration > Etc 를 통해 HostAlias를 지정할 수 있는 기능을 제공합니다.

IP와 Host Name (Domain) 을 지정하여 배포 할 어플리케이션에 HostAlias를 지정할수 있습니다.

메일 발송 기능 추가

프로젝트 생성 요청, 프로젝트 멤버 가입 요청, 프로젝트 설정 완료 시 관련 담당자에게 메일로 알림을 주는 기능이 추가되었습니다.

프로젝트 생성 요청 및 셋업 완료 시에는 project-administrator, global-administrator role 이 있는 사용자가 메일을 수신하게 됩니다.

프로젝트 조인 요청 시에는 해당 프로젝트의 project-administrator role 이 있는 사용자가 메일을 수신하게 됩니다.

프로젝트 생성 요청

New Project > Request to create a project 에서 프로젝트 생성 요청을 하면 다음과 같은 메일을 수신할 수 있습니다.

프로젝트 셋업 완료

System Dashboard > Projects 의 해당 프로젝트 항목에서 E-mail 버튼을 클릭하면 프로젝트 세팅 완료 메일을 발송 할 수 있습니다.

프로젝트 조인 요청

New Project > Request to Join a project 에서 프로젝트 조인 요청을 하면 다음과 같은 메일을 수신할 수 있습니다.

시스템 메뉴의 Tool 옵션에 대한 기능 개선

Tool 목록에서 Default 는 Tool type 별로 하나씩만 지정할 수 있게 변경되었습니다.

Default 로 지정된 Tool 은 시스템 메뉴에서 사용됩니다.

비활성화 (Enable 이 Off) 된 경우 해당 Tool 을 사용하는 메뉴도 함께 비활성화 됩니다.

프로젝트 상태 변경에 대한 프로세스 변경

프로젝트의 상태 변경에 대한 프로세스가 변경되었습니다.

프로젝트 생성 이벤트는 프로젝트의 상태가 Requested 에서 Running 으로 바뀔 경우 발생합니다.

한 번 Running 상태가 된 Project 는 Requested 로 변경할 수 없습니다.

사용자 가입 프로세스 변경

사용자 가입 시 (Self Registration) 시스템 어드민의 승인 없이 사용할 수 없던 프로세스를 변경하였습니다.

사용자가 직접 가입해도 자동으로 승인 상태가 되며 프로젝트 어드민은 즉시 프로젝트에 초대할 수 있습니다.

Monitoring AlertManager config 및 Rule 설정 조회 기능

Monitoring > AlertManager 및 Rules 를 통해 AlertManager의 configuration 과 설정된 Rules를 조회할 수 있습니다.

Rules 를 조회하면 설정 query 및 상세 정보를 확인할 수 있습니다.

모니터링 Main org 에 권한 할당 기능 추가

Roles > Tools Permissions 에서 Grafana 에 SystemAdmin, SystemEditor, SystemViewer 역할을 지정할 수 있습니다. 해당 Role 을 사용자에게 부여하면 그 사용자는 Main org 에 추가되고 역할에 맞는 권한을 부여받게 됩니다.

메뉴 관리 기능 개선

System Dashboard > Platform > Menus 항목에서 메뉴 관리를 위한 화면과 기능을 개선하였습니다.

System Menu 와 Project Menu 를 탭으로 구분하고, Main Menu와 Sub Menu를 직관적으로 구분할 수 있게 하였습니다.

또한 메뉴에 신규 메뉴 등록 시 등록한 메뉴가 기본 아이콘과 함께 표시되도록 수정하였습니다.

Upgrade Grafana version

Grafana version 이 8.5.3 으로 업그레이드 되었습니다.

MCM Backend 재개발

향후 유지보수가 용이하도록 MCM Backend 를 GO Language 로 재개발하였습니다.

화면 하단에 제품 버전 표시

화면 우측 하단에 Modernization Platform 의 현재 버전을 표시하도록 하였습니다.

BUG FIX


ZCP 콘솔에서 인증 Token 시간 만료 시 사용자가 의도하지 않은 화면 Refresh 현상 개선

사용자의 인증 Token 이 만료되어 화면이 Refresh 되고 작업 중이던 내용이 유실되던 현상을 수정하였습니다.

메뉴 상세 화면에서 정보 수정 시 수정 전 데이터가 보이던 버그 수정

메뉴 정보를 수정하고 저장했을때 수정하기 전의 데이터가 보이던 현상을 해결하였습니다.

이미 가입되어 있는 프로젝트에 가입 요청을 할 수 있던 버그 수정

이미 가입되어 있는 프로젝트에 가입 요청을 할 수 있고, 가입요청을 하면 승인 상태가 풀려버리던 문제를 해결하였습니다.

Role 저장 시 500 에러가 발생하던 버그 수정

일부 Role 저장 시 api 의 parameter 누락으로 500 에러가 발생하던 버그를 수정하였습니다.

Deploy Group 이 추가되어도 해당 Namespace 에 Kubernetes 권한이 부여되지 않던 버그 수정

사용자에게 Kubernetes 권한이 있어도 신규로 추가된 Deploy Group 의 Namespace 에 권한이 부여되지 않던 버그를 수정하였습니다.

일부 리소스가 GitOps를 통해 배포되지 않던 버그 수정

Operator에서 argocd namespace string을 잘못 만드는 현상이 있어 해당 버그 수정하였습니다.

application과 deploygroup명이 동일한 경우 argocd에서 사용하는 secret 명이 동일하게 생성되어 secret이 덮어씌어지는 문제를 해결하였습니다.

빌드 실행시 이전 빌드가 실행중인 경우 발생하던 버그 수정

Application의 빌드 수행시 이전 Application의 history update의 타이밍 문제로 인해 다음 빌드가 수행되지 않던 문제를 해결하였습니다.

Argocd Application 삭제 실패시 finalizer가 계속 추가되는 버그 수정

Argocd Application 삭제 실패시 동일한 finalizer가 무한히 추가되던 버그를 해결하였습니다.

DeployGroup에 클러스터 추가시 잘못된 mcm 네임스페이스에 요청하여 에러나는 버그 수정

DeployGroup에 클러스터 추가시 MCM에 잘못된 Namespace 값을 사용해 요청하던 문제를 해결하였습니다.

Abort로 중지한 빌드의 Build History 다이얼로그에서 에러 팝업이 뜨는 버그 수정

Application 빌드시 빌드를 수행하는 Pod의 상태에 따라 history 조회시 에러팝업이 뜨는 현상을 해결하였습니다.

파이프라인 정보 수정시 ZcpApplication의 시스템 라벨이 삭제되는 버그 수정

Application의 pipeline 설정 변경시 ZCP에서 사용하는 시스템 라벨이 삭제되는 버그를 수정하였습니다.

ZcpApplication, DeployGroup의 Display Name이 목록 조회에 표시되지 않는 버그 수정

Application과 Deployment Group 목록 조회시 Display Name이 표시되지 않던 문제를 해결하였습니다.

DeployGroup에 클러스터 추가 이벤트에 대한 error 처리 관련 버그 수정

DeployGroup에 클러스터 추가 중 발생하는 error를 처리하지 않아 발생하던 문제를 해결하였습니다.

Deploy Group 의 Overview 화면에서 Quota 조회 실패하던 버그 수정

Deploy Group Overview 화면에서 Quota 조회 시 파라미터 생성이 잘못되어 500 에러가 발생하던 버그를 수정하였습니다.

프로젝트 변경 시 Deploy Group 목록 화면에 수량이 잘못 표시되던 버그 수정

Deploy Group 목록 화면이 표시된 상황에서 프로젝트를 변경할 경우 이전 프로젝트의 Deploy Group 수량이 표시되던 버그를 수정하였습니다.

Add-on 화면에서 설치된 Add-on 수가 잘못 표시되던 버그 수정

Add-on 화면의 Installed 에 이미 설치되어 있는 Add-on 의 수량이 잘못 표시되던 버그가 수정되었습니다.

시스템 관리자 콘솔 메뉴의 Grafana tool 권한이 부여되지 않던 버그 수정

시스템 관리자 콘솔 메뉴에서 Grafana tool 권한이 부여되지 않던 현상을 해결하였습니다.

DeployGroup에 클러스터 추가 시 prometheus가 삭제되는 버그 수정

DeployGroup에 클러스터 추가/삭제 시 의도치 않게 prometheus가 삭제되던 현상을 해결하였습니다.

Cluster 에 이상이 있을 때 Kubeconfig 를 조회하지 못하던 버그 수정

Cluster 의 상태에 이상이 있을 경우 (Node Not Ready 등) Kubeconfig 를 조회하지 못하던 버그를 수정하였습니다.

Project 에서 Cluster 를 제거해도 Deploy Group 에 남아있던 버그 수정

Project 에서 Cluster 가 제거되어도 Deploy Group 에 해당 Cluster 가 남아있어 배포를 할수 있게 되던 버그를 수정하였습니다.

Project 에서 Cluster 를 제거하는 시점에 Deploy Group 에서도 같이 제거되며, 해당 Cluster 에 배포되어 있던 Namespace와 Resource 들은 Prevent Cascade Option 설정 여부에 따라 처리됩니다. 옵션이 Disable 되어 있는 경우에만 삭제되고, Enable 되어있는 경우 그대로 남아있게 됩니다.

Kube Permission 이 추가되지 않던 버그 수정

Role 의 Kube Permission 탭에서 Resource 를 선택하고 추가해도 테이블에 추가되지 않던 버그를 수정하였습니다.

Member 초대 Text 에 전체 사용자가 표시되던 버그 수정

프로젝트의 Member 초대를 위한 검색 Text 에 값이 비어있을 경우 전체 사용자 목록이 보이던 버그를 수정하였습니다.

Cluster Administrator 역할이 있어도 Cluster 를 삭제하지 못하던 버그 수정

Cluster Administrator 시스템 역할이 있어도 권한 부족으로 Cluster 삭제를 할 수 없더 버그를 수정하였습니다.

프로젝트 생성 시 Kibana Role 에 권한이 연결되지 않던 버그 수정

프로젝트 생성 시 Kibana Role 에 Modernization Platform 의 Role 이 연결되지 않던 버그를 수정하였습니다.

보안 관련 이슈 해결

일부 에러 페이지에서 서버 정보가 노출되던 현상을 수정하였습니다.

보안 Header 와 Secured cookie 를 사용하도록 하였습니다.

Group에 의해 반영된 Effective role 의 kubernetes 권한이 반영되지 않는 현상 수정

Group에 의해 반영된 Effective role의 kubernetes권한이 사용자에게 제대로 반영되지 않는 버그를 수정하였습니다.

Kubernetes Resource 에 대한 권한 추가

kubernetes의 일부 리소스는 subresource에 대한 권한도 부여해야 리소스의 로그 조회, 실행 등의 기능을 사용할 수 있습니다. 기존에 누락되었던 부가적인 subresource에 대한 권한을 추가해주었습니다.

시스템 메뉴의 모니터링 메뉴에 프로젝트 모니터링 링크가 보이는 현상 수정

System Dashboard > Monitoring 메뉴에 Project Monitoring 링크가 보이는 버그를 수정하였습니다.

Realm 이 생성되면 각 backend 로 realm 생성 event 전파하도록 수정

Realm Initialize 시점에 Realm created event를 전파하여 Realm default 세팅 및 Realm scope 의 monitoring alertmanager 설정과 alert rule 등록이 자동으로 설정되도록 개선하였습니다.

이 답변이 유용합니까? 아니오

Send feedback
도움이 되어드리지 못해 죄송합니다. 아티클 개선을 위해 의견을 제공해 주시기 바랍니다.