2장. 프로젝트
2.1. 노드 작업
사용자 커뮤니티는 프로젝트를 통해 다른 커뮤니티와 별도로 콘텐츠를 구성하고 관리할 수 있습니다.
openshift-
및 kube-
로 시작하는 프로젝트는 기본 프로젝트입니다. 이러한 프로젝트는 Pod 및 기타 인프라 구성 요소로 실행되는 클러스터 구성 요소를 호스팅합니다. 따라서 OpenShift Container Platform에서는 oc new-project
명령을 사용하여 openshift-
또는 kube-
로 시작하는 프로젝트를 생성할 수 없습니다. 클러스터 관리자는 oc adm new-project
명령을 사용하여 이러한 프로젝트를 생성할 수 있습니다.
기본 네임스페이스(default
, kube-system
, kube-public
, openshift-node
, openshift-infra
, openshift
) 중 하나에서 생성된 Pod에는 SCC를 할당할 수 없습니다. 이러한 네임스페이스는 Pod 또는 서비스를 실행하는 데 사용할 수 없습니다.
2.1.1. 프로젝트 생성
OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI(oc
)를 사용하여 클러스터에 프로젝트를 생성할 수 있습니다.
2.1.1.1. 웹 콘솔을 사용하여 프로젝트 생성
OpenShift Container Platform 웹 콘솔을 사용하여 클러스터에 프로젝트를 생성할 수 있습니다.
openshift-
및 kube-
로 시작하는 프로젝트는 OpenShift Container Platform에서 중요한 것으로 간주합니다. 따라서 OpenShift Container Platform에서는 웹 콘솔을 사용하여 openshift-
로 시작하는 프로젝트를 생성할 수 없습니다.
사전 요구 사항
- OpenShift Container Platform에서 프로젝트, 애플리케이션 및 기타 워크로드를 생성할 적절한 역할과 권한이 있는지 확인합니다.
프로세스
관리자 화면을 사용하는 경우:
-
홈
프로젝트로 이동합니다. 프로젝트 생성을 클릭합니다.
-
프로젝트 생성 대화 상자에서 이름 필드에
myproject
와 같은 고유한 이름을 입력합니다. - 선택 사항: 표시 이름 및 프로젝트에 대한 설명 세부 정보를 추가합니다.
Create를 클릭합니다.
프로젝트의 대시보드가 표시됩니다.
-
프로젝트 생성 대화 상자에서 이름 필드에
- 선택 사항: 세부 정보 탭을 선택하여 프로젝트 세부 정보를 확인합니다.
- 선택 사항: 프로젝트에 대한 적절한 권한이 있는 경우 프로젝트 액세스 탭을 사용하여 admin을 제공하거나 취소하고 프로젝트에 대한 권한을 편집 및 볼 수 있습니다.
-
홈
개발자 화면을 사용하는 경우:
프로젝트 메뉴를 클릭하고 프로젝트 생성을 선택합니다.
그림 2.1. 프로젝트 생성
-
프로젝트 생성 대화 상자에서 이름 필드에
myproject
와 같은 고유한 이름을 입력합니다. - 선택 사항: 표시 이름 및 프로젝트에 대한 설명 세부 정보를 추가합니다.
- Create를 클릭합니다.
-
프로젝트 생성 대화 상자에서 이름 필드에
- 선택 사항: 왼쪽 탐색 패널을 사용하여 프로젝트 보기로 이동하여 프로젝트 대시보드를 확인합니다.
- 선택 사항: 프로젝트 대시보드에서 세부 정보 탭을 선택하여 프로젝트 세부 정보를 확인합니다.
- 선택 사항: 프로젝트에 대한 적절한 권한이 있는 경우 프로젝트 대시보드의 프로젝트 액세스 탭을 사용하여 프로젝트에 대한 관리자 또는 편집 및 보기 권한을 제공하거나 취소할 수 있습니다.
2.1.1.2. CLI를 사용하여 프로젝트 생성
클러스터 관리자가 허용한 경우 새 프로젝트를 생성할 수 있습니다.
openshift-
및 kube-
로 시작하는 프로젝트는 OpenShift Container Platform에서 중요한 것으로 간주합니다. 따라서 OpenShift Container Platform에서는 oc new-project
명령을 사용하여 openshift-
또는 kube-
로 시작하는 프로젝트를 생성할 수 없습니다. 클러스터 관리자는 oc adm new-project
명령을 사용하여 이러한 프로젝트를 생성할 수 있습니다.
기본 네임스페이스(default
, kube-system
, kube-public
, openshift-node
, openshift-infra
, openshift
) 중 하나에서 생성된 Pod에는 SCC를 할당할 수 없습니다. 이러한 네임스페이스는 Pod 또는 서비스를 실행하는 데 사용할 수 없습니다.
프로세스
다음을 실행합니다.
$ oc new-project <project_name> \ --description="<description>" --display-name="<display_name>"
예를 들면 다음과 같습니다.
$ oc new-project hello-openshift \ --description="This is an example project" \ --display-name="Hello OpenShift"
생성할 수 있는 프로젝트 수는 시스템 관리자가 제한할 수 있습니다. 제한에 도달한 후 새 프로젝트를 생성하려면 기존 프로젝트를 삭제해야 할 수 있습니다.
2.1.2. 프로젝트 보기
OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI(oc
)를 사용하여 클러스터의 프로젝트를 볼 수 있습니다.
2.1.2.1. 웹 콘솔을 사용하여 프로젝트 보기
OpenShift Container Platform 웹 콘솔을 사용하여 액세스할 수 있는 프로젝트를 볼 수 있습니다.
프로세스
관리자 화면을 사용하는 경우:
- 탐색 메뉴에서 홈 → 프로젝트로 이동합니다.
- 확인할 프로젝트를 선택합니다. 개요 탭에는 프로젝트에 대한 대시보드가 포함되어 있습니다.
- 프로젝트 세부 정보를 보려면 세부 정보 탭을 선택합니다.
- YAML 탭을 선택하여 프로젝트 리소스에 대한 YAML 구성을 보고 업데이트합니다.
- 워크로드 탭을 선택하여 프로젝트의 워크로드를 확인합니다.
- 프로젝트의 역할 바인딩을 보고 생성할 RoleBindings 탭을 선택합니다.
개발자 화면을 사용하는 경우:
- 탐색 메뉴에서 프로젝트 페이지로 이동합니다.
- 화면 상단에 있는 프로젝트 드롭다운 메뉴에서 모든 프로젝트를 선택하여 클러스터의 모든 프로젝트를 나열합니다.
- 확인할 프로젝트를 선택합니다. 개요 탭에는 프로젝트에 대한 대시보드가 포함되어 있습니다.
- 프로젝트 세부 정보를 보려면 세부 정보 탭을 선택합니다.
- 프로젝트에 대한 적절한 권한이 있는 경우 프로젝트 액세스 탭 보기를 선택하고 프로젝트에 대한 권한을 업데이트합니다.
2.1.2.2. CLI를 사용하여 프로젝트 보기
프로젝트를 볼 때는 권한 부여 정책에 따라 볼 수 있는 액세스 권한이 있는 프로젝트만 볼 수 있습니다.
프로세스
프로젝트 목록을 보려면 다음을 실행합니다.
$ oc get projects
CLI 작업을 위해 현재 프로젝트에서 다른 프로젝트로 변경할 수 있습니다. 그러면 지정된 프로젝트가 프로젝트 범위의 콘텐츠를 조작하는 모든 후속 작업에서 사용됩니다.
$ oc project <project_name>
2.1.3. 개발자 화면을 사용하여 프로젝트에 액세스 권한 제공
개발자 화면의 프로젝트 보기를 사용하여 프로젝트에 대한 액세스 권한을 부여하거나 취소할 수 있습니다.
사전 요구 사항
- 프로젝트를 생성했습니다.
프로세스
프로젝트에 사용자를 추가하고 관리자, 편집 또는 보기 액세스 권한을 제공하려면 다음을 수행합니다.
- 개발자 화면에서 프로젝트 페이지로 이동합니다.
- 프로젝트 메뉴에서 프로젝트를 선택합니다.
- 프로젝트 액세스 탭을 선택합니다.
액세스 권한을 클릭하여 기본 권한에 새 권한 행을 추가합니다.
그림 2.2. 프로젝트 권한
- 사용자 이름을 입력하고 역할 선택 드롭다운 목록을 클릭하고 적절한 역할을 선택합니다.
- 저장을 클릭하여 새 권한을 추가합니다.
또는 다음을 수행할 수도 있습니다.
- 역할 선택 드롭다운 목록을 사용하여 기존 사용자의 액세스 권한을 수정합니다.
- 액세스 제거 아이콘을 사용하여 프로젝트에 대한 기존 사용자의 액세스 권한을 완전히 제거합니다.
고급 역할 기반 액세스 제어는 관리자 화면의 역할 및 역할 바인딩 보기에서 관리됩니다.
2.1.4. 웹 콘솔을 사용하여 사용 가능한 클러스터 역할 사용자 정의
웹 콘솔의 개발자 화면에서 프로젝트
클러스터 관리자는 클러스터 전체에서 모든 프로젝트에 대한 프로젝트 액세스 페이지에서 사용할 수 있는 클러스터 역할을 정의할 수 있습니다. Console
구성 리소스에서 spec.customization.projectAccess.availableClusterRoles
오브젝트를 사용자 정의하여 사용 가능한 역할을 지정할 수 있습니다.
사전 요구 사항
-
cluster-admin
역할의 사용자로 클러스터에 액세스할 수 있어야 합니다.
프로세스
-
관리자 관점에서 관리
클러스터 설정으로 이동합니다. - 구성 탭을 클릭합니다.
-
구성 리소스 목록에서 Console
operator.openshift.io
를 선택합니다. - YAML 탭으로 이동하여 YAML 코드를 보고 편집합니다.
spec
아래의 YAML 코드에서 프로젝트 액세스에 대해 사용 가능한 클러스터 역할 목록을 사용자 지정합니다. 다음 예제에서는 기본admin
,edit
및view
역할을 지정합니다.apiVersion: operator.openshift.io/v1 kind: Console metadata: name: cluster # ... spec: customization: projectAccess: availableClusterRoles: - admin - edit - view
-
저장을 클릭하여
콘솔
구성 리소스에 대한 변경 사항을 저장합니다.
검증
- 개발자 화면에서 프로젝트 페이지로 이동합니다.
- 프로젝트 메뉴에서 프로젝트를 선택합니다.
- 프로젝트 액세스 탭을 선택합니다.
-
Role (역할) 열에서 메뉴를 클릭하고 사용 가능한 역할이
Console
리소스 구성에 적용한 구성과 일치하는지 확인합니다.
2.1.5. 프로젝트에 추가
개발자 화면의 +추가 페이지를 사용하여 프로젝트에 항목을 추가할 수 있습니다.
사전 요구 사항
- 프로젝트를 생성했습니다.
프로세스
- 개발자 화면에서 +추가 페이지로 이동합니다.
- 프로젝트 메뉴에서 프로젝트를 선택합니다.
- +추가 페이지에서 항목을 클릭한 다음 워크플로우를 따릅니다.
추가* 페이지의 검색 기능을 사용하여 프로젝트에 추가할 추가 항목을 찾을 수도 있습니다. 페이지 상단에 있는 추가 에서 * 를 클릭하고 검색 필드에 구성 요소의 이름을 입력합니다.
2.1.6. 프로젝트 상태 확인
OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI(oc
)를 사용하여 프로젝트의 상태를 볼 수 있습니다.
2.1.6.1. 웹 콘솔을 사용하여 프로젝트 상태 확인
웹 콘솔을 사용하여 프로젝트의 상태를 검토할 수 있습니다.
사전 요구 사항
- 프로젝트를 생성했습니다.
프로세스
관리자 화면을 사용하는 경우:
-
홈
프로젝트로 이동합니다. - 목록에서 프로젝트를 선택합니다.
- 개요 페이지에서 프로젝트 상태를 검토합니다.
-
홈
개발자 화면을 사용하는 경우:
- 프로젝트 페이지로 이동합니다.
- 프로젝트 메뉴에서 프로젝트를 선택합니다.
- 개요 페이지에서 프로젝트 상태를 검토합니다.
2.1.6.2. CLI를 사용하여 프로젝트 상태 확인
OpenShift CLI(oc
)를 사용하여 프로젝트의 상태를 검토할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. - 프로젝트를 생성했습니다.
프로세스
프로젝트로 전환합니다.
$ oc project <project_name> 1
- 1
- &
lt;project_name
>을 프로젝트 이름으로 바꿉니다.
프로젝트의 상위 수준 개요를 가져옵니다.
$ oc status
2.1.7. 프로젝트 삭제
OpenShift Container Platform 웹 콘솔 또는 OpenShift CLI(oc
)를 사용하여 프로젝트를 삭제할 수 있습니다.
프로젝트를 삭제하면 서버에서 프로젝트 상태를 활성에서 종료로 업데이트합니다. 그런 다음 서버는 프로젝트를 완전히 제거하기 전에 상태가 종료인 프로젝트의 모든 콘텐츠를 지웁니다. 프로젝트 상태가 종료인 동안에는 프로젝트에 새 콘텐츠를 추가할 수 없습니다. CLI 또는 웹 콘솔에서 프로젝트를 삭제할 수 있습니다.
2.1.7.1. 웹 콘솔을 사용하여 프로젝트 삭제
웹 콘솔을 사용하여 프로젝트를 삭제할 수 있습니다.
사전 요구 사항
- 프로젝트를 생성했습니다.
- 프로젝트를 삭제하는 데 필요한 권한이 있습니다.
프로세스
관리자 화면을 사용하는 경우:
-
홈
프로젝트로 이동합니다. - 목록에서 프로젝트를 선택합니다.
프로젝트의 작업 드롭다운 메뉴를 클릭하고 프로젝트 삭제 를 선택합니다.
참고프로젝트를 삭제하는 데 필요한 권한이 없는 경우 프로젝트 삭제 옵션을 사용할 수 없습니다.
- Delete Project? 창에서 프로젝트 이름을 입력하여 삭제를 확인합니다.
- 삭제를 클릭합니다.
-
홈
개발자 화면을 사용하는 경우:
- 프로젝트 페이지로 이동합니다.
- 프로젝트 메뉴에서 삭제할 프로젝트를 선택합니다.
프로젝트의 작업 드롭다운 메뉴를 클릭하고 프로젝트 삭제 를 선택합니다.
참고프로젝트를 삭제하는 데 필요한 권한이 없는 경우 프로젝트 삭제 옵션을 사용할 수 없습니다.
- Delete Project? 창에서 프로젝트 이름을 입력하여 삭제를 확인합니다.
- 삭제를 클릭합니다.
2.1.7.2. CLI를 사용하여 프로젝트 삭제
OpenShift CLI(oc
)를 사용하여 프로젝트를 삭제할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. - 프로젝트를 생성했습니다.
- 프로젝트를 삭제하는 데 필요한 권한이 있습니다.
프로세스
프로젝트를 삭제합니다.
$ oc delete project <project_name> 1
- 1
- &
lt;project_name
>을 삭제하려는 프로젝트의 이름으로 바꿉니다.