[참고] Openshift 의 oc new-project 와 oc create ns 의 차이점
Openshift 에서는 프로젝트를 만들기 위한 명령어 oc new-project 와 oc create ns (namespace) 를 제공하고 있으며 이 두 명령어는 기본적으로 동일한 결과를 가져옵니다.
모두 새로운 프로젝트 (Project) / 네임스페이스 (Namespace) 를 생성하는 명령어로 사용법도 거의 동일합니다.
다만 "oc new-project" 명령어는 프로젝트 (Project) 를 생성할 때 기본적으로 몇 가지 설정 값을 지정해 줍니다.
예를 들어, "oc new-project" 명령어는 프로젝트 (Project) 에 대한 일부 RBAC (Role-Based Access Control) 권한을 생성하고, 프로젝트 (Project) 를 위한 라벨 (label) 을 자동으로 추가합니다.
반면에 "oc create ns" 명령어는 단순히 네임스페이스 (Namespace) 를 생성하는 명령어로, 추가적인 설정이나 라벨 (label) 을 지정하지 않습니다.
따라서 두 명령어를 사용하는 것은 개인적인 선호나 상황에 따라 다를 수 있지만, 일반적으로는 두 명령어 모두 같은 결과를 가져오며, 기능적인 차이는 크지 않습니다.
[명령어로 확인하기]
1) 생성
# oc new-project cdh1
Now using project "cdh1" on server "https://api.az1.sysdocu.kr:6443".
You can add applications to this project with the 'new-app' command. For example, try:
oc new-app rails-postgresql-example
to build a new example application in Ruby. Or use kubectl to deploy a simple Kubernetes application:
kubectl create deployment hello-node --image=k8s.gcr.io/e2e-test-images/agnhost:2.33 -- /agnhost serve-hostname
# oc create ns cdh2
namespace/cdh2 created
2) RoleBinding 확인
파란색 부분에서 차이가 보입니다.
# oc get rolebinding -n cdh1
NAME ROLE AGE
admin ClusterRole/admin 5m52s
system:deployers ClusterRole/system:deployer 5m51s
system:image-builders ClusterRole/system:image-builder 5m51s
system:image-pullers ClusterRole/system:image-puller 5m51s
# oc get rolebinding -n cdh2
NAME ROLE AGE
system:deployers ClusterRole/system:deployer 5m45s
system:image-builders ClusterRole/system:image-builder 5m45s
system:image-pullers ClusterRole/system:image-puller 5m45s
3) Project 속성 확인
파란색 부분에서 차이가 보입니다.
# oc describe ns cdh1
Name: cdh1
Labels: kubernetes.io/metadata.name=cdh1
pod-security.kubernetes.io/audit=restricted
pod-security.kubernetes.io/audit-version=v1.24
pod-security.kubernetes.io/warn=restricted
pod-security.kubernetes.io/warn-version=v1.24
Annotations: openshift.io/description:
openshift.io/display-name:
openshift.io/requester: system:admin
openshift.io/sa.scc.mcs: s0:c27,c9
openshift.io/sa.scc.supplemental-groups: 1000720000/10000
openshift.io/sa.scc.uid-range: 1000720000/10000
Status: Active
No resource quota.
No LimitRange resource.
# oc describe ns cdh2
Name: cdh2
Labels: kubernetes.io/metadata.name=cdh2
pod-security.kubernetes.io/audit=restricted
pod-security.kubernetes.io/audit-version=v1.24
pod-security.kubernetes.io/warn=restricted
pod-security.kubernetes.io/warn-version=v1.24
Annotations: openshift.io/sa.scc.mcs: s0:c27,c14
openshift.io/sa.scc.supplemental-groups: 1000730000/10000
openshift.io/sa.scc.uid-range: 1000730000/10000
Status: Active
No resource quota.
No LimitRange resource.
'리눅스 > OpenShift' 카테고리의 다른 글
[Openshift] Pod (Container) 에 도메인 및 SSL 인증서 추가하기 (0) | 2023.05.10 |
---|---|
[참고] Openshift 의 Service 와 Route 차이점 / Ingress 와 Route 차이점 (0) | 2023.05.10 |
[Openshift] 미터링 도구 Prometheus + AlertManager 알람 (webhook + telegram) (0) | 2023.04.24 |
Openshift 4.12.0 MetalLB 로드발란서 설치 및 서비스 IP 대역 할당하기 (0) | 2023.04.06 |
Openshift yaml 파일로 Pod 생성시 보안 (권한) 에러 메세지 (0) | 2023.04.04 |