4.5. 첫 번째 이미지 배포
OpenShift Container Platform에서 애플리케이션을 배포하는 가장 간단한 방법은 기존 컨테이너 이미지를 실행하는 것입니다. 다음 절차에서는 national-parks-app
이라는 애플리케이션의 프런트 엔드 구성 요소를 배포합니다. 웹 애플리케이션에 대화식 맵이 표시됩니다. 이 지도는 전 세계 주요 국립공원의 위치를 표시합니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 액세스 권한이 있어야 합니다.
-
OpenShift CLI(
oc
)를 설치합니다.
프로세스
애플리케이션을 배포하려면 다음 명령을 입력합니다.
oc new-app quay.io/openshiftroadshow/parksmap:latest --name=parksmap -l 'app=national-parks-app,component=parksmap,role=frontend,app.kubernetes.io/part-of=national-parks-app'
$ oc new-app quay.io/openshiftroadshow/parksmap:latest --name=parksmap -l 'app=national-parks-app,component=parksmap,role=frontend,app.kubernetes.io/part-of=national-parks-app'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.1. 경로 생성 링크 복사링크가 클립보드에 복사되었습니다!
외부 클라이언트는 라우팅 계층과 경로인 데이터 오브젝트를 통해 OpenShift Container Platform에서 실행되는 애플리케이션에 액세스할 수 있습니다. 기본 OpenShift Container Platform 라우터(HAProxy)는 들어오는 요청의 HTTP 헤더를 사용하여 연결을 프록시할 위치를 결정합니다.
선택적으로 경로에 대해 TLS와 같은 보안을 정의할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 액세스 권한이 있어야 합니다.
-
OpenShift CLI(
oc
)가 설치되어 있어야 합니다. - 배포된 이미지가 있습니다.
-
cluster-admin
또는project-admin
권한이 있어야 합니다.
프로세스
생성된 애플리케이션 서비스를 검색하려면 다음 명령을 입력합니다.
oc get service
$ oc get service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE parksmap ClusterIP <your-cluster-IP> <123.456.789> 8080/TCP 8m29s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE parksmap ClusterIP <your-cluster-IP> <123.456.789> 8080/TCP 8m29s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 경로를 생성하려면 다음 명령을 입력합니다.
oc create route edge parksmap --service=parksmap
$ oc create route edge parksmap --service=parksmap
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
route.route.openshift.io/parksmap created
route.route.openshift.io/parksmap created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 생성된 애플리케이션 경로를 검색하려면 다음 명령을 입력합니다.
oc get route
$ oc get route
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD parksmap parksmap-user-getting-started.apps.cluster.example.com parksmap 8080-tcp edge None
NAME HOST/PORT PATH SERVICES PORT TERMINATION WILDCARD parksmap parksmap-user-getting-started.apps.cluster.example.com parksmap 8080-tcp edge None
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.2. Pod 검사 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform은 하나의 호스트에 함께 배포되는 하나 이상의 컨테이너인 pod의 Kubernetes 개념과 정의, 배포 및 관리할 수 있는 최소 컴퓨팅 단위를 활용합니다. Pod는 컨테이너에 대한 머신 인스턴스, 물리 또는 가상과 대략적으로 동일합니다.
클러스터의 Pod를 보고 해당 Pod 및 클러스터의 상태를 전체적으로 확인할 수 있습니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 액세스 권한이 있어야 합니다.
-
OpenShift CLI(
oc
)가 설치되어 있어야 합니다. - 배포된 이미지가 있습니다.
프로세스
노드 이름이 있는 모든 Pod를 나열하려면 다음 명령을 입력합니다.
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE parksmap-5f9579955-6sng8 1/1 Running 0 77s
NAME READY STATUS RESTARTS AGE parksmap-5f9579955-6sng8 1/1 Running 0 77s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 모든 Pod 세부 정보를 나열하려면 다음 명령을 입력합니다.
oc describe pods
$ oc describe pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.3. 애플리케이션 스케일링 링크 복사링크가 클립보드에 복사되었습니다!
Kubernetes에서 Deployment
오브젝트는 애플리케이션이 배포하는 방법을 정의합니다. 대부분의 경우 사용자는 Pod
,Service
,ReplicaSets
및 Deployment
리소스를 함께 사용합니다. 대부분의 경우 OpenShift Container Platform이 리소스를 생성합니다.
national-parks-app
이미지를 배포하면 배포 리소스가 생성됩니다. 예에서는 하나의 Pod
만 배포됩니다.
다음 절차에서는 두 개의 인스턴스를 사용하도록 national-parks-image
크기를 조정합니다.
사전 요구 사항
- OpenShift Container Platform 클러스터에 대한 액세스 권한이 있어야 합니다.
-
OpenShift CLI(
oc
)가 설치되어 있어야 합니다. - 배포된 이미지가 있습니다.
프로세스
애플리케이션을 하나의 Pod 인스턴스에서 두 개의 Pod 인스턴스로 확장하려면 다음 명령을 입력합니다.
oc scale --current-replicas=1 --replicas=2 deployment/parksmap
$ oc scale --current-replicas=1 --replicas=2 deployment/parksmap
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
deployment.apps/parksmap scaled
deployment.apps/parksmap scaled
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
검증
애플리케이션이 올바르게 확장되도록 하려면 다음 명령을 입력합니다.
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE parksmap-5f9579955-6sng8 1/1 Running 0 7m39s parksmap-5f9579955-8tgft 1/1 Running 0 24s
NAME READY STATUS RESTARTS AGE parksmap-5f9579955-6sng8 1/1 Running 0 7m39s parksmap-5f9579955-8tgft 1/1 Running 0 24s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 애플리케이션을 하나의 Pod 인스턴스로 다시 축소하려면 다음 명령을 입력합니다.
oc scale --current-replicas=2 --replicas=1 deployment/parksmap
$ oc scale --current-replicas=2 --replicas=1 deployment/parksmap
Copy to Clipboard Copied! Toggle word wrap Toggle overflow