2.4. 다음 단계

2.4.1. 개발자의 경우

OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 개발하고 배포합니다. OpenShift Container Platform은 컨테이너화된 애플리케이션을 개발하고 배포하기 위한 플랫폼입니다. OpenShift Container Platform 설명서는 다음을 지원합니다.

OpenShift Container Platform 웹 콘솔 개발자 화면을 사용하여 애플리케이션을 생성하고 배포합니다.

토폴로지 보기를 사용하여 애플리케이션을 확인하고 상태 모니터링, 연결 및 그룹 구성 요소를 모니터링하고 코드 베이스를 수정합니다.

  • 개발자 CLI 툴(odo) 사용: odo CLI 툴을 사용하면 개발자가 단일 또는 다중 구성 요소 애플리케이션을 생성하고 배포, 빌드 및 서비스 경로 구성을 자동화할 수 있습니다. 복잡한 Kubernetes 및 OpenShift Container Platform 개념을 추상화하여 애플리케이션 개발에 집중할 수 있습니다.
  • CI/CD Pipelines 생성: Pipeline은 서버리스, 클라우드 네이티브, 연속 통합 및 격리된 컨테이너에서 실행되는 연속 배포 시스템입니다. 표준 Tekton 사용자 지정 리소스를 사용하여 배포를 자동화하고 마이크로서비스 기반 아키텍처에서 작업하는 분산된 팀을 위해 설계되었습니다.
  • Helm 차트 배포:Helm 3 은 개발자가 Kubernetes에서 애플리케이션 패키지를 정의, 설치 및 업데이트할 수 있도록 하는 패키지 관리자입니다. Helm 차트는 Helm CLI를 사용하여 배포할 수 있는 애플리케이션을 설명하는 패키징 형식입니다.
  • 이미지 빌드 이해: 다양한 종류의 소스 자료(Git 리포지토리, 로컬 바이너리 입력 및 외부 아티팩트)를 포함할 수 있는 다양한 빌드 전략(Docker, S2I, 사용자 정의 및 파이프라인)에서 선택합니다. 그런 다음 기본 빌드에서 고급 빌드로 빌드 유형 예제를 따릅니다.
  • 컨테이너 이미지 생성: 컨테이너 이미지는 OpenShift Container Platform (및 Kubernetes) 애플리케이션에서 가장 기본적인 빌딩 블록입니다. 이미지 스트림을 정의하면 개발을 계속할 때 이미지의 여러 버전을 한 곳에 수집할 수 있습니다. S2I 컨테이너를 사용하면 Ruby, Node.js 또는 Python과 같은 특정 유형의 코드를 실행하도록 설정된 기본 컨테이너에 소스 코드를 삽입할 수 있습니다.
  • 배포 생성: DeploymentDeploymentConfig 오브젝트를 사용하여 애플리케이션에 대한 세분화된 관리를 실행합니다. 워크로드 페이지 또는 OpenShift CLI(oc)를 사용하여 배포를 관리합니다. 롤링, 재현 및 사용자 정의 배포 전략에 대해 알아봅니다.
  • 템플릿 생성: 기존 템플릿을 사용하거나 애플리케이션을 빌드하거나 배포하는 방법을 설명하는 고유한 템플릿을 만듭니다. 템플릿은 이미지를 설명, 매개변수, 복제본, 노출된 포트 및 애플리케이션 실행 또는 구축 방법을 정의하는 기타 콘텐츠와 결합할 수 있습니다.
  • Operator 이해: Operator는 OpenShift Container Platform 4.12용 클러스터 기반 애플리케이션을 생성하는 데 권장되는 방법입니다. Operator 프레임워크 및 설치된 Operator를 사용하여 프로젝트에 애플리케이션을 배포하는 방법을 알아봅니다.
  • Operators 개발: Operator는 OpenShift Container Platform 4.12용 클러스터 기반 애플리케이션을 생성하는 데 권장되는 방법입니다. Operator를 빌드, 테스트 및 배포하기 위한 워크플로를 알아봅니다. 그런 다음 Ansible 또는 Helm 을 기반으로 자체 Operator를 생성하거나 Operator SDK를 사용하여 기본 제공 Prometheus 모니터링을 구성합니다.
  • REST API 참조: OpenShift Container Platform 애플리케이션 프로그래밍 인터페이스 끝점에 대해 알아봅니다.

2.4.2. 관리자의 경우

  • OpenShift Container Platform 관리 이해: OpenShift Container Platform 4.12 컨트롤 플레인의 구성 요소에 대해 알아봅니다. Machine APIOperator를 통해 OpenShift Container Platform 컨트롤 플레인 및 작업자 노드를 관리하고 업데이트하는 방법을 확인하십시오.
  • 사용자 및 그룹 관리: 클러스터를 사용하거나 수정할 수 있는 다양한 수준의 권한으로 사용자 및 그룹을 추가합니다.
  • 인증 관리: OpenShift Container Platform에서 사용자, 그룹 및 API 인증이 작동하는 방식을 알아봅니다. OpenShift Container Platform은 여러 ID 공급자를 지원합니다.
  • 네트워킹 관리: OpenShift Container Platform의 클러스터 네트워크는 CNO( Cluster Network Operator )에서 관리합니다. CNO는 kube-proxy 에서 iptables 규칙을 사용하여 해당 노드에서 실행되는 노드와 Pod 간 트래픽을 전달합니다. Multus 컨테이너 네트워크 인터페이스는 여러 네트워크 인터페이스를 pod에 연결하는 기능을 추가합니다. 네트워크 정책 기능을 사용하여 Pod를 격리하거나 선택한 트래픽을 허용할 수 있습니다.
  • 스토리지 관리: OpenShift Container Platform을 사용하면 클러스터 관리자가 영구 스토리지를 구성할 수 있습니다.
  • Operator 관리: Red Hat, ISV 및 커뮤니티 Operator 목록을 클러스터 관리자가 검토하고 클러스터에 설치할 수 있습니다. 클러스터를 설치한 후 클러스터에서 Operator를 실행, 업그레이드, 백업 또는 관리할 수 있습니다.
  • CRD(사용자 정의 리소스 정의)를 사용하여 클러스터를 수정: Operator와 함께 구현된 클러스터 기능은 CRD를 사용하여 수정할 수 있습니다. CRD를 생성하고 CRD에서 리소스를 관리하는 방법을 알아봅니다.
  • 리소스 할당량 설정: CPU, 메모리 및 기타 시스템 리소스에서 선택하여 할당량을 설정합니다.
  • 리소스 정리 및 회수: 불필요한 Operator, 그룹, 배포, 빌드, 이미지, 레지스트리, cron 작업을 정리하여 공간을 회수합니다.
  • 클러스터확장조정 : 클러스터 제한을 설정하고, 노드를 튜닝하고, 클러스터 모니터링을 확장하고, 사용자 환경에 대한 네트워킹, 스토리지 및 경로를 최적화합니다.
  • OpenShift Update Service 이해: 연결이 끊긴 환경에서 OpenShift Container Platform 업데이트를 권장하기 위해 로컬 OpenShift 업데이트 서비스를 설치 및 관리하는 방법에 대해 설명합니다.
  • 클러스터 모니터링: 모니터링 스택을 구성하는 방법을 배웁니다. 모니터링을 구성한 후 웹 콘솔을 사용하여 모니터링 대시보드에 액세스합니다. 인프라 메트릭 외에도 자체 서비스에 대한 메트릭을 스크랩 및 볼 수 있습니다.
  • 원격 상태 모니터링: OpenShift Container Platform은 클러스터에 대한 익명화된 집계 정보를 수집합니다. Telemetry 및 Insights Operator를 사용하여 이 데이터는 Red Hat에서 수신하며 OpenShift Container Platform을 개선하는 데 사용됩니다. 원격 상태 모니터링에서 수집한 데이터를 볼 수 있습니다.