1장. 아키텍처 개요
OpenShift Container Platform은 클라우드 기반 Kubernetes 컨테이너 플랫폼입니다. OpenShift Container Platform의 기초는 Kubernetes를 기반으로 하므로 동일한 기술을 공유합니다. OpenShift Container Platform 및 Kubernetes에 대한 자세한 내용은 제품 아키텍처 를 참조하십시오.
1.1. OpenShift Container Platform 아키텍처의 일반 용어집
이 용어집은 아키텍처 콘텐츠에 사용되는 일반적인 용어를 정의합니다.
- 액세스 정책
- 클러스터 내의 사용자, 애플리케이션 및 엔터티가 서로 상호 작용하는 방식을 지정하는 일련의 역할입니다. 액세스 정책은 클러스터 보안을 강화합니다.
- 승인 플러그인
- 승인 플러그인은 보안 정책, 리소스 제한 또는 구성 요구 사항을 적용합니다.
- 인증
- OpenShift Container Platform 클러스터에 대한 액세스를 제어하기 위해 클러스터 관리자는 승인된 사용자만 클러스터에 액세스할 수 있도록 사용자 인증을 구성할 수 있습니다. OpenShift Container Platform 클러스터와 상호 작용하려면 OpenShift Container Platform API로 인증해야 합니다. OpenShift Container Platform API에 대한 요청에 OAuth 액세스 토큰 또는 X.509 클라이언트 인증서를 제공하여 인증할 수 있습니다.
- 부트스트랩
- 최소한의 Kubernetes를 실행하고 OpenShift Container Platform 컨트롤 플레인을 배포하는 임시 시스템입니다.
- CSR(인증서 서명 요청)
- 리소스는 표시된 서명자가 인증서에 서명하도록 요청합니다. 이 요청은 승인되거나 거부될 수 있습니다.
- Cluster Version Operator (CVO)
- OpenShift Container Platform Update Service를 사용하여 현재 구성 요소 버전 및 그래프의 정보를 기반으로 유효한 업데이트 및 업데이트 경로를 확인하는 Operator입니다.
- 컴퓨팅 노드
- 클러스터 사용자에 대한 워크로드를 실행하는 노드입니다. 컴퓨팅 노드는 작업자 노드라고도 합니다.
- 구성 드리프트
- 노드의 구성이 머신 구성에서 지정하는 것과 일치하지 않는 경우입니다.
- 컨테이너
- 소프트웨어와 모든 종속 항목으로 구성된 경량 및 실행 가능한 이미지입니다. 컨테이너는 운영 체제를 가상화하므로 데이터 센터, 퍼블릭 또는 프라이빗 클라우드, 로컬 호스트와 같은 컨테이너를 어디에서나 실행할 수 있습니다.
- 컨테이너 오케스트레이션 엔진
- 컨테이너의 배포, 관리, 확장 및 네트워킹을 자동화하는 소프트웨어입니다.
- 컨테이너 워크로드
- 컨테이너에 패키지 및 배포되는 애플리케이션입니다.
- 컨트롤그룹(cgroups)
- 프로세스의 소비를 관리하고 제한하기 위해 프로세스의 파티션 세트를 그룹으로 분할합니다.
- 컨트롤 플레인
- 컨테이너의 라이프사이클을 정의, 배포, 관리하기 위해 API 및 인터페이스를 노출하는 컨테이너 오케스트레이션 계층입니다. 컨트롤 플레인은 컨트롤 플레인 시스템이라고도 합니다.
- CRI-O
- 운영 체제와 통합되는 Kubernetes 네이티브 컨테이너 런타임 구현으로 효율적인 Kubernetes 환경을 제공합니다.
- 배포
- 애플리케이션의 라이프사이클을 유지 관리하는 Kubernetes 리소스 오브젝트입니다.
- Dockerfile
- 터미널에서 이미지를 어셈블하기 위해 수행할 사용자 명령이 포함된 텍스트 파일입니다.
- 호스트 컨트롤 플레인
데이터 플레인 및 작업자의 OpenShift Container Platform 클러스터에서 컨트롤 플레인을 호스팅할 수 있는 OpenShift Container Platform 기능입니다. 이 모델은 다음 작업을 수행합니다.
- 컨트롤 플레인에 필요한 인프라 비용을 최적화합니다.
- 클러스터 생성 시간을 개선합니다.
- Kubernetes 기본 상위 수준 프리미티브를 사용하여 컨트롤 플레인 호스팅을 활성화합니다. 예를 들어 배포 및 상태 저장 세트가 있습니다.
- 컨트롤 플레인과 워크로드 간 강력한 네트워크 분할을 허용합니다.
- 하이브리드 클라우드 배포
- 베어 메탈, 가상, 프라이빗 및 퍼블릭 클라우드 환경 전체에 일관된 플랫폼을 제공하는 배포. 이를 통해 속도, 민첩성 및 이식성을 제공합니다.
- Ignition
- 초기 구성 중에 RHCOS가 디스크를 조작하는 데 사용하는 유틸리티입니다. 디스크 파티셔닝, 파티션 포맷, 파일 작성 및 사용자 구성을 포함한 일반적인 디스크 작업을 완료합니다.
- 설치 프로그램에서 제공하는 인프라
- 설치 프로그램은 클러스터가 실행되는 인프라를 배포하고 구성합니다.
- kubelet
- Pod에서 컨테이너가 실행 중인지 확인하기 위해 클러스터의 각 노드에서 실행되는 기본 노드 에이전트입니다.
- Kubernetes 매니페스트
- JSON 또는 YAML 형식의 Kubernetes API 오브젝트의 사양입니다. 구성 파일에는 배포, 구성 맵, 시크릿, 데몬 세트가 포함될 수 있습니다.
- MCD(Machine Config Daemon)
- 노드에서 구성 드리프트가 있는지 정기적으로 확인하는 데몬입니다.
- Machine Config Operator (MCO)
- 클러스터 머신에 새 구성을 적용하는 Operator입니다.
- 머신 구성 풀(MCP)
- 컨트롤 플레인 구성 요소 또는 사용자 워크로드와 같은 머신 그룹은 처리하는 리소스를 기반으로 합니다.
- 메타데이터
- 클러스터 배포 아티팩트에 대한 추가 정보입니다.
- 마이크로 서비스
- 소프트웨어 작성을 위한 접근 방식. 애플리케이션은 마이크로 서비스를 사용하여 서로 독립적으로 가장 작은 구성 요소로 분리할 수 있습니다.
- 미러 레지스트리
- OpenShift Container Platform 이미지의 미러가 있는 레지스트리입니다.
- 모놀리식 애플리케이션
- 자체 포함, 빌드 및 패키지된 애플리케이션입니다.
- 네임스페이스
- 네임스페이스는 모든 프로세스에 표시되는 특정 시스템 리소스를 격리합니다. 네임스페이스 내에서 해당 네임스페이스의 멤버인 프로세스만 해당 리소스를 볼 수 있습니다.
- 네트워킹
- OpenShift Container Platform 클러스터의 네트워크 정보입니다.
- 노드
- OpenShift Container Platform 클러스터의 작업자 시스템입니다. 노드는 VM(가상 머신) 또는 물리적 머신입니다.
- OpenShift CLI(
oc
) - 터미널에서 OpenShift Container Platform 명령을 실행하는 명령줄 도구입니다.
- OpenShift Dedicated
- AWS(Amazon Web Services) 및 GCP(Google Cloud Platform)에서 관리형 RHEL OpenShift Container Platform을 제공합니다. OpenShift Dedicated는 애플리케이션 빌드 및 확장에 중점을 둡니다.
- OSUS(OpenShift Update Service)
- 인터넷에 액세스할 수 있는 클러스터의 경우 RHEL(Red Hat Enterprise Linux)은 공용 API 뒤에 있는 호스팅 서비스로 OpenShift 업데이트 서비스를 사용하여 무선 업데이트를 제공합니다.
- OpenShift 이미지 레지스트리
- 이미지를 관리하기 위해 OpenShift Container Platform에서 제공하는 레지스트리입니다.
- Operator
- OpenShift Container Platform 클러스터에서 Kubernetes 애플리케이션을 패키징, 배포 및 관리하는 기본 방법입니다. Operator는 사람의 운영 지식을 패키지하고 고객과 공유하는 소프트웨어로 인코딩합니다.
- OperatorHub
- 설치할 다양한 OpenShift Container Platform Operator가 포함된 플랫폼입니다.
- OLM(Operator Lifecycle Manager)
- OLM은 Kubernetes 네이티브 애플리케이션의 라이프사이클을 설치, 업데이트 및 관리할 수 있도록 지원합니다. OLM은 효과적이고 자동화되고 확장 가능한 방식으로 Operator를 관리하도록 설계된 오픈 소스 툴킷입니다.
- ostree
- 전체 파일 시스템 트리 트리의 원자 업그레이드를 수행하는 Linux 기반 운영 체제의 업그레이드 시스템입니다. ostree는 주소 지정 가능 오브젝트 저장소를 사용하여 파일 시스템 트리에 대한 의미 있는 변경을 추적하고 기존 패키지 관리 시스템을 보완하도록 설계되었습니다.
- OTA(Over-the-Air) 업데이트
- OSUS(OpenShift Container Platform Update Service)는 RHCOS(Red Hat Enterprise Linux CoreOS)를 포함하여 OpenShift Container Platform에 대한 무선 업데이트를 제공합니다.
- Pod
- OpenShift Container Platform 클러스터에서 실행되는 볼륨 및 IP 주소와 같은 공유 리소스가 있는 하나 이상의 컨테이너입니다. Pod는 정의, 배포 및 관리되는 최소 컴퓨팅 단위입니다.
- 프라이빗 레지스트리
- OpenShift Container Platform은 컨테이너 이미지 레지스트리 API를 구현하는 모든 서버를 이미지의 소스로 사용하여 개발자가 개인 컨테이너 이미지를 푸시하고 가져올 수 있습니다.
- 퍼블릭 레지스트리
- OpenShift Container Platform은 컨테이너 이미지 레지스트리 API를 구현하는 모든 서버를 이미지의 소스로 사용하여 개발자가 공용 컨테이너 이미지를 푸시하고 가져올 수 있습니다.
- RHEL OpenShift Container Platform Cluster Manager
- OpenShift Container Platform 클러스터를 설치, 수정, 운영 및 업그레이드할 수 있는 관리형 서비스입니다.
- RHEL Quay 컨테이너 레지스트리
- 대부분의 컨테이너 이미지 및 Operator를 OpenShift Container Platform 클러스터에 제공하는 Quay.io 컨테이너 레지스트리입니다.
- 복제 컨트롤러
- 한 번에 실행하는 데 필요한 Pod 복제본 수를 나타내는 자산입니다.
- RBAC(역할 기반 액세스 제어)
- 클러스터 사용자와 워크로드가 역할을 실행하는 데 필요한 리소스에만 액세스할 수 있도록 하는 주요 보안 제어입니다.
- 라우트
- 경로는 OpenShift Container Platform 인스턴스 외부의 사용자 및 애플리케이션에서 Pod에 대한 네트워크 액세스를 허용하는 서비스를 노출합니다.
- 스케일링
- 리소스 용량이 증가하거나 감소합니다.
- 서비스
- 서비스는 Pod 집합에서 실행 중인 애플리케이션을 노출합니다.
- S2I(Source-to-Image) 이미지
- 애플리케이션을 배포하기 위해 OpenShift Container Platform의 애플리케이션 소스 코드의 프로그래밍 언어를 기반으로 생성된 이미지입니다.
- 스토리지
- OpenShift Container Platform은 온프레미스 및 클라우드 공급자를 위해 다양한 유형의 스토리지를 지원합니다. OpenShift Container Platform 클러스터에서 영구 및 비영구 데이터에 대한 컨테이너 스토리지를 관리할 수 있습니다.
- telemetry
- OpenShift Container Platform의 크기, 상태 및 상태와 같은 정보를 수집하는 구성 요소입니다.
- 템플릿
- 템플릿은 오브젝트 세트를 설명합니다. 이러한 오브젝트를 매개변수화하고 처리하여 OpenShift Container Platform에서 생성할 오브젝트 목록을 만들 수 있습니다.
- 사용자 프로비저닝 인프라
- 사용자가 제공하는 인프라에 OpenShift Container Platform을 설치할 수 있습니다. 설치 프로그램을 사용하여 클러스터 인프라를 프로비저닝하고 클러스터 인프라를 생성한 다음 제공한 인프라에 클러스터를 배포하는 데 필요한 자산을 생성할 수 있습니다.
- 웹 콘솔
- OpenShift Container Platform을 관리할 UI(사용자 인터페이스)입니다.
- 작업자 노드
- 클러스터 사용자에 대한 워크로드를 실행하는 노드입니다. 작업자 노드는 컴퓨팅 노드라고도 합니다.
추가 리소스
- 네트워킹에 대한 자세한 내용은 OpenShift Container Platform 네트워킹 을 참조하십시오.
- 스토리지에 대한 자세한 내용은 OpenShift Container Platform 스토리지를 참조하십시오.
- 인증에 대한 자세한 내용은 OpenShift Container Platform 인증을 참조하십시오.
- OLM (Operator Lifecycle Manager)에 대한 자세한 내용은 OLM을 참조하십시오.
- 로깅에 대한 자세한 내용은 로깅 정보를 참조하십시오. https://docs.redhat.com/en/documentation/openshift_container_platform/4.15/html-single/logging/#cluster-logging
- OTA(Over-the-air) 업데이트에 대한 자세한 내용은 OpenShift 업데이트 소개를 참조하십시오.