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