프로젝트 관리¶
프로젝트 개요¶
프로젝트는 사람과 자원을 구성하는 데 사용됩니다. 단일 도메인 내의 Mold 사용자는 자신을 프로젝트 팀으로 그룹화하여 VM, 스냅 샷, 템플릿, 데이터 디스크 및 IP 주소와 같은 가상 리소스를 공동 작업하고 공유할 수 있습니다. Mold는 프로젝트 및 사용자별로 리소스 사용량을 추적하므로 사용량은 사용자 계정 또는 프로젝트로 청구될 수 있습니다. 예를 들어 소프트웨어 회사 내의 사설 클라우드에는 QA 부서의 모든 구성원이 하나의 프로젝트에 할당되어 있으므로 회사는 테스트에 사용된 리소스를 추적할 수 있으며 프로젝트 구성원은 동일한 클라우드의 다른 사용자로부터 자신의 성과를 더 쉽게 분리할 수 있습니다.
모든 사용자가 새 프로젝트를 생성할 수 있도록 Mold를 구성하거나 해당 기능을 Mold 관리자로만 제한할 수 있습니다. 프로젝트를 생성하면 해당 프로젝트의 관리자가 되고 도메인 내의 다른 사용자를 프로젝트에 추가할 수 있습니다. Mold는 사람을 프로젝트에 직접 추가하거나 수신자가 수락해야 하는 초대를 보내도록 설정할 수 있습니다. 프로젝트 구성원은 프로젝트의 모든 사람이 만든 모든 가상 리소스를 보고 관리할 수 있습니다 (예 : VM 공유). 사용자는 여러 프로젝트의 구성원이 될 수 있으며 Mold UI에서 보기를 전환하여 프로젝트 VM, 동료 프로젝트 구성원, 프로젝트 관련 경고 등과 같은 프로젝트 관련 정보만 표시할 수 있습니다.
프로젝트에 여러 프로젝트 관리자가 있고 계정을 추가하는 것 외에도 특정 계정 사용자를 프로젝트에 추가/초대할 수 있습니다. 프로젝트의 사용자 또는 계정과 관련된 프로젝트 역할을 통해 프로젝트에서 사용자의 액세스를 제한할 수 있습니다. 즉, 계정 수준 역할에 추가하여 다음을 통해 작업 (또는 API)에 대한 액세스를 추가로 제한할 수 있습니다. 프로젝트 수준 역할을 사용자 또는 계정에 연결합니다. 그러나 계정이 이미 추가된 경우 해당 계정의 특정 사용자에게 역할을 연결할 수 없습니다.
Note
프로젝트 역할은 계정 수준 역할에서 작동합니다. 사용자/계정이 프로젝트 역할 없이 프로젝트에 추가되는 경우 추가된 사용자/계정이 계정 수준 역할에서 사용할 수 있는 모든 API에 액세스할 수 있음을 의미합니다. 프로젝트 역할에 특정 거부 규칙이 없는 경우 사용자에게 특정 작업을 수행할 권한이 있는지 여부를 결정하기 위해 다시 계정 수준 역할로 대체됩니다. 또한 프로젝트 역할은 본질적으로 제한적이라는 점에 유의해야 합니다. 즉, 사용자가 계정 수준에서 허용되지 않는 작업을 수행하도록 허용하지 않을 수 있습니다. 프로젝트 수준에서 규칙이 추가되어 이러한 작업을 허용하더라도 해당 작업은 계정 역할에 의해 금지되므로 아무런 효과가 없습니다.
프로젝트 관리자는 프로젝트에서 사용자를 승격하거나 강등할 수 있습니다. 프로젝트 관리자는 또한 더 많은 구성원을 추가하고, 프로젝트에서 구성원을 제거하고, 새 리소스 제한을 설정하고 (Mold 관리자가 설정한 글로벌 기본값보다 낮은 경우) 프로젝트를 삭제할 수 있습니다. 관리자가 프로젝트에서 구성원을 제거하면 해당 사용자가 만든 리소스 (예 : VM 인스턴스)는 프로젝트에 남아 있습니다.
프로젝트 내에서 생성된 리소스는 특정 Mold 계정이 아닌 프로젝트 소유이며 프로젝트 내에서만 사용할 수 있습니다. 하나 이상의 프로젝트에 속한 사용자는 여전히 해당 프로젝트 외부에서 리소스를 만들 수 있으며 이러한 리소스는 사용자의 계정에 속합니다. 프로젝트의 사용량 또는 리소스 제한에 포함되지 않습니다. 프로젝트 수준 네트워크를 만들어 프로젝트 내에서 트래픽을 격리하고 port forwarding, load balancing, VPN, and static NAT와 같은 네트워크 서비스를 제공할 수 있습니다. 프로젝트는 또한 해당 리소스가 공유되는 경우 프로젝트 외부의 특정 유형의 리소스를 사용할 수 있습니다. 예를 들어 공유 네트워크 또는 공용 템플릿은 도메인의 모든 프로젝트에서 사용할 수 있습니다. 템플릿 소유자가 권한을 부여하면 프로젝트가 비공개 템플릿에 액세스할 수 있습니다. 프로젝트는 도메인에서 사용 가능한 모든 서비스 오퍼링 또는 디스크 오퍼링을 사용할 수 있습니다. 그러나 프로젝트 레벨에서 개인 서비스 및 디스크 오퍼링을 작성할 수 없습니다.
프로젝트 구성¶
Mold 사용자가 프로젝트 사용을 시작하기 전에 Mold 관리자는 멤버십 초대, 프로젝트 리소스에 대한 제한, 프로젝트를 생성할 수 있는 사람에 대한 제어를 포함하여 이를 지원할 다양한 시스템을 설정해야 합니다.
초대장 설정
Mold는 프로젝트 관리자가 사람을 프로젝트에 직접 추가할 수 있도록 설정하거나 수신자가 수락해야 하는 초대를 보내야 합니다. 초대는 이메일 또는 사용자의 Mold 계정을 통해 보낼 수 있습니다. 관리자가 초대를 사용하여 프로젝트에 구성원을 추가하도록 하려면 Mold에서 초대 기능을 켜고 설정하십시오.
- Mold UI에 관리자로 로그인하십시오.
- 왼쪽 탐색에서 글로벌 설정을 클릭합니다.
- 검색 상자에 project를 입력하고 검색 버튼을 클릭합니다.
- 검색 결과에서 초대 작동 방식을 제어하기 위해 설정해야 하는 몇 가지 다른 매개 변수를 볼 수 있습니다. 아래 표는 프로젝트 초대와 관련된 전역 구성 매개 변수를 보여줍니다. 편집 버튼을 클릭하여 각 매개 변수를 설정합니다.
project.invite.required | 초대 기능을 켜려면 true로 설정하십시오. |
project.email.sender | 초대 이메일의 보낸 사람 필드에 표시할 이메일 주소입니다. |
project.invite.timeout | 새 회원이 초대에 응답할 수 있는 시간입니다. |
project.smtp.host | 초대를 처리하는 이메일 서버 역할을하는 호스트의 이름입니다. |
project.smtp.password | (선택 사항) SMTP 서버에 필요한 비밀번호입니다. 또한 project.smtp.username을 설정하고 project.smtp.useAuth를 true로 설정해야 합니다. |
project.smtp.port | SMTP 서버의 수신 포트. |
project.smtp.useAuth | SMTP 서버에 사용자 이름과 비밀번호가 필요한 경우 true로 설정하십시오. |
project.smtp.username | (선택 사항) 인증을 위해 SMTP 서버에 필요한 사용자 이름입니다. 또한 project.smtp.password를 설정하고 project.smtp.useAuth를 true로 설정해야 합니다. |
- 관리 서버를 다시 시작합니다.
service cloudstack-management restart
프로젝트에 대한 자원 제한 설정
Mold 관리자는 글로벌 기본 제한을 설정하여 클라우드의 각 프로젝트가 소유할 수 있는 리소스 양을 제어할 수 있습니다. 이는 스냅 샷, IP 주소 및 가상머신 인스턴스와 같은 리소스의 제어되지 않은 사용을 방지하는 역할을 합니다. 도메인 관리자는 새 제한이 Mold 루트 관리자가 설정한 전역 기본값보다 낮은 경우 도메인이 있는 개별 프로젝트에 대한 이러한 리소스 제한을 재정의할 수 있습니다. 루트 관리자는 클라우드의 모든 프로젝트에 대해 더 낮은 리소스 제한을 설정할 수도 있습니다.
프로젝트별 자원 제한 설정
Mold 루트 관리자 또는 프로젝트가 있는 도메인의 도메인 관리자는 개별 프로젝트에 대한 새 리소스 제한을 설정할 수 있습니다. 프로젝트 소유자는 소유자가 도메인 또는 루트 관리자인 경우에만 리소스 제한을 설정할 수 있습니다.
새 제한은 Mold 관리자가 설정한 전역 기본 제한보다 작아야 합니다 ( “프로젝트에 대한 리소스 제한 설정"에 설명됨 ). 프로젝트가 이미 새로운 최댓값보다 주어진 유형의 자원을 더 많이 소유하고 있는 경우 자원은 영향을 받지 않습니다. 그러나 프로젝트는 총계가 새 한도 아래로 떨어질 때까지 해당 유형의 새 리소스를 추가할 수 없습니다.
- Mold UI에 관리자로 로그인하십시오.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 작업할 프로젝트의 이름을 클릭하십시오.
- 리소스 탭을 클릭하십시오. 이 탭에는 프로젝트가 각 리소스 유형에 대해 소유할 수 있는 현재 최대 수치가 나열됩니다.
- 리소스에 대해 제한 설정하려면 제한구성 탭에서 하나 이상의 새 값을 입력합니다.
- 보내기를 클릭하십시오.
글로벌 프로젝트 자원 제한 설정
- Mold UI에 관리자로 로그인하십시오.
- 왼쪽 탐색에서 글로벌 설정을 클릭합니다.
- 검색 창에 "max.projects"를 입력하고 검색 버튼을 클릭합니다.
- 검색 결과에는 클라우드의 모든 프로젝트에 적용되는 프로젝트별 최대 리소스 수치를 설정하는 데 사용할 수 있는 매개 변수가 표시됩니다. 어떤 프로젝트도 더 많은 리소스를 가질 수 없지만, 개별 프로젝트는 더 낮은 제한을 가질 수 있습니다. 편집 버튼을 클릭하여 각 매개 변수를 설정합니다.
max.project.public.ips | 클라우드의 모든 프로젝트에서 소유할 수 있는 최대 공용 IP 주소 수입니다. 공용 IP 주소 정보를 참조하십시오. |
max.project.snapshots | 클라우드의 모든 프로젝트에서 소유할 수 있는 최대 스냅 샷 수입니다. 스냅 샷 작업을 참조하십시오. |
max.project.templates | 클라우드의 모든 프로젝트에서 소유할 수 있는 최대 템플릿 수입니다. 템플릿 작업을 참조하십시오. |
max.project.uservms | 클라우드의 모든 프로젝트에서 소유할 수 있는 최대 게스트 가상 머신 수입니다. 가상 머신 작업을 참조하십시오. |
max.project.volumes | 클라우드의 모든 프로젝트에서 소유할 수 있는 최대 데이터 볼륨 수입니다. 볼륨 작업을 참조하십시오. |
- 관리 서버를 다시 시작합니다.
service cloudstack-management restart
프로젝트 생성자 권한 설정
모든 사용자가 새 프로젝트를 생성할 수 있도록 Mold를 구성하거나 해당 기능을 Mold 관리자로만 제한할 수 있습니다.
- Mold UI에 관리자로 로그인하십시오.
- 왼쪽 탐색에서 글로벌 설정을 클릭합니다.
- 검색 상자에
allow.user.create.projects
를 입력합니다. - 매개 변수를 설정하려면 편집 버튼을 클릭합니다.
allow.user.create.projects
최종 사용자가 프로젝트를 만들 수 있도록 하려면 true로 설정합니다. Mold 루트 관리자 및 도메인 관리자만 프로젝트를 생성하도록 하려면 false로 설정합니다. - 관리 서버를 다시 시작합니다.
service cloudstack-management restart
새 프로젝트 생성¶
Mold 관리자 및 도메인 관리자는 프로젝트를 생성할 수 있습니다. 전역 구성 매개 변수 allow.user.create.projects가 true로 설정된 경우 최종 사용자도 프로젝트를 생성할 수 있습니다.
- Mold UI에 관리자로 로그인하십시오.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 새 프로젝트를 클릭하십시오.
- 사용자에게 표시할 프로젝트 이름과 설명을 지정한 다음 프로젝트 만들기를 클릭합니다.
- 프로젝트에 더 많은 구성원을 즉시 추가할 수 있는 화면이 나타납니다. 이것은 선택 사항입니다. 계속 진행할 준비가 되면 다음을 클릭합니다.
- 확인을 클릭하십시오.
프로젝트에 구성원 추가¶
프로젝트 관리자, 프로젝트가 상주하는 도메인의 도메인 관리자 또는 상위 도메인 또는 Mold 루트 관리자가 새 구성원을 프로젝트에 추가할 수 있습니다. Mold에서 구성원을 추가하는 방법에는 두 가지가 있지만 한 번에 한 가지 방법만 활성화됩니다.
- 초대가 활성화된 경우 새 구성원에게 초대를 보낼 수 있습니다.
- 초대가 활성화되지 않은 경우 UI를 통해 직접 구성원을 추가할 수 있습니다.
프로젝트 멤버십 초대장 보내기
"초대 설정"에 설명된 대로 클라우드에서 초대 기능이 활성화된 경우 다음 단계를 사용하여 프로젝트에 새 구성원을 추가합니다. 초대 기능이 켜져 있지 않으면 UI에서 프로젝트 구성원 추가의 절차를 사용하십시오.
- Mold UI에 로그인합니다.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 작업할 프로젝트의 이름을 클릭하십시오.
-
프로젝트에 계정 추가 버튼을 클릭합니다. 여기에는 프로젝트에 계정을 추가하는 탭과 프로젝트에 사용자를 추가하는 탭이 있습니다. 여기에서 다음을 지정할 수 있습니다.
- 초대할 사용자의 계정 또는 사용자 둘 중 하나와 이메일 ID
- (선택 사항) 역할 즉, 사용자가 추가될 관리자 또는 일반, 기본값은 일반 역할
- (선택 사항) 사용자에게 액세스가 허용/거부된 API 목록을 지정하는 프로젝트 역할
프로젝트와 동일한 도메인 내에서 이 클라우드에 계정이 있는 사람만 초대할 수 있습니다. 그러나 모든 이메일 주소로 초대장을 보낼 수 있습니다. -
보낸 초대장을 보고 관리하려면 이 탭으로 돌아갑니다. 초대가 수락되면 새 멤버가 프로젝트의 계정 탭에 나타납니다.
UI에서 프로젝트 멤버 추가
아래 단계는 클라우드에서 초대 기능이 활성화되지 않은 경우 프로젝트에 새 구성원을 추가하는 방법을 설명합니다. 초대 기능이 클라우드가 활성화된 경우 "초대 설정"에 설명 된 대로 "프로젝트 멤버십 초대 보내기" 의 절차를 사용합니다 .
- Mold UI에 로그인합니다.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 작업할 프로젝트의 이름을 클릭하십시오.
- 프로젝트에 계정 추가 버튼을 클릭합니다. 여기에는 프로젝트에 계정을 추가하는 탭과 프로젝트에 사용자를 추가하는 탭이 있습니다. 여기에서 다음을 지정할 수 있습니다.
- 초대할 사용자의 계정 또는 사용자 둘 중 하나와 이메일 ID
- (선택 사항) 역할 즉, 사용자가 추가될 관리자 또는 일반, 기본값은 일반 역할
- (선택 사항) 사용자에게 액세스가 허용/거부된 API 목록을 지정하는 프로젝트 역할
- 이 클라우드 및 프로젝트와 동일한 도메인 내에 계정이 있는 사람만 추가할 수 있습니다.
회원 초대 수락¶
Mold 프로젝트에 참여하라는 초대를 받았으며 초대를 수락하려면 다음 단계를 따르십시오.
- Mold UI에 로그인합니다.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 프로젝트 초대 버튼을 클릭합니다
- 화면에 초대 목록이 표시되면 수락 버튼을 클릭합니다. 화면에 나열된 초대장은 Mold 계정 이름을 사용하여 전송되었습니다.
- 이메일 초대를 받은 경우 토큰 입력 버튼을 클릭하고 이메일에서 프로젝트 ID와 고유 ID 코드 (토큰)를 제공합니다.
프로젝트 일시 중단 또는 삭제¶
프로젝트가 일시 중지되면 소유한 리소스는 유지되지만 더 이상 사용할 수 없습니다. 일시 중지된 프로젝트에 새 리소스나 구성원을 추가할 수 없습니다.
프로젝트가 삭제되면 해당 리소스가 파괴되고 멤버 계정이 프로젝트에서 제거됩니다. 프로젝트의 상태는 최종 삭제 대기 중 비활성화됨으로 표시됩니다.
프로젝트 관리자, 프로젝트가 속한 도메인 또는 상위 도메인의 도메인 관리자 또는 Mold 루트 관리자가 프로젝트를 일시 중지하거나 삭제할 수 있습니다.
- Mold UI에 로그인합니다.
- 왼쪽 탐색에서 프로젝트를 클릭합니다.
- 보기 선택에서 프로젝트를 선택합니다.
- 프로젝트 이름을 클릭하십시오.
- 다음 버튼 중 하나를 클릭합니다. 삭제하려면 프로젝트를 제거 버튼, 일시 중지하려면 일시 중지 버튼
프로젝트 보기 사용¶
프로젝트의 구성원인 경우 Mold의 프로젝트 보기를 사용하여 프로젝트 구성원, 소비된 리소스 등을 볼 수 있습니다. 프로젝트 보기에는 한 프로젝트와 관련된 정보만 표시됩니다. 프로젝트 상태 및 리소스에 집중할 수 있도록 다른 정보를 필터링하는 유용한 방법입니다.
- Mold UI에 로그인합니다.
- 프로젝트 보기를 클릭합니다.
- 프로젝트 대시 보드가 나타나 프로젝트의 VM, 볼륨, 사용자, 이벤트, 네트워크 설정 등을 보여줍니다. 대시 보드에서 다음을 수행할 수 있습니다.
- 프로젝트 멤버를 보고 관리하려면 계정 탭을 클릭하십시오. 프로젝트 관리자인 경우 새 구성원을 추가하거나 구성원을 제거하거나 구성원의 역할을 사용자에서 관리자로 또는 그 반대로 변경할 수 있습니다.
- (초대가 활성화된 경우) 초대 버튼을 클릭하여 새 프로젝트 구성원에게 전송되었지만, 아직 수락되지 않은 초대를 보고 관리합니다. 대기 중인 초대는 새 구성원이 수락하거나 초대 시간 초과에 도달하거나 초대를 취소할 때까지 이 목록에 남아 있습니다.